![]() |
|
||||||||||
|
|||||||
|
|
« Предыдущая тема | Следующая тема » |
| Опции темы | Опции просмотра |
|
![]() |
|
|||||
|
Регистрация: Aug 2009
Сообщений: 134
|
andrew911
>>Синглтон это и есть паттерн. Верно, я имел ввиду, что заменяю синглтон другими паттернами. Например, некоторые делают доступ к основным данным через синглтон, в данном случае, я использую паттерн Observer (наблюдатель). andrew911 Спасибо за статью, там приводится хороший пример с классом банковского счета, функционал которого можно логически разделить на три части. Хотя, как подмечено в статье, такой подход является антипатерном ActiveRecord (ну и ладно, я и не привык наделять сущности главенствующим функционалом). У меня схожая ситуация, т.е. главном классе ObjectManager содержатся: parserObjects (создание обверток-объектов над графикой), parserTools (создание на основе спец граф элементов связей (joints) между физическими объектами, parserButtons (парсинг кнопок различного типа). Каждый из парсеров имеет 180-250 строк кода. Сделаю, как советовали в данном топике/статье, для каждого парсера выделю свой класс и создам их экземпляры в ObjectManager. Может быть даже выделю отдельный пакет (как упоминал Aquahawk ) для этих четырех классов. mikhailk >>Это я к тому, что уменьшение размера класса и распределение кода по файлам как отдельные задачи не имеют большого смысла при правильном проектировании функционала Да, но я очень не люблю работать с классом, когда в нем 250-500 строк. В таком коде много функций, которые сразу не так легко разграничить на логические группы и перемещаться по функциям. Особенно проблема остро стоит, когда класс не видел в глаза пару месяцев, даже с комментариями не всегда быстро можно вникнуть. Последний раз редактировалось Denis_ex; 16.01.2011 в 13:05. |
![]() |
Часовой пояс GMT +4, время: 13:52. |
|
|
« Предыдущая тема | Следующая тема » |
| Опции темы | |
| Опции просмотра | |
|
|