Шаблоны проектирования приложений масштаба предприятия

Рассматриваются лучшие практики проектирования на основе типовых решений, апробированных во множестве проектов, – паттернах проектирования корпоративных приложений.
Курс: ARC-004
Длительность: 24 ч.

Описание

Курс по разработке корпоративных приложений. Архитектурные решения, заложенные при проектировании программной системы, являются одними из основных технических решений при проектировании ПО.

В курсе  рассматриваются лучшие практики проектирования на основе  типовых решений, апробированных во множестве проектов, – паттернах проектирования корпоративных приложений. Каждое решение содержит сведения о сфере использования и основных аспектах реализации. Рассматриваются примеры исходного кода на Java®  и C#.

Разбираемые темы

Введение:
  • Введение в шаблоны проектирования;
  • Каталоги шаблонов проектирования;
  • Задачи курса.
1. Шаблоны предметной логики:
  • Парадигма Domain Driven Design;
  • Организация предметной логики;
  • Слои.
2. Архитектурные шаблоны доступа к данным:
  • Каталог шаблонов доступа к данным;
  • Каталог Microsoft;
  • Шаблоны PoEAA (Архитектурные шаблоны корпоративных приложений);
  • Шаблоны доступа к данным;
  • Шаблоны объектно-реляционного отображения;
  • Поведенческие шаблоны;
  • Структурные шаблоны;
  • Шаблоны работы с метаинформацией.
3. Веб-представление:
  • Model-View-Controller;
  • Шаблоны Контроллеров;
  • Page Controller;
  • Front Controller;
  • Application Controller;
  • Шаблоны организации представлений;
  • Template View;
  • Transform View;
  • Two Step View.
4. Сложные шаблоны:
  • Шаблоны распределенных систем;
  • Remote Facade;
  • Data Transfer Object;
  • Шаблоны конкурентного доступа к данным;
  • Optimistic Offline Lock;
  • Pessimistic Offline Lock;
  • Coarse-Grained Lock;
  • Implicit Lock;
  • Шаблоны сеансовых состояний;
  • Client Session State;
  • Server Session State;
  • Database Session State.
5. Базовые шаблоны:
  • Gateway;
  • Mapper;
  • Layer Supertype;
  • Separated Interface;
  • Registry;
  • Value Object;
  • Money;
  • Special Case;
  • Plugin;
  • Service Stub;
  • Record Set.
Заключение.

Цели

После завершения обучения слушатели:
  • смогут разделять корпоративные приложения на слои;
  • будут знать основные подходы к организации бизнес-логики;
  • детально знать механизм объектно-реляционного отображения;
  • смогут организовывать представление данных в Web с использованием системы MVC (модель-представление-контроллер);
  • будут понимать принцип параллельной обработки заданий, охватывающих несколько системных транзакций;
  • проектировать интерфейс распределённого доступа к объектам.

Целевая аудитория

Разработчики, старшие разработчики.

Предварительная подготовка

  • Знание принципов объектно-ориентированного программирования;
  • Опыт работы с объектно-ориентированными языками от 1 года;
  • Знание UML;
  • Базовые знания английского языка.
После окончания курса выдаётся сертификат на бланке Luxoft Training
Шевченко Андрей Эксперт по архитектуре и технологиям BigData
Андрей занимается разработкой коммерческого ПО с 2010 г. Последние несколько лет Андрей занимал роль ведущего архитектора в одном из крупных проектов компании Luxoft, занимался разработкой общей архитектуры системы: функциональная, интеграционная, технологическая, эксплуатационная, архитектура информационной безопасности (ролевой модели доступа); спроектировал микросервисную архитектуру фронтального слоя приложения. 

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

Постоянно принимает участие в крупнейших российских конференциях по созданию высоконагруженных приложений и собраниях Java-разработчиков.

В свободное время занимается самообразованием в профессиональной сфере, интересуется вопросами создания корпоративной архитектуры и облачными вычислениями.
Цытович Павел Специалист в области разработки и архитектуры ПО
Павел имеет богатый опыт обучения разработчиков программного обеспечения по всем направлениям Software Engineering, начиная от выяснения потребностей заказчика и ответа на вопрос «Чего тебе надобно, старче?» до создания высоконагруженных систем на основе применения хорошо зарекомендовавших себя решений (паттернов). 
Широко использует в своей научно-практической деятельности методы объектно-ориентированного анализа и проектирования, язык моделирования UML. В качестве разработчика имеет опыт создания нагруженных приложений на платформе Microsoft .NET Framework. 

Свою карьеру Павел начал в  Южно-Уральском государственном университете в 1993 г., где был преподавателем  авторизованного учебного центра при кафедре ЭВМ, позже преподавал цикл дисциплин «Программная инженерия».
В 2011–2012 гг. в качестве архитектора проектных решений компании занимался оценкой, ведением проектов, разработкой архитектурных решений в Fuse 8 Online. 
С 2012 г. – эксперт Luxoft Training по разработке и архитектуре ПО.

В методиках обучения Павел использует проектный подход. В практике преподавания старается опираться на различные психологические упражнения, позволяющие смоделировать реальную ситуацию, возникающую у разработчика в ходе работы над проектом.  Является автором оригинальной методики обучения постановщиков задач – деловой игры «Тендер». Проводит авторские курсы, такие как «Технология программирования» и «Проектирование и разработка сервисно-ориентированной архитектуры», основанных на опыте разработки как собственных проектов, так и проектов для предприятий и организаций. 

Павел успешно защитил диссертацию на соискание степени кандидата технических наук. 
 
Является фанатом объектно-ориентированного подхода, языка моделирования UML. Любимый язык программирования – С++. В разработке проектов предпочитает использовать подход разработки через тестирование, там где это возможно. 

Сейчас Павел осваивает сферу IoT. Как первый шаг – успешно функционирующий уже два года умный дом в собственной квартире, управляющий освещением и имеющий функции голосового уведомления. 

В разработках программного обеспечения использует Microsoft Visual Studio для проектов на базе технологий Microsoft Net, Eclipse для проектов, связанных с IoT.
-10% ФИЗИЧЕСКИМ ЛИЦАМ
Данный курс запланирован в городах: Москва, Санкт-Петербург
01.10.2018 - 03.10.2018
Время: 10:00-18:00
Локация: Москва
Длительность: 24 ч.
Тренер
Шевченко Андрей
Эксперт по архитектуре и технологиям BigData
35 300 1

01.10.2018 - 03.10.2018

Не подходят даты, время или хотите заказать корпоративное обучение для команды?
+
Предложите свой вариант
29.10.2018 - 31.10.2018
Время: 10:00-18:00
Локация: Санкт-Петербург
Длительность: 24 ч.
Тренер
Цытович Павел
Специалист в области разработки и архитектуры ПО

29.10.2018 - 31.10.2018

Не подходят даты, время или хотите заказать корпоративное обучение для команды?
+
Предложите свой вариант
Не подходят даты, время или хотите заказать корпоративное обучение для команды?
+
Предложите свой вариант
Москва 35 300 1
Санкт-Петербург 31 770 1
Омск 26 480 1
Киев 7 200 грн.
Одесса 6 500 грн.
Днепр 6 500 грн.
Отзывы:
Киселёв Станислав
Отличный преподаватель. Отличный тренинг как по организации, так и по материалу. Самым полезным для меня было освоение назначения паттеров.
Морозов Григорий
Тренинг очень интересный и полезный, особенно объяснения на реальных примерах. К тому же благодаря курсу изменилось понимание некоторых базовых вещей.
Николай Липко
В курсе для меня были важны примеры использования шаблонов из реальной практики/повседневной жизни. Также очень полезны ответы преподавателя на интересующие меня вопросы как по тематике курса, так и по другим вопросам из рабочей практики, ответы на которые я пытался найти еще до тренинга. Андрей Стукаленко рассказывает очень динамично, поэтому слушать его интересно, и внимание непрерывно сфокусировано именно на преподавателя. Примеры из реального опыта делают курс максимально прикладным, что позволяет сразу же применять полученные знания. Это именно то, чего я ожидал от обучения.
Холодков Антон
Наиболее важными моментами были обзор архитектур приложений (EDA, Map-Reduce) и рассказ о разрешении неопределенностей. Тренинг очень понравился, помимо конкретных знаний это хорошая возможность "размять мозги", отключиться от повседневной рутины.
Участник тренинга
Прослушанный курс существенно расширил представление о проектировании ПО и наметил пути для дальнейшего развития в этой области. Полученные знания весьма востребованы и актуальны в данный момент. Особенно хочется отметить компетентность Евгения Кривошеева и его готовность к дальнейшему общению и обратной связи за рамками курса. Спасибо!
Участник тренинга
При проведении тренинга были представлены практические материалы, что значительно облегчает рассмотрение курса и позволяет систематизировать знания. Инструктор объясняет не только содержание курса, но и находит время объяснить базовые и сопутствующие понятия, что способствует лучшему усвоению информации. Кроме того было затронуто много смежных областей, необходимых для практического применения получаемых знаний.
Зайцев Станислав
На курсе были рассмотрены методы применения решений при выборе шаблона, детально разобраны все достоинства и недостатки, благодаря чему, наконец-то, увидел полную картину. Очень интрересная подача материала: объясняются не только шаблоны проектирования, но что, на мой взгяд, более важно, приводится обоснование выбора, все плюсы и минусы его использования.
Ахметова Айгуль
Данный курс полностью оказался для меня полезным, не могу выделить какие-то отдельные его части. Ранее считала, что хорошо знакома с hof, но это оказалось лишь малой долей того, что я знаю. От тренинга остались потрясающие впечатления. Обучение позволило взглянуть на проблемы и решения вопросов по проектированию на высоком уровне, позволило увидеть явное расслоение, которoе "must be".
Рекомендуемые курсы для дальнейшего обучения:
Москва:
01.08.2018-03.08.2018
Киев:
03.09.2018-07.09.2018
Москва:
10.12.2018-12.12.2018

Рекомендуемые дополнительные материалы, источники:

1. Design Patterns: Elements of Reusable Object-Oriented Software / Erich Gamma, Richard Helm, Ralph Johnson, John Vlissides (Gang of Four, GoF);
2. Martin F. Patterns of Enterprise Application Architecture. Addison Wesley, 2002.

Примечание:

Материалы курса представлены на английском языке.

Записаться на курс

Выбрать дату
Если Вам не подходят дата и место проведения тренинга, Вы можете оставить заявку на участие в нем в любом из городов, где представлены филиалы Luxoft Training. Для этого выберите вариант "Открытая дата" и укажите желаемое место проведения курса.
Желаемое место проведения курса
Вы можете оставить заявку на корпоративное обучение сотрудников Вашей компании в любом городе России или Украины, выбрав вариант "Другой город"
Фамилия *

Имя *

Отчество

Контактный E-mail *

Компания *

Телефон *

Город *

Комментарий
По запросу на education@luxoft.com мы ответим на любые дополнительные вопросы касательно обучения в нашем Luxoft Training.
   Подпишись на ежемесячный DigestLT
Успешная форма подписки.
Спасибо!
Форма отправлена успешно.