Подтвердить что ты не робот

Python - Отдельная программная логика и код GUI?

Каким будет лучший способ разделения логики программы на код GUI?

Мне нужен другой код GUI (GTK, KDE, CLI), используя ту же логику программы.

Я думал об использовании другого модуля python (winecellar-common, winecellar-gtk, winecellar-cli), не уверен, как я это сделаю, и если это лучший способ.

* EDITED *

Просто добавлю к моему вопросу, что было бы лучшим способом организовать структуру файлов проектов и построить платформу с различными модулями. Имейте в виду, что в основном он используется на Ubuntu.

4b9b3361

Ответ 1

Определите функции или классы для вашей бизнес-логики в одном модуле и определите свою презентацию в другой, используя эти функции для получения вашей презентации. Вы должны почти полностью использовать функции и классы из основного модуля в GUI-модуле. Вы должны сделать то же самое для своей CLI. Таким образом, вы можете иметь разные дистрибутивы с разными интерфейсами и не создавать отдельный "логический" файл для каждого из них.

В принципе, у вас есть правильная идея. Просто сохраните их как отдельные, так что a.) Вы можете легко поддерживать несколько интерфейсов и b) вы можете легко вносить изменения в интерфейсы.

Ответ 2

Может быть, шаблон "Model-View-Controller" вам будет полезен. Существует хороший учебник с wxPython по реализации этой архитектуры: http://wiki.wxpython.org/ModelViewController