metaclass: (Default)
metaclass ([personal profile] metaclass) wrote2013-10-18 09:58 pm

Об удобном софте для сложных предметных областей.

Каждый раз, когда я читаю [livejournal.com profile] justy_tylor или когда меня очередной раз посещает навязчивая идея сделать генерацию UI из моделей (как у меня генерируется все остальное), я вспоминаю вот эту картинку http://ips.intermech.ru/images/s1_big.png или интерфейс 3D Max или CadSoft Eagle.

Я до сих пор не могу для себя решить - адский пиздец сложности UI профессионального софта - это объективное следствие сложности предметки или же все-таки, как всегда в этом нашем IT - случайная сложность, потому что делают "как привыкли", "чтобы пользователи пользовались привычными метафорами" и "у нас эргономикой занимаются программисты".

У меня софт обычно простой. Потому что предметка вся это "ввести первичные данные, получить данные с 100500 приборов и желязяк и показать по ним отчеты", ресурсы ограничены, UI делать некому, соответственно все по максимуму сводится к обобщенным CRUD-оперденям. А бэк-енды, базы данных и бизнес-логика, когда она не особо связана с UI - для меня это отдых. Потому как в большинстве случаев укладывается в функциональщину и SQL.

[identity profile] berezovsky.livejournal.com 2013-10-19 12:10 pm (UTC)(link)
Идея в том, чтобы разделить создание интерфейса на две части.
Первая часть - построение каркаса, это можно частично сделать при генерации.
Что при этом будет выдаваться - дотнет-код, дельфи-код, qt-код, XAML или HTML и т.д. - не суть важно.
Вторая часть - заделывание каркаса декорациями. Тут уже включаются руки и творческий подход.
Что это будет - накладывание мастер-страниц, стилей, выставление свойств и т.п. - тоже не принципиально.