|
|
|||||
Регистрация: Mar 2010
Сообщений: 100
|
Преподавание ActionScript 3.0
В своем институте преподаю основы AS3.
Хотел спросить как лучше рассказать что такое ООП, что такое классы, объекты ? Если брать учебник и читать по нему, то вообще крыша у них съедет, т.к. должна быть понятна идея всего о чем говоришь. Обычно, даже когда рассказываешь про, например, битовые операции сдвига возникает вопрос, а зачем что-то двигать. Может у кого-то есть идея примера класса, на котором хорошо будет рассказывать про ООП ? Поделитесь своими мыслями пожалуйста. |
|
|||||
[+3 16.08.10]
Регистрация: Mar 2009
Адрес: Кишинев
Сообщений: 29
|
Думаю неплохо будет на примере реальных объектов объяснить для начало.
Например если учебный класс, в нем ученики, столы, стулья. У него свойства x y ... ну и так далее. Потом наследство: базовый класс учеников это человек, а так как есть разные то собственно монголы, индусы... можно и на примере ручек, делают они одно и тоже но выглядят по разному и с разными свойствами, ну и все такое... Методы тоже можно на примере ученика. Утром встал, пришел в универ, открывает дверь класса, заходит, закрывает дверь класса, садится за парту, получает подзатыльник,ждет дальнейших указаний... На этом же примере можно об евентах объяснить, пример: после того как зашол в класс поздоровался или когда открыл дверь то был скрип, и это все услышали все которые слушали. Ну и дальше уже можно к практике переходить, начинать с простого базового класса Object. Дальше реальные объекты перенести в классы. И все так далее. Охх... ну надеюсь поняли о чем я. Надеятся только на чтение из книг и простых копи паст примеров не стоит, на своем примере знаю что если хотите чтобы им это было понятно и запомнилось то нужно разьеснить все на нормальном человеческом языке. гг... |
|
|||||
Modus ponens
|
Я бы искал что-то, что можно было бы потом использовать в качестве продолжения, например с наследованием (как у Мука - животные, т.е. класс Кот и класс Собака - оба наследники класса Млекопитающее, которой в свою очередь наследник класса Животное, но еще и имплементит интерфейс Домашнее (т.е. не все домашние животные на самом деле животные, могут быть и насекомые, например )
Но тут возникают некорорые проблемы, например, как в таком случае представить композицию или декоратор? Будет ли мягкая игрушка хорошим примером? (т.е. использует какие-то качества животного, но в то же время животным не является). А декоратор - как блохи, можно перенести с одного животного на другое, при этом поменяв качество животного?
__________________
Hell is the possibility of sanity |
|
|||||
[+3 16.08.10]
Регистрация: Mar 2009
Адрес: Кишинев
Сообщений: 29
|
Цитата:
Последний раз редактировалось Shogun4ever; 11.09.2010 в 17:11. |
|
|||||
Регистрация: Mar 2010
Сообщений: 100
|
Да, да я про это же. Все правильно.
Надо будет придумать хороший пример, на котором можно было бы объяснить, что такое наследование и полиморфизм. И вообще был максимально пригодным для всего о чем надо будет рассказывать. |
|
|||||
listener
|
А чем кружочки с квадратиками не устраивают? Тем более, что много ооп просматривается при работе именно с графическими объектами (это субъективно, но тем не менее).
Потом, животные - это мило, но далеко не каждый способен психологически рассуждать об ооп в терминах живого, пусть и животного мира. Кому-то блохи просто омерзительны, а кто-то за любимого песика может и по морде дать, другой поржет и пойдет пить пиво, а у того с зоологией вообще беда. Тут шибко не развернешься, одним словом. Пример со студентами-стульями-столами-дверьми - это для кавээна, пожалуй, но как разогрев подошел бы, пожалуй)). Впрочем, если преподаватель суть личность авторитетная (типа Мук-2) или может уверенно держать аудиторию под контролем, обладая при этом железной волей - ради бога, делайте как вам нравится. |
|
|||||
[+3 16.08.10]
Регистрация: Mar 2009
Адрес: Кишинев
Сообщений: 29
|
Цитата:
пс: много примеров это все-таки опыт... |
|
|||||
Регистрация: Jun 2010
Адрес: somewhere in the universe
Сообщений: 195
|
Наверно еще стоит добавить, что ООП изначально создавалось для упрощения жизни программисту поэтому стоит сделать на этом акцент и рассказать ученикам например, что ООП помогает по тысячи раз не писать одно и то же, то есть к примеру у нас есть куча методов и куча свойств которые нужны определенному количеству классов, так вот чтобы иметь в одном месте описание всех этих методов/переменных и нужно использовать ООП
Пример отличный есть, DisplayObject, чтобы не писать в Sprite/MovieClip ets методы addChild/x/y/ и т/д/, можно отнаследоваться от DisplayObject. Напомню, ООП прежде всего облегчает работу программиста, писать ради самого ООП плохая практика и частая ошибка программистов и учить такому подходу явно не хорошо. Использовать нужно все тогда, когда действительно нужно. ) |
|
|||||
Modus ponens
|
По поводу кружков и квадратов. Это не ахти какой пример... Если бы можно было ограничится совсем небольшим набором фигур - тогда да, а так можно легко и до октагонов добраться, а может и дальше
В этом одна из большущих проблем диаграм всякого вида. Если взаимоотношения сложные, то очень тяжело сделать диаграму так, чтобы она не запутала больше. Поэтому для быстроты усвоения хочется все-таки какой-то пример, в котором уже есть знакомые элементы и взаимосвязи.
__________________
Hell is the possibility of sanity |
Часовой пояс GMT +4, время: 05:29. |
|
« Предыдущая тема | Следующая тема » |
Опции темы | |
Опции просмотра | |
|
|