![]() |
Понимание смысла интерфейсов
Зачем? Например, я прекрасно понимаю, что методы "умереть", "переместится в" и "показать широченную улыбку" могут быть у классов главного героя, врага и неприметного старичка на заднем фоне, но я не могу найти интерфейсам лучшей практики, нежели создать эти методы 2-умя кнопками в каком нибудь редакторе коде, вместо набивания их заново вручную.
Посвятите новичка, зачем они нужны?) |
Ну, например, если функции программера-кодера и архитектора приложения разделены. Архитектор приложения как раз и будет заниматься созданием интерфейсов. Но такой подход актуален, в основном, для крупных приложений.
|
Экземпляр приобретает тип интерфейса.
Код AS3:
|
Посмотри на иерархию наследования, где в ней расположен класс BitmapData и DisplayObject. Метод BitmapData.draw() может принимать экземпляры обоих этих классов. Как это реализовать без интерфейса IBitmapDrawable? Передавать Object - не выход. Интерфейс связывает два узла в дереве, которые расположены на разных ветвях (хотя и не обязательно на разных).
|
Ммм, спасибо.
Тогда назревает другой, очевидный вопрос - а стоит ли использовать интерфейсы если в логике приложения можно легко обойтись без этого? Ирония, но только что попал в ситуацию, когда без интерфейсов обойтись было бы сложно.) Огромное спасибо dimarik`у. |
Если по-английски читать не напряжно, то вот неплохая статья:
http://www.lordofduct.com/blog/?p=466 |
В AS3 класс можно унаследовать от нескольких интерфейсов, и лишь от одного класса.
|
Цитата:
|
Цитата:
|
Еще один плюс, про которые вечно забывают - это работа с несколькими swf. здесь для доступа к подгруженной swf (и кастомизации соответственно) подходят только интрефейсы (собственно это и есть их основнач задача)
|
| Часовой пояс GMT +4, время: 20:46. |
Copyright © 1999-2008 Flasher.ru. All rights reserved.
Работает на vBulletin®. Copyright ©2000 - 2026, Jelsoft Enterprises Ltd. Перевод: zCarot
Администрация сайта не несёт ответственности за любую предоставленную посетителями информацию. Подробнее см. Правила.