Entry tags:
Духи промышленной автоматизации будут удовлетворены
Итак, после мозгового штурма, устроенного здесь, как продолжение работ, описанных здесь за минувшее время была сделана реализация. Во многом отошедшая от начального замысла.
Нам удалось воплотить эпическую денежную дихотомию “дорогие идиоты - дешёвые идиоты”. Дорогой идиот - это я, дешёвый идиот - оператор GUI.
Документация по данным системы больше не нужна. GUI отныне самодокументированная сущность (в частности мы добавили в базу безразмерное текстовое поле Description).
Следующая фаза - экспорт из GUI в PDF. С выбросом оригинальных описаний в XLS и PDF - в утиль.
Update. О начинке библитеки. Забыл напомнить.
В библиотеке внутре керосинка!:
Отложенный во времени привет миру от нагадивших мне в душу Intel UPNP SDK (ООП на Plain C), Perl (значения по умолчанию), Ruby (Reflection), MVC/QT, ASN.1/asn1c (вся идея отрыва описания от реализации).
Ад и мета-программирование в комиксах.
Нам удалось воплотить эпическую денежную дихотомию “дорогие идиоты - дешёвые идиоты”. Дорогой идиот - это я, дешёвый идиот - оператор GUI.
- (M) База данных в SQlite3 - содержит данные на систему - 321 запись в основной таблице
- (V) GUI морда на QT/C++ - редактирование данных - 1160 строк
- (С) кодогенератор C на Python по данным базы (Чеусов! Фу! В вашем AWK нет SQlite и работы с BLOB!) - 290 строк
- библиотека в Plain C - набор API по работе с данными из кодогенератора - 4693 строки, включая Doxygen и пустые строки.
- Unit-тесты, Plain C - 1200 строк
Документация по данным системы больше не нужна. GUI отныне самодокументированная сущность (в частности мы добавили в базу безразмерное текстовое поле Description).
Следующая фаза - экспорт из GUI в PDF. С выбросом оригинальных описаний в XLS и PDF - в утиль.
Update. О начинке библитеки. Забыл напомнить.
В библиотеке внутре керосинка!:
- реализация собственной системы типов с колхозанским reflection
- полиморфизм и инкапсуляция на Plain C (ООП в стиле JavaScript)
- значениями по умолчанию у каждой из переменных
- системой нотификации изменений (как слинкованных приложений, так и посторонних процессов)
- Концепция “драйвер” (как аттрибут переменной) описывает способ доступа к данным (сейчас их 6).
Отложенный во времени привет миру от нагадивших мне в душу Intel UPNP SDK (ООП на Plain C), Perl (значения по умолчанию), Ruby (Reflection), MVC/QT, ASN.1/asn1c (вся идея отрыва описания от реализации).
Ад и мета-программирование в комиксах.