Архитектура и шаблоны проектирования
Применяйте шаблоны проектирования и SOLID в разработке
27 декабря
Professional
4 месяца
Онлайн
Пн/Ср 20:00 Мск
Для кого этот курс?
- Разработчики на любом языке программирования. Вы сможете изучить основные паттерны проектирования и научиться применять их в сложных ситуациях.
- Если вы сами разрабатываете программные продукты, занимаетесь интеграцией или развитием существующих продуктов
Необходимые знания:
- Знание одного из языков программирования: C++, C#, Java, Kotlin, PHP или Python
- Знание принципов ООП
Что вам даст этот курс?
С одной стороны, разработка ПО — это процесс ведения разработки, тестирование, быстрая разработка и устранение дефектов.
С другой, это знание всех участвующих бизнес-процессов, умение описать архитектуру на разных уровнях представления, что необходимо для контроля архитектуры ПО на уровне большого предприятия.
С третьей, это внутренняя компоновка модулей разрабатываемого продукта, подразумевающая масштабируемость.
Всего этого можно достичь, используя шаблоны проектирования, которые изучим на этом курсе.
После курса вы будете:
- Применять шаблоны проектирования в разработках
- Будете понимать и применять SOLID принципы
- Поймете, что такое рефакторинг и как писать чистый код
- Знать современные процессы разработки программного обеспечения
Любой язык программирования
Курс не привязан к конкретному языку программирования. Вы сможете выполнять практические задания на комфортном для вас языке программирования.
Процесс обучения
Разработайте собственный проект
Сможете внести сильный проект в портфолио
Авторский курс
Курс составлен экспертом - Евгением Тюменцевым
Преподаватели-практики
Опытные спикеры из разных сфер
Трудоустройство
Многие студенты еще во время прохождения первой части программы находят или меняют работу, а к концу обучения могут претендовать на повышение в должности.
- Получите помощь с оформлением резюме, портфолио и сопроводительного письма
- Разместите свое резюме в базе OTUS и сможете получать приглашения на собеседования от партнеров
Программист
Работодатели курса
Формат обучения
Интерактивные вебинары
2 онлайн-трансляции по 2 ак.часа в неделю. Доступ к записям и материалам остается навсегда
Практика
Домашние задания + проектная работа, для усиления вашего портфолио и компетенций
Активное комьюнити
Общайтесь с преподавателями голосом на вебинарах, в закрытом чате Telegram и при проверке домашних заданийПрограмма
Проблема сложности и способы ее решения.
Рассматриваются различные проблемы сложности/ Одной из таких проблем является нелинейное замедление скорости разработки проекта по мере увеличения его размера (см. Брукс "Мифический человек-месяц"). Рассказывается о различных типах архитектур, парадигмах программирования.
Тема 1: Проблема сложности, ее разновидности и их связь с архитектурой ПО.
Тема 2: Архитектура, архитектурные стили и виды
Сложность тестирования
Разберем методы построения исчерпывающего набора тестов, практику TDD.
Тема 1: Модульные тесты // ДЗ
Скорость разработки ПО.
Разберем факторы, влияющие на скорость разработки программного обеспечения. Изучим достаточное условие постоянной скорости разработки. Научимся строить абстракции, устойчивые к изменениям требований.
Тема 1: Абстрагирование. Схема применения SOLID принципов.
Тема 2: Общие шаблоны распределения ответственностей
Тема 3: Определение абстракций, устойчивых к изменениям требований. // ДЗ
Тема 4: SOLID и исключения // ДЗ
Тема 5: Команда // ДЗ
Тема 6: Расширяемая фабрика и IoC // ДЗ
Тема 7: Чистый код и рефакторинг
Тема 8: Стратегии разрешения зависимостей IoC
Тема 9: Адаптер и мост //ДЗ
Тема 10: QA-сессия
Масштабирование
Рассматривается проблема синхронизации и вопросы разработки многопоточных приложений.
Тема 1: Проблема вертикального масштабирования и синхронизация. //ДЗ
Тема 2: Интеграция программного обеспечения
Тема 3: Системы обмена сообщениями // ДЗ
Тема 4: Построение архитектуры приложения, построенного на системе обмена сообщениями
Time To Market
Разберем, что такое архитектура. Отдельно рассмотрим тему микросервисной архитектуры.
Тема 1: Методологии разработки ПО
Тема 2: Создание микросервиса // ДЗ
Тема 3: DevOps
Тема 4: Микросервисная архитектура // ДЗ
Шаблоны проектирования
В данном модуле более подробно рассмотрим шаблоны проектирования.
Тема 1: Итератор
Тема 2: Состояние // ДЗ
Тема 3: Цепочка обязанностей // ДЗ
Тема 4: Заместитель
Тема 5: Декоратор и Посетитель
Тема 6: Шаблонный метод
Тема 7: Интерпретатор // ДЗ
Проектная работа
Практическая часть, которая подытоживает полученные знания в самостоятельной работе. Результатом станет создание "с нуля" собственного приложения.
Тема 1: Вводное занятие по проектной работе
Тема 2: Консультация по проектам и домашним заданиям
Тема 3: Защита проектных работ
Также вы можете получить полную программу, чтобы убедиться, что обучение вам подходит
Выпускная работа
Заключительный месяц курса посвящен выпускной работе. Его разработка нужна для окончательного закрепления знаний, которые были получены в рамках пройденных занятий.
Примеры выпускных проектов - читайте в нашем блоге:
- Библиотека для парсинга контент-блоков
- Plugin for Obsidian
Преподаватели
Эксперты-практики делятся опытом, разбирают кейсы студентов и дают развернутый фидбэк на домашние задания
Ближайшие мероприятия
Открытый вебинар — это настоящее занятие в режиме он-лайн с преподавателем курса, которое позволяет посмотреть, как проходит процесс обучения. В ходе занятия слушатели имеют возможность задать вопросы и получить знания по реальным практическим кейсам.
Цепочка обязанностей - это поведенческий шаблон проектирования, который подразумевает создание цепи объектов-обработчиков, в которой каждый объект может обработать определенный тип сообщения и передать его следующему обработчику в цепочке. Таким образом, сообщение проходит через каждый обработчик, пока не будет полностью обработано. Это позволяет гибко настроить последовательность и приоритет обработки различных типов сообщений.
На уроке мы рассмотрим, как использовать шаблон Цепочка обязанностей для решения различных задач. Мы покажем, как создать классы обработчиков и связать их в цепочку так, чтобы сообщение было обработано последовательно каждым обработчиком в цепи. Мы также рассмотрим возможности настройки приоритета и условий обработки определенных сообщений.
Кроме того, мы проведем практическое занятие, в ходе которого мы сформируем диаграмму классов, иллюстрирующую применение шаблона Цепочка обязанностей в конкретной задаче. Мы рассмотрим различные элементы диаграммы, такие как классы, атрибуты и методы, и объясним, как связать их с использованием данного шаблона проектирования.
На уроке мы познакомимся с несколькими основными методологиями разработки ПО, такими как водопадная модель, итеративная разработка, спиральная модель, гибкая разработка и другие. Мы рассмотрим каждый подход в отдельности и объясним, в каких ситуациях их использование может быть наиболее эффективным.
Кроме того, мы обсудим особенности и ограничения каждой из методологий. Разработка ПО является сложным и многогранным процессом, и каждый подход имеет свои сильные и слабые стороны. Мы рассмотрим эти аспекты и обсудим, как выбрать наиболее подходящий подход в зависимости от конкретной задачи и окружающих условий.
Также мы рассмотрим модели жизненного цикла программного обеспечения, такие как классическая модель и модель спирального развития, и объясним, как они отражают процесс разработки ПО на разных этапах. Разберем, какие этапы присутствуют в каждой модели и как они помогают в организации и управлении разработкой программного обеспечения.
Прошедшие
мероприятия
Возможность пройти вступительное тестирование повторно появится только через 3 дня
Результаты тестирования будут отправлены вам на email, указанный при регистрации.
Тест рассчитан на 30 минут, после начала тестирования отложить тестирование не получится!
Корпоративное обучение для ваших сотрудников
- Курсы OTUS верифицированы крупными игроками ИТ-рынка и предлагают инструменты и практики, актуальные на данный момент
- Студенты работают в группах, могут получить консультации не только преподавателей, но и профессионального сообщества
- OTUS проверяет знания студентов перед стартом обучения и после его завершения
- Простой и удобный личный кабинет компании, в котором можно видеть статистику по обучению сотрудников
- Сертификат нашего выпускника за 5 лет стал гарантом качества знаний в обществе
- OTUS создал в IT более 120 курсов по 7 направлениям, линейка которых расширяется по 40-50 курсов в год
Отзывы
Сертификат о прохождении курса
OTUS осуществляет лицензированную образовательную деятельность.
В конце обучения вы получите сертификат OTUS о прохождении курса

После обучения вы:
- получите материалы по всем пройденным занятиям (видеозаписи вебинаров, выполненные домашние задания, выпускной проект)
- применять шаблоны проектирования в разработках
- получите сертификат об окончании курса
Архитектура и шаблоны проектирования
Стоимость в рассрочку
Стоимость указана для оплаты физическими лицами
вычета до 13% стоимости обучения. Пройдите тестирование и менеджер вас проконсультирует
+7 499 938-92-02 бесплатно