О курсе

Курс посвящен архитектуре приложений и предназначен для разработчиков, желающих расширить свое мышление до архитектурного уровня. Программа состоит из восьми модулей, начиная с введения в архитектуру, где рассматриваются проблематика проектирования и важность изоляции компонентов. Далее изучается язык моделирования UML, принципы ООП, включая SOLID и DRY, а также паттерны проектирования и антипаттерны. Отдельное внимание уделяется чистой архитектуре, архитектурным границам и различным подходам, таким как MVC, MVVM, MVP, гексагональная архитектура. В заключительных модулях рассматриваются архитектуры на разных уровнях масштаба и обзор инструментов и технологий, включая системы хранения данных, языки программирования и фреймворки. Практические задания и лабораторные работы основаны на реальных задачах, что позволяет применить полученные знания.

Что рассматривается в программе

  • Рассматривается проектирование слабосвязанных компонентов и изоляция по причинам изменений
  • Изучается язык UML для чтения и создания диаграмм классов и последовательностей
  • Разбираются принципы ООП, включая SOLID и DRY
  • Анализируются порождающие, структурные и поведенческие паттерны проектирования, а также антипаттерны
  • Изучается чистая архитектура и методы проведения архитектурных границ
  • Рассматриваются различные архитектурные подходы: MVC, MVVM, MVP, гексагональная архитектура
  • Проводится обзор инструментов и технологий: системы хранения данных, языки программирования, фреймворки, Kubernetes

Кому может быть полезен курс

  • Разработчикам, которые хотят научиться мыслить как архитекторы
  • Team Lead и Tech Lead, которым нужно управлять изменениями в проекте и формировать единое понимание архитектуры в команде
  • Всем, кто интересуется проектированием сложных систем и хочет повысить свою ценность как специалиста

Вопросы о программе

Какие темы охватывает курс?

Курс охватывает введение в архитектуру, UML, принципы ООП, паттерны проектирования, чистую архитектуру, различные архитектурные подходы (MVC, MVVM, MVP, гексагональная) и архитектуру на разных уровнях масштаба.

Предусмотрены ли практические задания?

Да, в курсе есть теоретические лекции и практические задания, включая лабораторные работы, основанные на реальных задачах.

Для кого предназначен курс?

Курс создан для разработчиков, Team Lead и Tech Lead, а также всех, кто хочет научиться мыслить как архитектор и проектировать сложные системы.

Какие инструменты и технологии рассматриваются в курсе?

В курсе рассматриваются системы хранения данных (S3, Ceph, PostgreSQL, MongoDB, ClickHouse, Neo4J, Kafka, Cassandra), языки программирования (Python, Java, Go, C++, JavaScript/TypeScript), фреймворки (React, Vue, Angular, jQuery) и Kubernetes.