Архитектура и основные шаблоны проектирования. Научитесь применять паттерны проектирования и станьте архитектором программного обеспечения
Прямо сейчас идет открытый вебинар «Импортозамещение RPA платформ» . Присоединяйтесь!

Курсы

Программирование
Разработчик на Spring Framework C# ASP.NET Core разработчик iOS Developer. Basic Специализация iOS iOS Developer. Professional Архитектура и шаблоны проектирования Разработчик программных роботов (RPA) на базе UiPath и PIX Разработчик IoT Node.js Developer Java Developer. Professional
-19%
Microservice Architecture Unreal Engine Game Developer Scala-разработчик Java Developer. Basic HTML/CSS Специализация C++ Developer C++ Developer. Professional Android Developer. Professional
-20%
PostgreSQL для администраторов баз данных и разработчиков
-20%
C# Developer. Basic Cloud Solution Architecture Software Architect Web-разработчик на Python MS SQL Server Developer Team Lead NoSQL Symfony Framework Unity Game Developer. Professional Специализация PHP Developer Буткемп Java Groovy Developer
Специализации Курсы в разработке Подготовительные курсы Подписка
+7 499 938-92-02
Курс переработан
Курс переработан

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

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

Длительность обучения:

4 месяца

4 ак. часа в нед.

Формат:

Online

Начало занятий:

30 мая

Дни занятий:

Пн 20:00, Ср 20:00

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

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

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

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

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

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

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

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

Понятие "состояние" в шаблонах проектирования, 18 мая в 20:00
На открытом уроке рассмотрим понятие "состояние". Посмотрим, как работать с диаграммой состояний и переходов. Проведем обзор конечных автоматов и поймем, как от простой реализации объектов перейти к интерфейсам.
Ведет
Евгений
Непомнящий
Предыдущий открытый вебинар
Проблемы сложности и места, где они обитают, 24 мая в 20:00
На занятии рассмотрим простой и объективный инструмент, который позволяет выбирать технологии, средства разработки, фреймворки для решения различных практических задач.
Евгений
Тюменцев
Предыдущий открытый вебинар

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

Евгений Тюменцев
Владислав Родин
Руководитель разработки
Лев Губин
Разработчик в Zalando (Берлин)
Евгений Непомнящий
Дмитрий Золотов
Flutter Developer, Yandex
Директор компании по разработке программного обеспечения. 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.

Преподаватель
Более 4-х лет работаю Full stack разработчиком с использованием технологий Java/Spring и Javascript/React.
В основном разрабатываю микросервисы и использую agile метод разработки.

Также использую такие технологии как:
-Kubernetes
-Kafka
-CI/CD
-AWS

C++ и Java разработчик.
В отрасли с 2006 года. Долгое время занимался разработкой под микроконтроллеры на С++, последние 3 года увлекся Java.

Компании: Топаз-сервис, Мвм

Сдал экзамен Oracle по Java: Oracle Certified Professional

Преподаватель
DevOps, FullStack разработчик (Flutter/Python/Kotlin/GoLang/C++), системный администратор, приглашенный преподаватель в ИТМО, исследователь технологий электронного обучения.
Опыт работы - 23 года.


Руководил межфакультетской лабораторией перспективных информационных технологий в РГПУ им. А. И. Герцена, участвовал в создании и масштабировании ресурсов для электронного обучения (в т.ч. проект "Российская электронная школа"), проектировал и разрабатывал высоконагруженные веб-приложения и системы автоматизации. Контрибьютор в проект ReOpenLdap. Разрабатывал архитектуру отказоустойчивых конфигураций гибридного облака на основе Consul и Kubernetes, сервисных сетей, интеграционных платформ с использованием AMQP. Также являюсь преподавателем по компьютерным сетям, DevOps, операционным системам, мультимедиа-технологиям. Руководител отделом автоматизации процессов в финансовой организации, в которой был консультантом и DevOps по миграции систем с использованием облачных технологий, а также разработчиком для Android/iOS.

Закончил Российский Государственный Педагогический Университет, 2002, учитель физики. Автор серии вебинаров по Kubernetes и кроссплатформенной разработке: https://www.youtube.com/channel/UCs_AMB-HbhHzMhE0VdBZByg

Евгений
Тюменцев
Владислав
Родин
Лев
Губин
Евгений
Непомнящий
Дмитрий
Золотов

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

Евгений Тюменцев
Директор компании по разработке программного обеспечения. 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.

Преподаватель
Лев Губин
Разработчик в Zalando (Берлин)
Более 4-х лет работаю Full stack разработчиком с использованием технологий Java/Spring и Javascript/React.
В основном разрабатываю микросервисы и использую agile метод разработки.

Также использую такие технологии как:
-Kubernetes
-Kafka
-CI/CD
-AWS

Евгений Непомнящий
C++ и Java разработчик.
В отрасли с 2006 года. Долгое время занимался разработкой под микроконтроллеры на С++, последние 3 года увлекся Java.

Компании: Топаз-сервис, Мвм

Сдал экзамен Oracle по Java: Oracle Certified Professional

Преподаватель
Дмитрий Золотов
Flutter Developer, Yandex
DevOps, FullStack разработчик (Flutter/Python/Kotlin/GoLang/C++), системный администратор, приглашенный преподаватель в ИТМО, исследователь технологий электронного обучения.
Опыт работы - 23 года.


Руководил межфакультетской лабораторией перспективных информационных технологий в РГПУ им. А. И. Герцена, участвовал в создании и масштабировании ресурсов для электронного обучения (в т.ч. проект "Российская электронная школа"), проектировал и разрабатывал высоконагруженные веб-приложения и системы автоматизации. Контрибьютор в проект ReOpenLdap. Разрабатывал архитектуру отказоустойчивых конфигураций гибридного облака на основе Consul и Kubernetes, сервисных сетей, интеграционных платформ с использованием AMQP. Также являюсь преподавателем по компьютерным сетям, DevOps, операционным системам, мультимедиа-технологиям. Руководител отделом автоматизации процессов в финансовой организации, в которой был консультантом и DevOps по миграции систем с использованием облачных технологий, а также разработчиком для Android/iOS.

Закончил Российский Государственный Педагогический Университет, 2002, учитель физики. Автор серии вебинаров по Kubernetes и кроссплатформенной разработке: https://www.youtube.com/channel/UCs_AMB-HbhHzMhE0VdBZByg

Отзывы

6
Вадим
Заигрин
Хороший курс для знакомства с архитектурой ПО и шаблонами проектирования. До этого курса я скептически относился к шаблонам. После курса понял зачем они нужны и как их использовать. Но занятие про DevOps выглядит лишним, а занятие про многопоточность лучше перенести в конец курса.
Читать целиком
Егор
Редкин
Курс был очень полезен для меня. Теперь понимаю как правильно организовывать код, начинаю применять шаблоны как в личный проектах, так и на работе) Я прям почувствовал, и даже убедился на практике, что курс меня апнул)) Так же курс добавил мне уверенности себе, как разработчику.

Пожелания/рекомендации/идеи на подумать:

Касательно самого курса:

Домашние задания с номера 3 и до номера 7 включительно, которые были связанны с проектом, я думаю стоит перенести в конец всего курса. Сперва изучить все патерны, параллельно выполняя домашнее задание по ним. А как все уроки по архитектурам/патернам будут пройдены, то далее уже нарисовать все схемы/диаграммы и тут же приступить к проекту.

Касательно образовательной площадки:

Можно домашнее задание разбить на уровни сложности, например
1. Легкий - реализовать программу используя патерн А
2. Средний - использовать более сложную/продвинутую/с допольнительным функционалом форму патерна А
3. Сложный - выполнить пункт 2 Средний и затем дополнить программу патерном Б из прошлого урока.

что то в таком духе) было бы прикольно, был бы соблазн сделать дз по максимуму, а так же это можно было бы отразить в сертификате или поощрять учеников скидками на следующий курс)))

Большое спасибо за пережитый опыт! за новые знания! за приятное время препровождение!
Всего наилучшего, развивайтесь) я тоже буду))
Читать целиком
Максим
Пойлов
Многих, заявленных на курсе, тем я касался на практике, либо читал об этом в книгах.
Поэтому перед регистрацией у меня были сомнения, будет ли это полезно для меня. В результате я не пожалел, что прошел курс. Преподаватели стараются чтобы каждый для себя узнал что-то новое, даже если тема занятия известная.
Курс позволил систематизировать знания, полученные из разных источников. Я прикоснулся к новой для себя теме "микросервисы", а также понял, что это просто очередной виток декомпозиции систем, только на более высоком уровне. Если, раньше для меня цикл "Красный-зеленый-рефакторинг" ассоциировался, в основном, с программированием, то теперь я вижу, что аналогичный процесс определил понятие "микросервисы". У меня сформировалось понимание, что элементы архитектуры различных уровней строятся по одним и тем же базовым принципам: инкапсуляция, полиморфизм, декомпозиция и др.
Благодаря курсу я начал применять описания бизнес-процессов в своей работе. Данная тема, хотя и не является основной, но благодаря ей я почувствовал, что это можно использовать в работе.
Интересными с практической стороны оказались темы по шаблонам GoF, SOLID и GRASP. Если про GoF и SOLID я много читал ранее, то про GRASP я услышал впервые. Курс позволил «разложить по полочкам» связи между ними, я начал ориентироваться на них на практике в своей работе.
Спасибо за курс!
Читать целиком
Вадим
Девятайкин
Курс был очень интересным и полезным. Помог структурировать знания и получить опыт в разработке благодаря интересным домашним заданиям. Отдельное спасибо за них Евгению Тюменцеву.
Читать целиком
Алексей
Яковлев
Работаю в банке - фронтенд разработчиком
Выбрал OTUS по рекомендации 1 из публичных разработчиков - он са ведет курсы и его рейтинг среди мировых OTUS - был в 5-ке лучших )
Понравилась активность и группа была достаточно активна - это важно - от этого и преподаватели больше вещали. Улучшить - в принцепе более структурированное прохождение домашек - потому как если для тебя это все темный лес еще - то не понятно как это применять + что-бы преподы вещали в +- в одном стиле много зависит от личных качеств преподавателей.
Обучение совпало с изменением должности и все кейсы которые проходили я пытался решить на работе - в последствии стал архитектором Фронт-енд на проекте ) В качестве курсовой взял реальный рабочий кейс - да я не успел его качественно выполнить в сроки - но я продолжаю его делать и в дальнейшем презентую компании )))
Читать целиком
Андрей
Курс понравился, открыл для себя много нового. Рекомендую всем, кто хочет добиться стабильной прогнозируемой скорости разработки ПО.
Читать целиком
Вадим
Заигрин
Хороший курс для знакомства с архитектурой ПО и шаблонами проектирования. До этого курса я скептически относился к шаблонам. После курса понял зачем они нужны и как их использовать. Но занятие про DevOps выглядит лишним, а занятие про многопоточность лучше перенести в конец курса.
Читать целиком
Егор
Редкин
Курс был очень полезен для меня. Теперь понимаю как правильно организовывать код, начинаю применять шаблоны как в личный проектах, так и на работе) Я прям почувствовал, и даже убедился на практике, что курс меня апнул)) Так же курс добавил мне уверенности себе, как разработчику.

Пожелания/рекомендации/идеи на подумать:

Касательно самого курса:

Домашние задания с номера 3 и до номера 7 включительно, которые были связанны с проектом, я думаю стоит перенести в конец всего курса. Сперва изучить все патерны, параллельно выполняя домашнее задание по ним. А как все уроки по архитектурам/патернам будут пройдены, то далее уже нарисовать все схемы/диаграммы и тут же приступить к проекту.

Касательно образовательной площадки:

Можно домашнее задание разбить на уровни сложности, например
1. Легкий - реализовать программу используя патерн А
2. Средний - использовать более сложную/продвинутую/с допольнительным функционалом форму патерна А
3. Сложный - выполнить пункт 2 Средний и затем дополнить программу патерном Б из прошлого урока.

что то в таком духе) было бы прикольно, был бы соблазн сделать дз по максимуму, а так же это можно было бы отразить в сертификате или поощрять учеников скидками на следующий курс)))

Большое спасибо за пережитый опыт! за новые знания! за приятное время препровождение!
Всего наилучшего, развивайтесь) я тоже буду))
Читать целиком
Максим
Пойлов
Многих, заявленных на курсе, тем я касался на практике, либо читал об этом в книгах.
Поэтому перед регистрацией у меня были сомнения, будет ли это полезно для меня. В результате я не пожалел, что прошел курс. Преподаватели стараются чтобы каждый для себя узнал что-то новое, даже если тема занятия известная.
Курс позволил систематизировать знания, полученные из разных источников. Я прикоснулся к новой для себя теме "микросервисы", а также понял, что это просто очередной виток декомпозиции систем, только на более высоком уровне. Если, раньше для меня цикл "Красный-зеленый-рефакторинг" ассоциировался, в основном, с программированием, то теперь я вижу, что аналогичный процесс определил понятие "микросервисы". У меня сформировалось понимание, что элементы архитектуры различных уровней строятся по одним и тем же базовым принципам: инкапсуляция, полиморфизм, декомпозиция и др.
Благодаря курсу я начал применять описания бизнес-процессов в своей работе. Данная тема, хотя и не является основной, но благодаря ей я почувствовал, что это можно использовать в работе.
Интересными с практической стороны оказались темы по шаблонам GoF, SOLID и GRASP. Если про GoF и SOLID я много читал ранее, то про GRASP я услышал впервые. Курс позволил «разложить по полочкам» связи между ними, я начал ориентироваться на них на практике в своей работе.
Спасибо за курс!
Читать целиком
Вадим
Девятайкин
Курс был очень интересным и полезным. Помог структурировать знания и получить опыт в разработке благодаря интересным домашним заданиям. Отдельное спасибо за них Евгению Тюменцеву.
Читать целиком
Алексей
Яковлев
Работаю в банке - фронтенд разработчиком
Выбрал OTUS по рекомендации 1 из публичных разработчиков - он са ведет курсы и его рейтинг среди мировых OTUS - был в 5-ке лучших )
Понравилась активность и группа была достаточно активна - это важно - от этого и преподаватели больше вещали. Улучшить - в принцепе более структурированное прохождение домашек - потому как если для тебя это все темный лес еще - то не понятно как это применять + что-бы преподы вещали в +- в одном стиле много зависит от личных качеств преподавателей.
Обучение совпало с изменением должности и все кейсы которые проходили я пытался решить на работе - в последствии стал архитектором Фронт-енд на проекте ) В качестве курсовой взял реальный рабочий кейс - да я не успел его качественно выполнить в сроки - но я продолжаю его делать и в дальнейшем презентую компании )))
Читать целиком
Андрей
Курс понравился, открыл для себя много нового. Рекомендую всем, кто хочет добиться стабильной прогнозируемой скорости разработки ПО.
Читать целиком

Необходимые знания

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

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

Образовательный процесс происходит ONLINE в формате вебинаров (язык преподавания — русский). В рамках курса слушателям предлагаются к выполнению домашние задания, которые позволяют применить на практике знания, полученные на занятиях. По каждому домашнему заданию преподаватель дает развернутый фидбек. В течение всего учебного процесса преподаватель находится в едином коммуникационном пространстве с группой, т.е. при обучении слушатель может задавать преподавателю уточняющие вопросы по учебным материалам.
Получить консультацию
Наш специалист свяжется с вами в ближайшее время. Если у вас возникли трудности в выборе курса или проблемы технического плана, то мы с радостью поможем вам.
Спасибо!
Мы получили Вашу заявку, в ближайшее время с Вами свяжется наш менеджер.

  • получите материалы по всем пройденным занятиям (видеозаписи вебинаров, выполненные домашние задания, выпускной проект)

  • применять шаблоны проектирования в разработках

  • получите сертификат об окончании курса

  • внедрять DevOps в свои процессы разработки, улучшая код и минимизируя ошибки

  • получите приглашение пройти собеседование в компаниях-партнёрах (в случае успешного обучения)

Дата выдачи сертификата: 28 октября 2022 года
Ваш сертификат

онлайн-образование

Сертификат №0001

Константин Константинопольский

Успешно закончил курс «Архитектура и шаблоны проектирования»
Выполнено практических заданий: 16 из 16

Общество с ограниченной ответственностью “Отус Онлайн-Образование”

Город:
Москва

Директор департамента образования
ООО “Отус Онлайн-Образование”
Анна Фирсова

Лицензия на осуществление образовательной деятельности
№ 039825 от 28 декабря 2018 года.

онлайн-образование

Сертификат №0001

Константин Константинопольский

Успешно закончил курс «Архитектура и шаблоны проектирования»
Выполнено практических заданий: 16 из 16

Общество с ограниченной ответственностью “Отус Онлайн-Образование”

Город:
Москва

Директор департамента образования
ООО “Отус Онлайн-Образование”
Анна Фирсова

Лицензия на осуществление образовательной деятельности
№ 039825 от 28 декабря 2018 года.
Прошедшие открытые вебинары
Открытый вебинар — это настоящее занятие в режиме он-лайн с преподавателем курса, которое позволяет посмотреть, как проходит процесс обучения. В ходе занятия слушатели имеют возможность задать вопросы и получить знания по реальным практическим кейсам.
Открытый урок курса "SOLID как условие постоянной скорости разработки"
Евгений Тюменцев
День открытых дверей
17 ноября 2021 года в 20:00
Для доступа к прошедшим мероприятиям необходимо пройти входное тестирование
Возможность пройти вступительное тестирование повторно появится только через 2 недели
Результаты тестирования будут отправлены вам на e-mail, указанный при регистрации.
Тест рассчитан на 30 минут, после начала тестирования отложить тестирование не получится!
Стоимость обучения
Cтоимость указана для оплаты физическими лицами
47 800 ₽
Продолжительность
4 месяца
Начало занятий
30 мая