Постер курса

OTUS

Архитектура и шаблоны проектирования

  • Начальный уровень
  • Наставник: Нет
  • Сертификат: Нет
  • Формат: Online
  • Рассрочка: Нет
  • Язык: Русский
  • Осталось мест: Неограничено
Записаться

Архитектура и шаблоны проектирования

Что даст вам этот курс


С одной стороны, разработка ПО — это процесс ведения разработки, тестирование, быстрая разработка и устранение дефектов.

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

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

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

Курс не привязан к конкретному языку программирования

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

После курса вы будете:
1.применять шаблоны проектирования в разработках
2.Будете понимать и применять SOLID принципы
3.Поймете что такое рефакторинг и как писать чистый код
4.знать современные процессы разработки программного обеспечения
5.внедрять DevOps в свои процессы разработки, улучшая код и минимизируя ошибки
6.уметь вести разработку от постановки бизнес-задачи до реализации на production сервере
7.уметь отрисовывать бизнес-процессы и схемы.

Выпускной проект


Выпускной проект — возможность закрепить навыки, наработанные в процессе обучения. Это отдельная работа, на выполнение которой отводится последний месяц обучения.

Процесс обучения


Образовательный процесс происходит ONLINE в формате вебинаров (язык преподавания — русский). В рамках курса слушателям предлагаются к выполнению домашние задания, которые позволяют применить на практике знания, полученные на занятиях. По каждому домашнему заданию преподаватель дает развернутый фидбек. В течение всего учебного процесса преподаватель находится в едином коммуникационном пространстве с группой, т.е. при обучении слушатель может задавать преподавателю уточняющие вопросы по учебным материалам.
Программа обучения
Проблема сложности и способы ее решения.
  • Тема 1. Проблема сложности, ее разновидности и их связь с архитектурой ПО.
  • Тема 2. Архитектура, архитектурные стили и виды
Сложность тестирования
  • Тема 3. Модульные тесты // ДЗ
Скорость разработки ПО.
  • Тема 4. Абстрагирование. Схема применения SOLID принципов.
  • Тема 5. Определение абстракций, устойчивых к изменениям требований. // ДЗ
  • Тема 6. Общие шаблоны распределения ответственностей
  • Тема 7. SOLID и исключения // ДЗ
  • Тема 8. Команда // ДЗ
  • Тема 9. Расширяемая фабрика и IoC // ДЗ
  • Тема 10. Чистый код и рефакторинг
  • Тема 11. Стратегии разрешения зависимостей IoC
  • Тема 12. Адаптер и мост //ДЗ
  • Тема 13. QA-сессия
Масштабирование
  • Тема 14. Проблема вертикального масштабирования и синхронизация. //ДЗ
  • Тема 15. Интеграция программного обеспечения
  • Тема 16. Системы обмена сообщениями // ДЗ
  • Тема 17. Построение архитектуры приложения, построенного на системе обмена сообщениями
Time To Market
  • Тема 18. Методологии разработки ПО
  • Тема 19. Создание микросервиса // ДЗ
  • Тема 20. DevOps
  • Тема 21. Микросервисная архитектура // ДЗ
Шаблоны проектирования
  • Тема 22. Итератор
  • Тема 23. Состояние // ДЗ
  • Тема 24. Цепочка обязанностей // ДЗ
  • Тема 25. Заместитель
  • Тема 26. Декоратор
  • Тема 27. Шаблонный метод
  • Тема 28. Интерпретатор // ДЗ
Проектная работа
  • Тема 29. Вводное занятие по проектной работе
  • Тема 30. Консультация по проектам и домашним заданиям
  • Тема 31. Защита проектных работ
Что нужно знать?
  • Знание одного из языков программирования и принципов ООП: C++, C#, Java, Kotlin,PHP или Python
Знания и навыки, которые приобретете
  • Получите сертификат об окончании курса
  • Получите материалы по всем пройденным занятиям (видеозаписи вебинаров, выполненные домашние задания, выпускной проект)
  • Применять шаблоны проектирования в разработках
  • Внедрять DevOps в свои процессы разработки, улучшая код и минимизируя ошибки
  • Получите приглашение пройти собеседование в компаниях-партнёрах (в случае успешного обучения)
Партнеры

Преподаватели

  • Евгений Тюменцев

    Руководитель разработки

    Директор компании по разработке программного обеспечения. 20 лет преподаю компьютерные дисциплины в ВУЗе: C++, Kotlin, C#, ООП. Технологии программирования.В прошлом занимался профессионально разработкой многопоточных кросс-платформенных приложений на С++. Код, написанный 14 лет назад, до сих пор работает в составе IBM Watson.Один из результатов - успешная разработка технически сложного коммерческого проекта командой из 7 студентов. Руководитель программы

  • Владислав Родин

    Руководитель разработки

    В настоящее время занимает должность руководителя разработки, преподает в Московском Физико-Техническом Институте и на портале foxminded.Выпускник МФТИ, начал программировать на С++, работал инженером-исследователем на проекте вычислительного программного комплекса МФТИ.С 2017 года занимается Java Enterprise разработкой.Работал Java-разработчиком в таких компаниях как НСПК и Яндекс. Занимался проблемами высокой нагрузки, работая как на Spring'овом (Spring Boot, Spring Core, Spring Data, Spring Batch и т.д.) так и на Java EE'шном стеках. Улучшал инфраструктуру проектов, внедряя CI/CD и отлаживая процесс миграции БД. Строил С4- архитектурные схемы для проектов, в которых принимал участие.Является автором статей по backend-разработке на habr.com; спикер Рит++ 2020; обладатель сертификата Oracle Certified Assotiate Java SE 8 Programmer. Преподаватель

  • Евгений Непомнящий

    C++ и Java разработчик.В отрасли с 2006 года. Долгое время занимался разработкой под микроконтроллеры на С++, последние 3 года увлекся Java.Компании: Топаз-сервис, МвмСдал экзамен Oracle по Java: Oracle Certified Professional Преподаватель