LINUX.ORG.RU

История изменений

Исправление filosofia, (текущая версия) :

это нерасширяемо динамически и требует ненужные зависимости в мейне.

Ничего себе!

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

Это настоящая беда многих программистов — оверинжиниринг. Они любую, самую простую задачу, способны усложнить до неузнаваемости, приплести туда какие-то плагины, жыд-компиляцию и Тьюринг-полную конфигурацию. Спрашиваю их, зачем? Расширяемо… Анус себе расширь, пёс!

Самое поганое в этом то, что эти программисты зачастую ошибаются в оценке эволюции программы; результат — будущие изменения получают серьезное сопротивление со стороны заложенной архитектуры, поначалу это воркэрандится по инерции, но в конечном результате получаем version 2.0 completely refactored from the ground. И так до следующего мажорного изменения архитектуры 3.0.

Вам диды завещали: keep it simple! Нет, они на каждый хелловорлд плагины блядь изобретают.

вот примерно этот механизм и изобретает автор, но пока в редуцированном виде.

Ну правильно, в нередуцированном виде вы замените словарь таблицей регулярных выражений, динамически компилирующийся из конфигурационного файла; хэндлеры подсосете из плагинов; в сами хендлеры будете скармливать динамически типизированный контекст aka параметры. Интерпрайзно 👎

UPD Message bus сюда прямо напрашивается, к третьей версии прикрутите, пожалуйста?

Исходная версия filosofia, :

это нерасширяемо динамически и требует ненужные зависимости в мейне.

Ничего себе!

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

Это настоящая беда многих программистов — оверинжиниринг. Они любую, самую простую задачу, способны усложнить до неузнаваемости, приплести туда какие-то плагины, жыд-компиляцию и Тьюринг-полную конфигурацию. Спрашиваю их, зачем? Расширяемо… Анус себе расширь, пёс!

Самое поганое в этом то, что эти программисты зачастую ошибаются в оценке эволюции программы; результат — будущие изменения получают серьезное сопротивление со стороны заложенной архитектуры, поначалу это воркэрандится по инерции, но в конечном результате получаем version 2.0 completely refactored from the ground. И так до следующего мажорного изменения архитектуры 3.0.

Вам диды завещали: keep it simple! Нет, они на каждый хелловорлд плагины блядь изобретают.

вот примерно этот механизм и изобретает автор, но пока в редуцированном виде.

Ну правильно, в нередуцированном виде вы замените словарь таблицей регулярных выражений, динамически компилирующийся из конфигурационного файла; хэндлеры подсосете из плагинов; в сами хендлеры будете скармливать динамически типизированный контекст aka параметры. Интерпрайзно 👎