Школы

Рейтинг на основе отзывов, авторитетности и популярности

Подборки

Полезные и актуальные курсы, отобранные вручную

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

Сложность
Сложность
Продвинутый
Тип обучения
Тип обучения
Курс
Формат обучения
Формат обучения
С проверкой домашнего задания
Трудоустройство
Трудоустройство
Помощь от школы
Сертификат
Сертификат
Есть

Стоимость курса

80 850 ₽
Есть рассрочка

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

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

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

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

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

Что вы получите после обучения

Навыки
1
DevOps
2
SOLID
3
Процессы разработки
4
Рефакторинг
5
Применять шаблоны проектирования в разработках
Сертификат

Школа

Otus.ru - высокотехнологический стартап в области образования. Наша миссия - делать образование осмысленным, реализуя связь между работодателями, специалистами и преподавателями. Приходите к нам учиться!

OTUS сегодня – это более 80 авторских курсов для IT-специалистов из разных направлений таких как программирование, тестирование, инфраструктура, информационная безопасность, управление и Data Science. И что важно, у нас есть программы для разных уровней подготовки от новичков до профессионалов, которые хотят освоить продвинутые навыки.
Наша миссия — делать обучение осмысленным, реализуя взаимосвязь между ожиданиями работодателей, компетенциями специалистов и возможностями преподавателей.

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

Я больше десяти лет разрабатываю разные веб-приложения.Успел поработать в области электронной коммерции, банковских продуктов, безопасности на морских судах и HR процессов. Люблю писать код и рассказывать о том как писать...
Я больше десяти лет разрабатываю разные веб-приложения.Успел поработать в области электронной коммерции, банковских продуктов, безопасности на морских судах и HR процессов. Люблю писать код и рассказывать о том как писать код на Typescript, верю, что будущее за прогрессивными веб-приложениями.Помимо разработки занимаюсь формированием команд, управляю талантами и создаю для них профессиональные смыслы, убежден, что к любому человеку можно найти подоход и эффективно встроить в рабочий процесс.Сейчас работаю тимлидом в большой международной компании.
В отрасли бэкенд-разработки на Java более 6 лет. Занимался fullstack-разработкой приложений, разработкой высоконагруженных compute-grid систем, а также микросервисов и etl-пайплайнов. Сейчас в роли старшего разработчика работаю над сервисами платежных систем...

В отрасли бэкенд-разработки на Java более 6 лет. Занимался fullstack-разработкой приложений, разработкой высоконагруженных compute-grid систем, а также микросервисов и etl-пайплайнов. Сейчас в роли старшего разработчика работаю над сервисами платежных систем в Unlimint.Есть опыт работы с сервисами Hadoop (HDFS, HBase), оркестраторами (Airflow, Spring Cloud Data Flow), MPP-базами (Cassandra, Greenplum, Clickhouse).Интересы: BigData, Blockchain, NFTОбразование: Master Degree in Computer Science and IT, ЮУрГУ, факультет ВШЭКН.

Старший преподаватель, аспирант кафедры прикладной математики и фундаментальной информатики, ОмГТУ. Более 5 лет преподаю в ВУЗе: глубокое обучение, ООП, анализ данных, python.Пишу диссертацию по методам оптимизации в глубоких нейронных сетях....
Старший преподаватель, аспирант кафедры прикладной математики и фундаментальной информатики, ОмГТУ. Более 5 лет преподаю в ВУЗе: глубокое обучение, ООП, анализ данных, python.Пишу диссертацию по методам оптимизации в глубоких нейронных сетях. За 8+ лет опыта в IT успел позаниматься embedded разработкой на C и desktop на C++ в НИИ приборостроения, back-end разработкой в стартапах, исследованием и разработкой системы анализа данных для Advanced driver-assistance systems в Intel. Преподаватель

Программа курса

Проблема сложности и способы ее решения. Сложность тестирования
Рассматриваются различные проблемы сложности/ Одной из таких проблем является нелинейное замедление скорости разработки проекта по мере увеличения его размера (см. Брукс "Мифический человек-месяц"). Рассказывается о различных типах архитектур, парадигмах программирования. Разберем методы построения исчерпывающего набора тестов, практику TDD

Тема 1: Проблема сложности, ее разновидности и их связь с архитектурой ПО.

Тема 2: Архитектура, архитектурные стили и виды

Тема 3: Модульные тесты // ДЗ

Скорость разработки ПО.
Разберем факторы, влияющие на скорость разработки программного обеспечения. Изучим достаточное условие постоянной скорости разработки. Научимся строить абстракции, устойчивые к изменениям требований.

Тема 1: Абстрагирование. Схема применения SOLID принципов.

Тема 2: Общие шаблоны распределения ответственностей

Тема 3: Определение абстракций, устойчивых к изменениям требований. // ДЗ

Тема 4: SOLID и исключения // ДЗ

Тема 5: Команда // ДЗ

Тема 6: Чистый код и рефакторинг

Тема 7: Расширяемая фабрика и IoC // ДЗ

Тема 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: Защита проектных работ

Рейтинг курса

4.8

Отзывы о курсе

По рейтингуПо дате
R
rrinkorn
Достоинства: - примеры реализации на метаязыке, поэтому подойдёт всем сведущим в программировании; - подход к выполнению домашних работ (тесты+код=будущая архитектура); - преподаватели с опытом разработки и с опытом обучения. Недостатки: - уметь хорошо думать абстракциями + уметь их реализовать в коде; - много времени уходит, чтобы разобраться с незнакомыми концепциями (которые достаточно прос...
V
volhapivavarchyk
Достоинства: Хорошо построенный курс, профессиональные и практикующие преподаватели, интересные практические задания, много примеров, проектная работа Недостатки: Не заметила Искала курс по разработке архитектуры программ. Главной целью было систематизировать накопленный опыт, закрыть пробелы в знаниях (выровнять свои знания). Остановилась на курсе "Архитектура и шаблоны проектирования". Кур...
Может быть интересно
Архитектура и шаблоны проектирования
На сайт курса

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