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

Как разделять интерфейс и данные? - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Сравнение изображений OpenCv http://www.cyberforum.ru/cpp-beginners/thread940193.html
Поскажите ресурсы по изучению OpenCV. Стоит следующая задача. Есть avi с попеременно меняющимися 3-мя каналами видео. С помощью шаблонов нужно определить принадлежность кадра к тому или иному каналу....
C++ Частичная компиляция шаблонной функции в зависимости от значения параметра Добрый день. Предположим, есть некоторая шаблонная функция. Нужно сделать так, чтобы в зависимости от значения шаблонного параметра компилировалось либо все ее тело, либо только определенная часть.... http://www.cyberforum.ru/cpp-beginners/thread940152.html
Конструкция try . catch C++
Здравствуйте. Подскажите, как продолжить работу программи после обнаружения ошибки конструкцией try ... catch. #include <iostream> #include <iomanip> using namespace std; int number; int...
C++ Реализация контейнера идентичного std::vector по Страуструпу
При попытке скомпилировать код появляются ошибки, хотя делаю вроде как пишет Бьярне. Компилятор VSE 2010. 1>------ Построение начато: проект: EmptyConsole01, Конфигурация:Release Win32 ------ 1> ...
C++ std::cout в CodeBlocks неправильно работает? http://www.cyberforum.ru/cpp-beginners/thread940032.html
Ассоциативность у std::cout должна быть слева направо а этот пример в CodeBlocks доказывает противоположное. Добавляю в конец вектора два элемента 1 2. Потом их вывожу. При выводе должно бы...
C++ Проблемы при компоновке error LNK2019 Добрый день. Проблема заключается в следующем, когда использую сторонние библиотеки, в данном случае использовал исходники SQLite 3 (http://www.sqlite.org/2013/sqlite-amalgamation-3071700.zip), то... подробнее

Показать сообщение отдельно
Убежденный
Ушел с форума
Эксперт С++
15691 / 7201 / 1138
Регистрация: 02.05.2013
Сообщений: 11,637
Записей в блоге: 1
Завершенные тесты: 1
19.08.2013, 19:17
Цитата Сообщение от gromo Посмотреть сообщение
Собственно, нужно ли разделять GUI и функции работы с данными?
Нужно.
Если только речь не о тривиальных проектиках в пару тысяч строк.

Цитата Сообщение от gromo Посмотреть сообщение
Если да (надеюсь, что да), то какие общие принципы разделения? В отдельные классы, функции, etc...?
Общий принцип - GUI не должен работать с данными напрямую.
Только через посредника. Что это за посредник и как он будет имплементирован - не
сильно важно. Важен сам слой изоляции. Разумеется, делать это разделение нужно не
потому, что "так правильно", а четко понимая выгоды и последствия (возможно, негативные).

Цитата Сообщение от gromo Посмотреть сообщение
И может, если есть какая-нибудь литература по проектированию?
"Паттерны проектирования" (GoF). Must read.
"Pattern-Oriented Software Architecture". Старо, но по-прежнему актуально.
Еще есть известные книги Фаулера и Макконнелла, хотя это скорее по общим вопросам.
2
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru