mend0za: (Default)
mend0za ([personal profile] mend0za) wrote2011-06-29 06:34 pm

Духи промышленной автоматизации будут удовлетворены

Итак, после мозгового штурма, устроенного здесь, как продолжение работ, описанных здесь за минувшее время была сделана реализация. Во многом отошедшая от начального замысла.

Нам удалось воплотить эпическую денежную дихотомию “дорогие идиоты - дешёвые идиоты”. Дорогой идиот - это я, дешёвый идиот - оператор 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 (вся идея отрыва описания от реализации).

Ад и мета-программирование в комиксах.

[identity profile] vp.livejournal.com 2011-06-29 05:18 pm (UTC)(link)
1.реально страшно!
2.у вас нет моральных ограничений!

[identity profile] mend0za.livejournal.com 2011-06-29 05:19 pm (UTC)(link)
Из невошедшего в ваше чтение апдейта:

* полиморфизм и инкапсуляция на Plain C (ООП в стиле JavaScript)

[identity profile] mend0za.livejournal.com 2011-06-29 05:22 pm (UTC)(link)
Спасибо. Из ваших уст - это комплимент.

[identity profile] ex-ihrachys.livejournal.com 2011-06-29 05:29 pm (UTC)(link)
О как: даже член BDSM испугался. :)

[identity profile] mend0za.livejournal.com 2011-06-29 05:35 pm (UTC)(link)
Он испуган и член BDSM.