Skip to content

Хроники архитектуры программного обеспечения

Опубликовано: at 15:57

Это первая из заметок об архитектуре программного обеспечения(далее архитектура ПО). В этих заметках я постараюсь рассказать о том что такое архитектура ПО, поделиться своим мнением об этом вопросе и рассказать как знания об архитектуре ПО могут быть использованы на практике.

Оглавление

Развернуть/свернуть оглавление

Важно знать историю

«Кто забывает уроки истории, обречён на их повторение»

— Джордж Сантаяна

История может многому нас научить и было бы глупо игнорировать эти знания.

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

За время своей карьеры разработчика я прочитал огромное количество статей,посмотрел кучу видео с различных конференция и прочитал много книг. Я стараюсь сделать всё возможное, чтобы использовать накопленный другими разработчиками опыт!

К сожалению, часто материалы, которые мы используем, похожи на результат игры “испорченный телефон”. Это связано что в этих материалах изложено мнение о мнении и т.д.

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

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

Написание этих заметок позволило мне лучше понять техники, которые используются в разработке ПО. Надеюсь, что данные заметки будут полезны моим коллегам.

Если в процессе чтения вы будете несогласны с какими-то аспектами, то я всегда открыт для обсуждений.

Заметки серии “Хроники архитектуры программного обеспечения”

  1. Хроники архитектуры программного обеспечения
  2. Предпосылки для появления архитектуры ПО
  3. Эволюция языков программирования
  4. Архитектурные стили vs. архитектурные паттерны vs. шаблоны проектирования
  5. Монолитная архитектура
  6. Слоистая архитектура
  7. MVC и альтернативы
  8. EBI архитектура
  9. Упаковка и пространства имён
  10. DDD
  11. Гексагональная архитектура
  12. Луковая архитектура
  13. Чистая архитектура
  14. Событийно-ориентированная архитектура
  15. От CQS к CQRS
  16. Сервис-ориентированная архитектура (SOA)
  17. Явная архитектура. #01: DDD, гексогональная, луковая, чистая, CQRS, … Как я собрал всё вместа
  18. Явная архитектура. #02: Больше чем концентрические слои
  19. Явная архитектура. #03: Отражение архитектуры и предметной области в коде
  20. Явная архитектура. #04: Документирование архитектуры

Временной график

Это примерный временной график эволюции разработки ПО, который сложился в моей голове после прочтения большого количества материалов на эту тему. Знак «~» я указал для дат, которые указаны приблизителько. Для точных дат я указал ссылки на материалы первоисточнки. Много полезной информации на эту тему можно найти

Я добавил ссылки на места, где нашел ссылку на дату, и поставил знак «~» там, где я не совсем уверен в дате, что означает «приблизительно». Мы также можем найти множество информации об этих вещах на странице «Парадигмы программирования» в Wikipedia.