Нередко приходится слышать о том, что ООП, это слишком “наворочено” для Flash. Главные аргументы при этой точке зрения: большое количество классов раздувает проект до немыслимых масштабов и тормознутой работы, когда вполне можно обойтись и без таких жертв. Тот функционал, который можно процедурно уместить в 10 строчек, ООП раздувает до нескольких отдельных as файлов и десятков строк кода.

И тут разработчику приходится делать сложный выбор. Искать нечто среднее, выбирать между надежностью, быстродействием, изменяемостью, гибкостью, быстротой разработки и т. д. Как сделать этот выбор так, чтобы потом не было мучительно больно за бесцельно потраченные рабочие часы?

Наверное, большинству flash-программистов уже понятно, что кодирование в кадрах неудобно и нестабильно. Тут я не случайно пишу про flash-программистов, так как дизайнерам с посредственным знанием asctionscript может быть удобно кодировать в кадрах. Но вернемся к программистам. Даже самые отъявленные любители процедурного программирования и actionscript 1 устают от поиска кода в разных мувиклипах и использования метода copy - paste направо и налево. И когда наступает этот момент усталости, некоторые разработчики идут на небольшую хитрость - используют as классы, но, по сути, это не ООП, а тот же самый код в мувиклипах, оформленный в классы. Не получая от таких классов ощутимых результатов, в них только крепнет мнение, что ООП - это ненужное излишество.

Однако не стоит забывать, что если применять что-то неправильно, то и пользы не будет, а то и вред какой выйдет. Неправильное использование возможностей ООП может привести к весьма плачевным результатам. И для того, чтобы получить реальную пользу, надо четко знать все возможности, понимать идеологию и приобрести опыт. Если этого нет, то вы уподобляетесь слепому котенку, изучающему окружающий мир на ощупь и пугающемуся резких звуков, природы которых он не понимает.

Чтобы сделать этот сложный выбор - “как программировать”, и сделать его не раз и навсегда, а в зависимости от проекта и условий, необходимо знание возможностей, преимуществ, достоинств и недостатков ООП, процедурного программирования и кодирования в кадрах. Только вам делать этот выбор, но делать его безопаснее осмысленно. Не уподобляйтесь слепому котенку. А главное не уподобляйтесь тому котенку, который даже и не пытается исследовать окружающий мир. :)

Трекбек адрес этой записи

URL трекбека (щелкните правой кнопкой мыши и скопируйте ссылку)

3 комментариев

Комментарий от: rost [Учаснег] Email · http://flash-ripper.com/
Приходит Flex и все ставит на места. А поскольку Flex 2 вышел раньше Flash 9 -- то и перевес теперь создается соответствующий Ж-)
2006-11-23 @ 13:47
Ответ для rost

Посмотрим, что будет. :) Возможно flex-разработчики станут в большинстве своем произрастать из других языков, а не из actionscript 2.
2006-11-23 @ 14:35
Комментарий от: Ruslan Balkin [Посетитель] Email · http://berserk.mail.ru
Хороший цикл статей :-)
Я вот тоже "произрастаю" из других языков - и вообще тенденция преобразования, скажем, ActionScript'а и PHP, в полноценные ОО языки программирования, не может не радовать:-)

Жутко не хватает генериков, сейчас состояние ОО во флексе - на уровне Java 1.4 :)
2007-08-22 @ 15:36

Оставить комментарий


Ваш email адрес. (Не будет показан на сайте.)

Ваш URL будет показан.
:!: :?: :idea: :) :D :p B) ;) :> :roll: :oops: :| :-/ :( :'( |-| :>> :yes: ;D :P :)) 88| :. :no: XX( :lalala: :crazy: >:XX
(Заменить прерывания строк на <br />)
(Имя, email и сайт)
(Разрешить пользователям посылать вам сообщения (ваш email не отображается).)
3 + 2 + 7 - 1?
antispam test

Вы можете использовать OpenID чтобы предоставить ваше имя, email и url.