Теперь самое время выбрать методологию программирования. От этого в большой степени зависит разработка архитектуры. А это следующий
Так вот, что за странное название темы, спросите вы. Все просто.
Объектно Ориентированное Программирование почему то трактуется, как Объектно Обязательное. Даже в Википедия ссылается на определение гуру ООП Алана Кёртиса (который кстати мне в отцы годится). В этом определении первой красной строкой стоит:
Всё является объектом.
И дальше принципы взаимодействия:
чтобы место не тратить
Вычисления осуществляются путём взаимодействия (обмена данными) между объектами, при котором один объект требует, чтобы другой объект выполнил некоторое действие. Объекты взаимодействуют, посылая и получая сообщения. Сообщение — это запрос на выполнение действия, дополненный набором аргументов, которые могут понадобиться при выполнении действия.
Каждый объект имеет независимую память, которая состоит из других объектов.
Каждый объект является представителем класса, который выражает общие свойства объектов (таких, как целые числа или списки).
В классе задаётся поведение (функциональность) объекта. Тем самым все объекты, которые являются экземплярами одного класса, могут выполнять одни и те же действия.
Классы организованы в единую древовидную структуру с общим корнем, называемую иерархией наследования. Память и поведение, связанное с экземплярами определённого класса, автоматически доступны любому классу, расположенному ниже в иерархическом дереве.
Каждый объект имеет независимую память, которая состоит из других объектов.
Каждый объект является представителем класса, который выражает общие свойства объектов (таких, как целые числа или списки).
В классе задаётся поведение (функциональность) объекта. Тем самым все объекты, которые являются экземплярами одного класса, могут выполнять одни и те же действия.
Классы организованы в единую древовидную структуру с общим корнем, называемую иерархией наследования. Память и поведение, связанное с экземплярами определённого класса, автоматически доступны любому классу, расположенному ниже в иерархическом дереве.
Но это вобщем то нормально, ничего страшного нет. Страшнее другое. Что обязательным условием ООП сейчас считается использование общепринятых паттернов. Причем отступление от них объявляется ереcью, и допустивший сей грех предается анафеме.
Я много перелопатил информации и нашел массу интересного. У того же Фаулера есть такое наблюдение: