• Как правильно писать "плагинное" приложение?

    @MaratFM
    В случае с питоном можно посмотреть в сторону Zope 3 (он же BlueBream), а также на компонентную архитектуру trac, и как вариант на расширения для mercurial

    Если кратко их описать, то получится следующее:
    Zope 3 — базируется на интерфейсах и адаптерах, данная концепция ближе к интерфейсам в яве, мне показалось излишне нагроможденной, исчезает красота питона;
    Trac — основывается на компонентах и точках расширения, практически каждый блок является компонентом и связывается с другими через точки расширения, причем компонент который объявляет точки расширения так же описывает интерфейс, который должен реализовывать компонент использующий его;
    Mercurial — позволяет расширять функционал через определение дополнительных команд, остальные изменения в функционалы через специальный хуки (могу ошибаться, т.к. не изучал подробно).


    В общем, все зависит от задачи и средств, с помощью которых вы хотите их решать.
    P.S. Самого беспокоят подобные вопросы, поэтому вэлком в личку.
    Ответ написан
    Комментировать