Описание
Паттерны (patterns, шаблоны) представляют собой совокупность некоего опыта, пригодную для повторного использования. Паттерны находят применение во всех областях деятельности, поскольку дают возможность использовать сработавшие ранее решения. Знание паттернов проектирования позволяет не только быстрее строить Ваши решения и получать качественный исходный код, но и эффективнее общаться с коллегами, которые уже освоили данную технологию.
В курсе рассматриваются три типа паттернов: структурные – описывающие типовые взаимосвязи между классами (объектами) программной системы, порождающие – описывающие типовые способы контроля за процессом создания экземпляров классов и поведенческие – реализующие типовые алгоритмы, применяемые практически в каждой программной системе.
Тренинг построен на сквозном примере, когда слушатели на основе поставленной задачи создают решение, и тем самым, знакомятся с каждым паттерном.удостоверение о повышении квалификации государственного образца
Цели
- описать понятие паттернов и принципы их использования;
- описать проблемы и преимущества проектирование на базе повторного использования кода;
- смогут использовать терминологию паттернов в обсуждении, проектировании и разработке;
- использовать терминологию паттернов в обсуждение, проектирование и разработке;
- разрабатывать приложение на базе паттернов.
Целевая аудитория
Предварительная подготовка
- знание принципов объектно-ориентированного программирования;
- опыт работы с объектно-ориентированными языками от 1 года;
- желательно: знакомство с .Net.
Разбираемые темы
-
1. Введение в паттерны проектирования
- Принципы хорошего дизайна программной системы (SOLID)
- Понятие паттерна проектирования
- Метамодель паттерна проектирования
- Элементы паттерна проектирования
-
2. Структурные паттерны
- Composite
- Decorator
- Proxy
- Adapter
- Flyweight
- Bridge
- Facade
-
3. Порождающие паттерны
- Factory Method
- Abstract Factory
- Builder
- Prototype
- Singleton
-
4. Паттерны поведения
- Chain of Responsibility
- Command
- Interpreter
- Iterator
- Mediator
- Memento
- Observer
- State
- Strategy
- Template Method
- Visitor
-
5. Процесс поиска решения, основанный на паттернах (необязательный модуль)
- Реализация структурных паттернов
- Реализация порождающих паттернов
- Реализация поведенческих паттернов
- Знание принципов объектно-ориентированного программирования.
- Опыт работы с объектно-ориентированными языками от 1 года.
- Желательно: знакомство c UML
Примечание
Специалист с более чем 15-летним опытом работы в коммерческой разработке на Java, а также преподавания.
Проводит технические собеседования для опытных программистов. Сотрудничает с ведущими банками страны в сфере повышения квалификации сотрудников и проведения технических интервью на позицию Java, Python, JS-разработчиков.
Является автором и разработчиком нескольких запатентованных веб-приложений, которые используют такие крупные компании как ОАО «РЖД» и другие.
Лауреат конкурса Новое звено-2013, награжден благодарственным письмом президента ОАО «РЖД» за разработку уникального ПО «САОС». Активный участник программы IT-Start.
Является автором курсов по программированию для подготовки разработчиков разного профиля с нуля.
Образование:
Саратовский государственный университет им. Н.Г. Чернышевского, Саратов; механико-математический факультет, специальность «Прикладная математика и информатика», 2009. Механико-математический, Прикладная математика и информатика
Саратовский государственный университет им. Н.Г. Чернышевского, Саратов; факультет иностранных языков, специальность «Перевод и переводоведение» (переводчик английского языка), 2009. Иностранных языков, Переводчик английского языка в сфере профессиональных коммуникаций.
Среди проектов Сергея:
-
Разработка автоматизированных системы для РЖД;
-
Написание модулей на PHP с использованием Smarty для компании Itaccent;
- Разработка и проведение обучения для слушателей с начальными знаниями и профессиональных разработчиков таких компаний как Газпром, Роснефть, Лукойл, Билайн и др.