![]() |
|
||||||||||
|
|
|
|||||
|
Покажите пжста на примере явное преимущество использования интерфейсов в написании кода. А то я пока не вижу большого смысла в них.
Насколько понял, в интерфейсе описываются методы, которые должны обязательно присутвовать в классе его использующий. |
|
|||||
|
вот возьми например какой нить фрэймворк, aswing,... посмотри реализацию компонентов в исходниках, должно стать понятнее
__________________
flash portfolio Последний раз редактировалось toFlash; 07.03.2009 в 03:07. |
|
|||||
|
Регистрация: Nov 2005
Сообщений: 1,058
|
Вообще по идее сначала пишутся интерфейсы, а потом по ним пишутся классы. Интерфейсы дают кости, а классы - мясо, грубо говоря.
|
|
|||||
|
стервочка (я мужик)
|
†‡Paladin‡†, с тысячным постом Вас. и да ... ересь полнейшая.
интерфейсы нужны, что бы объединить классы в общий тип, которого нельзя добиться наследованием в силу архитектуры, или наследование не требуется в принципе. |
|
|||||
|
Регистрация: Nov 2005
Сообщений: 1,058
|
Кстати да. 1000й пост. Не Вам судить про ересь - Вы не евангелист. Я свои выводы сделал на основе опыта изучения открытых проектов типа Batik, т.к. пришлось с ними поработать. Там к каждому классу написан интерфейс в не зависимости от того нужно наследование или не нужно. Глядя на только одни эти интерфейсы можно легко представить структуру и масштаб не хилого проекта. Классы лишь делают черновую работу. С другой стороны в AS3 интерфейсы куцые и лично я их практически не использую в работе, предпочитая делать что-то вроде абстрактных классов.
|
|
|||||
|
Регистрация: May 2007
Сообщений: 232
|
Вот пример. Допустим Вы пишете программу, в которой каждый используемый класс хотите очищать при помощи метода destroy(). При этом используемые классы могут выполнять совершенно различные функции, и не быть родственниками.
Это значит, что нужно следить, чтобы в каждом из классов была реализована функция destroy, иначе возникнет ошибка. Для решения этой задачи достаточно воспользоваться интерфейсами. Каждый класс использующий интерфейс, должен реализовывать методы, описанные в интерфейсе. В противном случае среда разработки на стадии компиляции скажет Вам об этом. Вообще я советую купить книжку Колина Мука - там очень подробно описано. |
|
|||||
|
ветеран форума
|
Цитата:
__________________
4am is time to rock |
|
|||||
|
Et cetera
Регистрация: Sep 2002
Сообщений: 30,787
|
†‡Paladin‡†, писать к каждому классу интерфейс — перебор. Это значит, что разработчик кроме как «интерфейсы — это круто!» ничего больше не знает.
|
|
|||||
|
Цитата:
![]()
__________________
Работаю |
![]() |
![]() |
Часовой пояс GMT +4, время: 17:30. |
|
|
« Предыдущая тема | Следующая тема » |
|
|