Форум программистов, компьютерный форум CyberForum.ru

MVC дайте пример - C++

Восстановить пароль Регистрация
Другие темы раздела
C++ Передача char в функцию http://www.cyberforum.ru/cpp-beginners/thread1158708.html
Привет всем! Помогите, что неправильно: есть функция void send_new_object(char *g, char *h, int j) { char name_nach_punkta = *g; char name_kon_punkta = *h; nomer_marshrouta = j; } в которую посылается char add_name_nach_punkta; char add_name_kon_punkta;
C++ Написать программу на Форматированный ввод/вывод в текстовые файлы. Динамические массивы Файл f1 содержит: число чисел, записанных в файл; • далее - последовательность №1 целых положительных чисел в 16-й системе счисления. Последовательность №1 считать из файла и записать в динамический массив. Из динамического массива записать в файл f2 числа, делящиеся на 3 без остатка в 10-ой системе счисления. Вывести на экран содержимое файла f2 (считывать из файла). Вывод в файл f2... http://www.cyberforum.ru/cpp-beginners/thread1158665.html
По условию, заново выполнение программы? C++
Как сделать, выполнение небольшого кода заново, если условие выполнилось и присвоением нового значение какого либо переменной?
C++ Мин-макс в списке
не получается найти минимальный и максимальный элементы в списке: struct Node {int d,a; int value; Node *next; //указатель на следующий элемент списка Node *prev; };
C++ Динамическая память и конструктор класса http://www.cyberforum.ru/cpp-beginners/thread1158483.html
Подскажите, почему Marshroute *objects2 = new Marshroute(for_loop); компилятор ругается на (for_loop), если я хочу запустить конструктор не по умолчанию.
C++ Освобождение памяти Маленький вопросик, как правильно освобождать память выделенную под vector<...>, деструктором ~vector() или методом clear() ? подробнее

Показать сообщение отдельно
Bretbas
22 / 17 / 1
Регистрация: 05.08.2013
Сообщений: 466
Завершенные тесты: 1
27.04.2014, 23:28  [ТС]     MVC дайте пример
Qt не изучал никогда,а есть ли смысл?Мне кажется,что нужно вначале без всяких библиотек понять конструкцию MVC,а потом уже смотреть,то что действительно подходит)

Короче вот тут набросал свою программку с использованием MVC и других паттернов, таких как Наблюдатель и Комманда. Ничего толком она не делает еще, только создал 3 абстрактных класса - Model,Controller,View.
Model состоит у меня из таких свойств как двумерный массив(сама матрица),ширина и высота(матрицы). Так же имеются методы get,set...
Controller наследуется от класса Command, чтобы реализователь паттерн проектирования Команда.
View является наблюдателем за изменением Model, по этому в этом случае я применил паттерн Наблюдатель, который реализуется в классах Observer и Observable.

Итак, Я начинаю создавать подклассы данной триады, и получаю в итоге еще 2 класса ViewDefault и ControllerDefault - Вид и Контроллер по умолчанию, то есть при первом запуски моего приложения, должны создаваться экземпляры именно этих классов.
В методе execute() переопределенного классом ControllerDefault запрашивается у пользователя Ширина и Высота матрицы и изменяется соответственно Model(Проверку на правильность введенных данных не проверяю, для простоты примера).
Соотвенно заполняется так же массив(матрица) заданной шириной и высотой нулями так же в методе execute(). После всех изменений в Модели Я вызываю метод notify(), для оповещения всех наблюдателей за Моделью.
После вызова этого метода, вызывается метод update() класса ViewDefault и рисуется на экране в середине двумерный массив(матрица).

Вроде все. Пример прикрепил.

Теперь вопросы...

Как мне сделать несколько контроллеров и запустить всю систему? К примеру теперь я хочу добавить курсор, который будет устанавливаться в середине массива(матрицы) и клавишами-стрелками я буду двигаться по ней, не заходя за ее пределы. Указатель курсора будет виден на экране, и с каждой нажатой кнопкой, указатель сдвигается по матрице.
Как мне сделать это? И на счет Модели...все правильно? Я ее оставляю постоянной, потомков не наследую, потому что не знаю зачем...помогите, может что не правильно?
И самое главное, как запустить всю систему MVC с несколькими контроллерами,моделями и видами в главной функции main()? Какие экземпляры создавать? Какая точка входа в программу?
Вложения
Тип файла: 7z CreateMaps_new.7z (453.6 Кб, 32 просмотров)
 
Текущее время: 02:30. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru