Форум программистов, компьютерный форум, киберфорум
Наши страницы

обновление времени в програме. патерн Наблюдатель - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ бусконечный цикл http://www.cyberforum.ru/cpp-beginners/thread933483.html
при вставке потомка корня возникает бесконечный цикл. в чем проблема #include<iostream> /* 1. Каждый узел является красным или черным. 2. Корень дерева является черным. 3. Каждый лист дерева...
C++ Когда приступать к практическому применению С++? Всем привет! Долго читаю данный форум, много интересного и полезного! Где то месяц назад начал учить с++ , по учебникам. Вернее пока по одному учебнику =) Там много примеров использования разных... http://www.cyberforum.ru/cpp-beginners/thread933449.html
String и русский язык C++
Доброго времени суток! Мой вопрос скорее всего задавался, но всё же как с клавиатуры ввести в string строку на русском, а затем вывести её на экран? Например, если собрать этот код #include...
Пространство имен C++
Я часто встречаю в книгах, туторах, что объявлять пространство имен в больших проектах нельзя(не рекомендуемо), но нигде не сказано почему... Подскажите вы хоть, пожалуйста. :)
C++ Мотивация http://www.cyberforum.ru/cpp-beginners/thread933426.html
Привет. Вот я С++ учю уже почти два (без 3 месяцев) года, начал с самого нуля, до этого не знал толком ничего. Решал в основном, убогие задачки, нормального проэкта не было. Знаком с стандартной...
C++ ПОЛИЗ struct stack{ char key; stack * next; }; void pushStack(stack*&Head,char Key) { stack *q=new stack; if(q){ q->next=NULL; q->key=Key; подробнее

Показать сообщение отдельно
Kuzia domovenok
1951 / 1804 / 140
Регистрация: 25.03.2012
Сообщений: 6,247
Записей в блоге: 1
04.08.2013, 23:20
Ох уж эти паттерны! Не, я обеими руками за, конечно, но 400 строк кода из-за какой-то фигни! Может в составе проекта это ещё удобно листать, но не так.
Пока всё не прочитал, но уже вижу. Вот зачем использовать std::vector для хранения указателей-наблюдателей в субъекте?
Какие преимущества вектора перед списком использованы в программе? - никаких. А список, в отличие от вектора, позволил бы быстро вставлять/удалять новых наблюдателей.

Что за путанная иерархия классов?
Сам наблюдатель не хранит указателя на субъект, а наследники наблюдателя хранят каждый по такому указателю.
Это как вообще? Наследники могут иметь этот *subject, а могут и не иметь? смысл наследования тогда?

И вообще в целом не ясно, кто на кого хранит указатели. Такое впечатление, что все на всех. Наблюдатели следят за субъектами и субъекты также следят за наблюдателями? Это зачем им? Моё мнение, что двусторонние такие связи не желательны.

Добавлено через 9 минут
Кстати, эти непонятки с наследованием и есть причина раздутости кода на 400 строк! Все методы, связанные с работой паттернов, добавлением/удалением наблюдателей должны быть ВЫНЕСЕНЫ в родителя. Смотри, разница между AnalogClock и DigitalClock только в разных способах рисования.
Тогда зачем ВЕСЬ ОСТАЛЬНОЙ КОД В НИХ ДУБЛИРУЕТСЯ? В этом коде присутствует только работа с паттерном наблюдатель, а эта функциональность у всех наблюдателей одинакова!!
Казалось бы, зачем нужны паттерны? Разве не для того, чтобы не дублировать один и тот же код?

А в остальном молодец. Почему не обновляется время? Ну... надо ещё немного полистать этого гиганта.
1
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru