Показать сообщение отдельно
Старый 02.04.2011, 23:56
Stargazer вне форума Посмотреть профиль Отправить личное сообщение для Stargazer Найти все сообщения от Stargazer
  № 18  
Ответить с цитированием
Stargazer

Регистрация: Nov 2008
Сообщений: 528
Цитата:
Сообщение от Phenom Посмотреть сообщение
а хотелось бы что то сделать что бы хорошенько понять принцип ООП,разобраться что к чему, а то в книге кроме как виртуального зоопарка ничего небыло, все примитивное!
Примитивное - это именно то, что нужно поначалу.
Принципы ООП проявляют свои сильные стороны, когда число классов в проекте исчисляется десятками. А до тех пор использование каких-то "продвинутых методик" вам может понадобиться только для того, чтобы приучить себя писать осмысленно и понятно для остальных.

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

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


Последний раз редактировалось Stargazer; 03.04.2011 в 00:01.