Рефакторинг кода. Редакция для С++
В тренинге рассматриваются подходы и методы улучшение читабельности исходного кода на языке C++. В качестве практики слушателям предлагается выполнить рефакторинг небольших программ, фокусирующих слушателей на тех или иных аспектах улучшения существующего кода.
24 ак.ч.
Онлайн
DEV-006_C++
Рефакторинг кода. Редакция для С++
Записаться на курс
Длительность
24 ак.ч.
Локация
Онлайн
Код
DEV-006_C++
Расписание и цены
28 500 руб.
* Для физических лиц действует скидка 10% Закажите корпоративное обучение с учетом ваших потребностей
Рефакторинг кода. Редакция для С++
Записаться на курс
Длительность
24 ак.ч.
Локация
Онлайн
Код
DEV-006_C++
Расписание и цены
28 500 руб.
* Для физических лиц действует скидка 10% Закажите корпоративное обучение с учетом ваших потребностей

Описание

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

Цели

На этом тренинге слушатели получат представление:
  • О том, что такое "запахи" кода;
  • О передовых техниках улучшения читабельности существующего кода.
После тренинга слушатели будут уметь:
  • Выделять проблемные места в программном коде на языке C++;
  • Улучшать читабельность исходного кода на языке C++.

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

Разработчики исходного кода на языке С++ с опытом работы от 1 года до 2 лет.

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

Базовые общие знания в области программирования. 

Базовые знания скриптовых языков.

Способность понимать логические потоки кода. 


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

Модуль 1
  • Рефакторинг – введение.
  • Понятие рефакторинга, для чего нужен рефакторинг кода.
  • Разработка через тестирование.

Модуль 2
  • "Запахи" кода.
  • Общая информация.
  • Определение "запаха" кода.
  • Принципы хорошего дизайна.
  • "Запахи" кода в тестах, "запахи" в базах данных (обзор).
  • "Запахи" в архитектуре, "запахи" в управлении персоналом.

Модуль 3
  • Общие проблемы в коде.
  • Организация данных.
  • Поля. Массивы данных.
  • Ссылки и значения. Кодовые поля.
  • Упрощение условных выражений. Упрощение вызова методов.
  • Работа с обобщениями.
  • Композиция методов.

Модуль 4
  • Проблемы внутри класса.
  • Легко обнаруживаемые проблемы.
  • Именование.
  • Чрезмерная сложность.
  • Дублирование.
  • Условная логика.

Модуль 5
  • Перемещение функционала между объектами.
  • Принцип единой ответственности.
  • Связность.
  • Закон Деметра.
  • Передвижение методов/полей.
  • Выделение класса. Встраивание класса.
  • Сокрытие делегатов.
  • Удаление посредника.

Модуль 6
  • Проблемы во взаимодействии классов.
  • Данные. Наследование. Ответственность.
  • Приспосабливающиеся изменения.
  • Библиотечные классы.

Раcписание курсов
Вид:
Регистрируйтесь на следующий курс
Предварительная регистрация гарантирует участие в обучении. Мы обязательно оповестим вас, когда курс будет запланирован
+
Отзывы (1)
Много информации по рефакторингу, узнал паттерны, которые могут помочь в проектировании безопасного и красивого код.
Участник тренинга
Связанные курсы
Шаблоны проектирования (GoF). Редакция для C++
В курсе рассматриваются GoF-паттерны – типовые решения, охватывающие широкий спектр решения проблем: от иерархических структур до динамического изменения поведения объекта в зависимости от его состояния.
Смотреть каталог
Ваши преимущества
Экспертность
Тренеры-эксперты из реальных проектов крупнейших компаний, лидеров в своей отрасли
Живое обучение
“Живая” коммуникация с тренером даже в онлайн-формате
Практика
Максимально наполненные практикой занятия, работа в группах, выполнение домашних заданий
Пользователь только что записался на курс ""
Спасибо!
Форма отправлена успешно.