Update readme.md

This commit is contained in:
Dmitry 2025-06-20 11:14:24 +03:00 committed by GitHub
parent cea6f90f9e
commit a2132fab73
No known key found for this signature in database
GPG key ID: B5690EEEBB952194

View file

@ -3,13 +3,23 @@ ADR
- ADR Architecture decision record
- ADL Architecture description language [wiki](https://en.wikipedia.org/wiki/Architecture_description_language) ; Architecture vs Design
- ADD Attribute-driven design [Architecture Based Design Method, ABD](https://en.wikipedia.org/wiki/Attribute-driven_design)
- MDA Model-Driven Architecture [wiki](https://ru.wikipedia.org/wiki/%D0%90%D1%80%D1%85%D0%B8%D1%82%D0%B5%D0%BA%D1%82%D1%83%D1%80%D0%B0,_%D1%83%D0%BF%D1%80%D0%B0%D0%B2%D0%BB%D1%8F%D0%B5%D0%BC%D0%B0%D1%8F_%D0%BC%D0%BE%D0%B4%D0%B5%D0%BB%D1%8C%D1%8E) Создание метамодели определяется технологией моделирования MOF (Meta Object Facility), являющейся частью концепции MDA. Название концепции не совсем удачно, так как она определяет вовсе не архитектуру, а именно метод разработки программного обеспечения. Для конструирования программного приложения должна быть построена подробная, формально точная модель, из которой потом может быть автоматически генерирован исполняемый программный код приложения.
-
### ADR template
- [Architecture decision record (ADR) / Architecture decision log (ADL)](https://pragmatic-km.guide/practices/knowledge-registration/registration/architecture.html)
- [mediawiki.org](https://www.mediawiki.org/wiki/Architecture_decision_record_template)
###
- [Prem Chandrasekaran, Neal Ford, Mark Richards](https://www.thoughtworks.com/insights/podcasts/technology-podcasts/architecture-as-code):
Я хорошо помню MDA. На самом деле, вокруг MDA все еще ведется огромное количество академической работы, просто потому что против нее можно направить массу бесполезных усилий. Большая проблема с архитектурой на основе моделей в том, что у них были эти очень формальные языки, иногда языки диаграмм, иногда языки спецификаций, и они пытались сгенерировать программные системы, которые были бы просто кашей, и заставляли людей собираться в комнате и месяцами усиленно думать над своими диаграммами, нажимать кнопку, и получалось работающее программное обеспечение.
Мы поняли, что это не работает, потому что мир меняется гораздо быстрее, чем вы можете изменить модели, лежащие в основе этих вещей.
мой опыт работы с диаграммами как кодом был очень, очень приятным. Не каждую диаграмму все еще можно сделать в виде кода, но я первым делом смотрю, можно ли нарисовать ее в коде, а затем, если это невозможно, только тогда я смотрю на другие инструменты, такие как Draw.io или что-то в этом роде. В наши дни я по умолчанию сначала смотрю на что-то вроде PlantUML или Mermaid.
Одна из вещей, которую я написал миллион лет назад, — это плагин Rational Rose для инструмента Borland, Delphi. Вы могли бы делать круговую инженерию для модели в код Object Pascal и обратно из Object Pascal в Rational Rose, потому что у него был API расширения.
Оказалось, что это идеальный пример анти-шаблона, потому что это кажется отличной идеей, а затем она приводит вас в лес, полный драконов и монстров, и вы больше никогда не захотите туда возвращаться.
https://doc.wikimedia.org/Wikibase/master/php/docs_adr_index.html
### ADR
- [Немного о подходе Architecture Decision Records](https://habr.com/ru/companies/otus/articles/840412/)
https://doc.wikimedia.org/Wikibase/master/php/docs_adr_index.html