Рефакторинг кода. Редакция для С++

В курсе рассматривается понятие рефакторинга как способа предотвращения распада программы, даётся обзор проблемных участков разработки не только в коде, но и в базах данных, а также частично на уровне управления. Во время обучения слушателями выполняется рефакторинг программы на С++ из состояния «неподдерживаемая» в состояние «готова для покрытия тестами».
Курс: DEV-006_C++
Длительность: 24 ч.

Описание

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

Слушатели смогут на собственном опыте понять пользу такой практики рефакторинга, как «маленькие шаги» при применении ее к проекту, который будет предложено привести к поддерживаемому состоянию в течение курса. 

Результатом курса будет практическое ознакомление с техниками рефакторинга, а также выработка некоторых правил (и впоследствии привычек), которые позволят не делать распространённых и легко обнаруживаемых ошибок сразу. 

Во время обучения слушателями выполняется рефакторинг программы на С++.

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

  • Введение.
  • Организация методов.
  • Перемещение ответственности между объектами.
  • Организация данных.
  • Упрощение условных выражений.
  • Упрощение вызовов методов.
  • Использование наследования.
  • Заключение.

Цели

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

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

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

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

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

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

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

Павел обладает большим практическим опытом проведения дистанционных тренингов.

В репозитории https://github.com/paveltsytovich представлены некоторые разработки Павла. В частности, им разработан драйвер на NodeJS для технологии Noolite-F применяемой в умных домах, а также адаптер  для применения этого драйвера в системе умного дома IoBroker.

Сфера научных интересов: автоматизация разработки программного обеспечения, объектно-ориентированные операционные системы и среды.

Занимается разработкой адаптивных систем управления электроосвещением и другого оборудования в квартирах и коттеджах (умный дом) на основе психологического состояния человека и его паттернов поведения.

Данный курс запланирован в городах: Онлайн
15.03.2021 - 18.03.2021
Время: 10:00-16:00
Локация: Онлайн
Длительность: 24 ч.
Тренер
Цытович Павел
Специалист в области разработки и архитектуры ПО
25 000 руб.
6 600 грн.
В корзину

15.03.2021

15.03.2021 - 18.03.2021
Время: 10:00-16:00
Локация: Онлайн
Длительность: 24 ч.
Тренер
Цытович Павел
Специалист в области разработки и архитектуры ПО
25 000 руб.
6 600 грн.
В корзину
Не подходят даты, время или хотите заказать корпоративное обучение для команды?
+
Предложите свой вариант
Онлайн 25 000 руб.
6 600 грн.
Отзывы:
Участник тренинга
Много информации по рефакторингу, узнал паттерны, которые могут помочь в проектировании безопасного и красивого код.

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

Книги по теме курса:
  • Фаулер М. Рефакторинг: улучшение существующего кода;
  • Кериевски Д. Рефакторинг с использованием шаблонов;
  • Scott W. Ambler Refactoring Databases: Evolutionary Database Design.
  • Wake W.C. Refactoring Workbook. 
  • Feathers M.C. Working Effectively with Legacy Code.

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

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

Имя *

Отчество

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

Компания *

Телефон *

Город *

Комментарий
Оценка и обучение ИТ-специалистов по ключевым направлениям разработки программного обеспечения. Курсы от экспертов-практиков по языкам программирования, системному и бизнес-анализу, архитектуре ПО, ручному и автоматизированному тестированию ПО, Big Data и машинному обучению, управлению проектами и Agile. Luxoft Training – единственный учебный центр в России, авторизованный IIBA. Действует скидка 10% на обучение физических лиц.
Остались вопросы?
Связаться с нами
Пользователь только что записался на курс ""
Спасибо!
Форма отправлена успешно.