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

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

Восстановить пароль Регистрация
 
gromo
 Аватар для gromo
366 / 265 / 24
Регистрация: 04.09.2009
Сообщений: 1,214
19.08.2013, 16:25     Как разделять интерфейс и данные? #1
Всем привет,
Собственно, нужно ли разделять GUI и функции работы с данными? Если да (надеюсь, что да), то какие общие принципы разделения? В отдельные классы, функции, etc...?

И может, если есть какая-нибудь литература по проектированию?
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
19.08.2013, 16:25     Как разделять интерфейс и данные?
Посмотрите здесь:

C++ Как сделать качественный интерфейс в с++?
программа должна разделять введенную строку пополам и соединять в обратном порядке!если слово нечетное то оставить букву в середине без изменений! C++
Написать программу которая будет разделять число C++
C++ Могут ли две string разделять одни данные?
C++ Как экспортировать интерфейс из dll
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Maxim Prishchepa
Эксперт С++
 Аватар для Maxim Prishchepa
1762 / 985 / 60
Регистрация: 29.03.2010
Сообщений: 2,978
19.08.2013, 16:28     Как разделять интерфейс и данные? #2
MVC как вариант...
а так вообще смотрите в сторону патернов проектирования
gromo
 Аватар для gromo
366 / 265 / 24
Регистрация: 04.09.2009
Сообщений: 1,214
19.08.2013, 18:33  [ТС]     Как разделять интерфейс и данные? #3
l_a_m, А насколько актуальны паттерны и, вообще, подобная структуризация в практическом смысле?
Например, для игры ААА-класса, для средней сложности прикладной программы (~1год разработки в компании из 20 человек, примерно)?
Maxim Prishchepa
Эксперт С++
 Аватар для Maxim Prishchepa
1762 / 985 / 60
Регистрация: 29.03.2010
Сообщений: 2,978
19.08.2013, 18:36     Как разделять интерфейс и данные? #4
чуть более чем полностью оправдана, особенно когда дойдете до сопровождения и осознания того, что нужно бы чего-то поменять
Убежденный
Системный программист
 Аватар для Убежденный
14188 / 6203 / 984
Регистрация: 02.05.2013
Сообщений: 10,331
Завершенные тесты: 1
19.08.2013, 19:17     Как разделять интерфейс и данные? #5
Цитата Сообщение от gromo Посмотреть сообщение
Собственно, нужно ли разделять GUI и функции работы с данными?
Нужно.
Если только речь не о тривиальных проектиках в пару тысяч строк.

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

Цитата Сообщение от gromo Посмотреть сообщение
И может, если есть какая-нибудь литература по проектированию?
"Паттерны проектирования" (GoF). Must read.
"Pattern-Oriented Software Architecture". Старо, но по-прежнему актуально.
Еще есть известные книги Фаулера и Макконнелла, хотя это скорее по общим вопросам.
Yandex
Объявления
19.08.2013, 19:17     Как разделять интерфейс и данные?
Ответ Создать тему
Опции темы

Текущее время: 17:37. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru