![]() |
|
||||||||||
|
|||||
|
стервочка (я мужик)
|
†‡Paladin‡†, ну если не я, то кто будет судить?
интерфейсы не связываются меду собой в жёсткие структуры, могут иметь абсолютно любые связи, поэтому понять структуру проекта на интерфейсах будет практически невозможно, так как это будет фактически безобразный клубок связей. у классов, "которые делают черновую работу" (по видимому имеются ввиду, что они и не нужны толком, хватит интерфейсов), структура всегда представляется в виде дерева, что заметно упрощает понимание связей. но, несомненно, беспорядочно связанные сотни интерфейсов позволяют "легко представить масштаб не хилого проекта", а вот с остальным проблемы.вот расскажите лучше про "куцость" интерфейсов в АС3. DarkLight, а я и не спорил на каком этапе проявляется необходимость интерфейсов, это совсем другая тема но твои слова однозначная правда. просто нужно понимать, что писать "везде вдруг пригодятся", или писать "там где надо", это разные вещи.Котяра, а я что написал? |
|
|||||
|
буду краток
модератор форума
Регистрация: Sep 2003
Адрес: Ближайшее Замкадье
Сообщений: 3,110
Записей в блоге: 28
|
Да я и не опрвергаю Вас, просто уточняю.
Как просил автор, я показал на более конкретном примере использование интерфейсов и высказал свое мнение для чего они нужны вообще. Еще раз повторюсь: лично мое мнение: интреыейсы необходио использовать при распределенном взаимодействии классов.т.е, когда сам класс неизвестен ( и неважен, по большому счету), - и нужны только конкретные его методы или свойства ( в интерфесах АС3 описываемые как get функции)
__________________
Отряд Котовскага Последний раз редактировалось Котяра; 07.03.2009 в 23:10. |
|
|||||
|
.
|
Mелкое добавление к посту Котяра. Лучше назвать IInitializable вместо IModul. Название интерфейса должно (should, но не обязано) отражать действие им производимое См. IBitmapDrawable, IExternalizable из AS3. А также некоторые кастомные названия: IMovable (перемещабельно), ISerializable (сериализабельно). Суть класса, реализующего интерфейс становится более понятна.
UPDATED. public interface ISerializable { public function serialize():String } public class AClass implements ISerializable { public function serialize():String { return this.toString(); } } var anObject:AClass = new AClass(); var someObject:Object = new Object(); // где-то есть такой метод public function trySerealize(o:*):void { // Динамическое связывание if (o is ISerializable) { var serializedString:String = (o as ISerializable).serialize(); } } trySerealize(anObject); trySerealize(someObject); Последний раз редактировалось dimarik; 08.03.2009 в 01:25. |
|
|||||
|
буду краток
модератор форума
Регистрация: Sep 2003
Адрес: Ближайшее Замкадье
Сообщений: 3,110
Записей в блоге: 28
|
Цитата:
Ну в принципе можно назвать интерфейс IModulable, хотя добавление able я считаю вообще излишним, т.к. I в начале имени показывает, что это интерфейс. Остальная часть имени показывает чем может быть объект класса (или сам класс)
__________________
Отряд Котовскага Последний раз редактировалось Котяра; 08.03.2009 в 01:55. |
|
|||||
|
Регистрация: Nov 2005
Сообщений: 1,058
|
Цитата:
|
|
|||||
|
стервочка (я мужик)
|
†‡Paladin‡†, а Вы в Москве сейчас? с удовольствием возьму урок
![]() |
|
|||||
|
Регистрация: Nov 2005
Сообщений: 1,058
|
Сегодня буду после 22.00
|
|
|||||
|
Регистрация: Jun 2006
Сообщений: 30
|
Предлагаю после посвящения в великое знание Интерфейсов, поделиться со страждущими. Уж очень хороший бредогенератор у †‡Paladin‡†
|
|
|||||
|
стервочка (я мужик)
|
†‡Paladin‡†, так где мы встречаемся?
chatlano, за 800 рублей =) |
|
|||||
|
Регистрация: Jun 2006
Сообщений: 30
|
Ну что за народ корыстный пошел. Я понимаю великий гуру †‡Paladin‡† может требовать деньги, но адепты... Это какой-то сетевой маркетинг получается...
|
![]() |
![]() |
Часовой пояс GMT +4, время: 21:48. |
|
|
« Предыдущая тема | Следующая тема » |
|
|