Показать сообщение отдельно
Старый 23.03.2008, 14:37
WindWalker вне форума Посмотреть профиль Отправить личное сообщение для WindWalker Найти все сообщения от WindWalker
  № 100  
Ответить с цитированием
WindWalker

Регистрация: Nov 2006
Сообщений: 223
Цитата:
Сообщение от BlooDHounD
а передать всем этим объектам его в конструкторе никак нельзя?
Можно, разумеется.
Но прежде, чем передавать, нужно убедиться, что он существует.

Цитата:
+ к этому что не уверен что объектам B, C, D, ... нужен именно конкретный эземпляр. а если нужен конкретный, то зачем вообще экземпляр? не проще ли статическими методами и свойствами обойтись.
Опять двадцать-пять. Цикл замкнулся, начинаем новую итерацию обсуждения

Потому, что экземпляр более гибкий:
- он может имплементить интерфейс;
- он может наследоваться от других классов. Например от Sprite, и соответственно может быть помещён на сцену;
- в случае необходимости, если требования изменились, легче будет перейти к нескольким экземплярам;
- передавать класс в качестве параметра или использовать в качестве переменной (а это порой требуется) - не самое красивое решение.

Если абсолютно точно известно, что возможности экземпляра нам никогда-никогда не потребуются, то можно использовать статические методы.
Если же есть шанс, что потребуются изменения (либо изначально известно, что проект будет развиваться постепенно: сперва базовая функциональность, затем добавление новых фич), то лучше сразу заложить достаточную гибкость, чтобы в последствии не пришлось переворошить весь код или вообще начинать с нуля.

Так вот статика позволяет сократить время разработки и, зачастую, улучшить быстродействие, но засчёт гибкости.
А экземпляр наоборот - более гибкий, но за счёт скорости.

Что применять в конкретном случае, зависит от конкретной ситуации.

------------
P.S.
Никто не запрещает вообще всё приложение делать статикой.
Кому вообще нужны эти экземпляры?
Сделать один-единственный класс Application, который рулит всем, и в нём только статические переменные и методы. Всё остальное - объекты встроенных классов.
Лепота!
Назад - к истокам!


Последний раз редактировалось WindWalker; 23.03.2008 в 14:42.