Я стараюсь следовать принципам SOLID. Но каждый раз, когда речь заходит о пользовательских интерфейсах, я нахожу, что существует определенное трение между неуклюжими экранами гибридных, агрегированных данных, требуемых клиентом, и хорошими принципами единой ответственности.SOLID и пользовательский интерфейс?
Теперь это можно разделить и властвовать различные биты и куски типичного пользовательского интерфейса на классы одной ответственности, но тогда вы бежите во все виды интересных конструктивных вопросов, потому что так называемые «отдельные» куски gui на самом деле часто оказываются разными представлениями одного и того же общего состояния или, по крайней мере, частичными представлениями о перекрывающемся состоянии.
Я часто заканчиваю тем, что скрепил довольно неуклюжие классы контроллеров для моих представлений, которые не очень СОЛИДНЫЕ, но это довольно противоречивая практика кодирования, и это меня немного беспокоит. Просто кажется, что сложность его разделения не стоит.
Итак, как вы справляетесь с этим?
Я полагаю, что несоответствие между 10-15-летними базами данных и современными gui's является тем, что удерживает половину нас на рабочих местах;) – krosenvold
Только до тех пор, пока они не смогут получить роботов ... –