Делаю приложение на pyqt + бд, в первой версии столкнулся со сложностью системы. Сейчас стараюсь переписать по правилам low cohesion high coupling и другим правилам хорошей архитектуры. Проблем уменьшилось, только всеравно некоторые правила нарушаю. В pyqt при событии(нажатии на кнопку) появляется список где должны отобразиться данные из бд, и так получается что в любом случае в файлах интерфейса приходится обращаться к бд хоть и через обертки. Плюс чем дальше тем больше будут обращений куда интерфейсу лазить по правилам хорошего кода влазить не стоит. Вопрос, как построить архитектуру более правильно?
Пример:
class Window(QMainWindow):
def __init__(self):
var = None
self.button.triggered.connect(self.action)
def action(self):
self.accessDb() #????