Улучшаемые навыки

Рефакторинг
C++
ООП
GoF
Паттерны
Разработка через тестирование
TDD

Инструменты

VS Code VS Code
Eclipse Eclipse
Microsoft Office Microsoft Office

Чему вы научитесь

01 Выделять проблемные места в программном коде на языке C++
02 Улучшать читабельность исходного кода на языке C++
03 Применять техники рефакторинга для улучшения архитектуры кода
04 Избавляться от запахов кода и улучшать дизайн программ
05 Проводить разработку через тестирование (TDD)

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

01 Рефакторинг – введение
  • Определение рефакторинга
  • Основы разработки через тестирование
  • Практика: Разработка модуля по методологии «Разработка через тестирование»
  • 02 Запахи кода. Общая информация
  • Определение запаха кода.
  • Принципы хорошего дизайна.
  • Запахи кода в тестах, запахи в базах данных (обзор).
  • Запахи в архитектуре, запахи в управлении персоналом
  • 03 Организация данных
  • Поля
  • Массивы данных
  • Ссылки и значения
  • Кодовые поля
  • Упрощение условных выражений
  • Упрощение вызова методов
  • Работа с обобщениями
  • Композиция методов
  • Практика: рефакторинг кода игры «Монополия»
  • 04 Декомпозиция условий
  • Объединение условных выражений
  • Объединение дубликатов фрагментов условных выражений
  • Удаление контрольного флага
  • Удаление вложенных условий
  • Использование полиморфизма вместо условий
  • Null-объекты
  • Проверки (Assertions)
  • Практика: рефакторинг программы «Крестики-нолики»
  • 05 Переименование метода/поля
  • Добавление/удаление параметров + параметризация
  • Разделение запроса и подсчетов
  • Замена параметров на выделенные методы
  • Использование нового объекта в качестве параметра
  • Замена параметра методом
  • Удаление метода настройки
  • Замена кодов ошибки на исключения
  • Замена исключений на проверки
  • 06 Принцип открытости-закрытости
  • Поднятие полей/методов/конструкторов
  • Опускание полей/методов
  • Принцип Лисков
  • Выделение под/надклассов и интерфейсов
  • Сокращение иерархий
  • Замена наследования делегированием и обратно
  • Практика: рефакторинг программы «шахматные фигуры»
  • 07 Методы
  • Выделение метода
  • Встраивание метода
  • Встраивание временных переменных
  • Замена временных переменных запросом
  • Введение объясняющих переменных
  • Разделение временных переменных
  • Замена полей класса на параметры
  • Замена метода на объект
  • Замена алгоритма
  • 08 Легко обнаруживаемые проблемы
  • Именование
  • Чрезмерная сложность
  • Дублирование
  • Условная логика
  • 09 Принцип единой ответственности
  • Связность
  • Закон Деметра
  • Передвижение методов/полей
  • Выделение класса
  • Встраивание класса
  • Сокрытие делегатов
  • Удаление посредника
  • Методы расширения
  • Практика: Улучшение кода программы «Видеопрокат»
  • 10 Данные
  • Наследование
  • Ответственность
  • Приспосабливающиеся изменения
  • Библиотечные классы
  • 11 Итого на курс 24 часов: теория – 15 ч ( 63%), практика – 9 ч ( 37%)

    32 900 ₽

    29 610 ₽ — для физ. лиц

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

    Для кого

    Разработчик Разработчик

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

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

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

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


    32 900 ₽

    29 610 ₽ — для физ. лиц

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

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

    32 900 ₽

    29 610 ₽ — для физ. лиц

    Юр. лицо — 32 900 ₽
    Физ. лицо — 29 610 ₽
    Открытая дата

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

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

    Наши ученики работают в:

    Наши клиенты

    Mail.ru
    Альфа-Банк, банковская группа
    Лаборатория Касперского
    Магнит, розничная сеть
    Спортмастер, сеть спортивных магазинов
    ПСБ
    Сбертех
    Дзен
    IT One
    Ростелеком
    Мегафон
    Nexign
    Ozon
    Декатлон
    X5 Group
    Технониколь
    Росатом
    Газпром
    Нлмк
    ВСК
    Синимекс

    Связанные курсы

    ARC-004
    24 часа

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

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

    от Middle

    49 500 ₽

    DEV-001_C++
    24 часа

    Шаблоны проектирования (GoF). Редакция для C++

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

    от Middle

    32 900 ₽

    Не нашли, что искали? — Просто напишите, и мы поможем

    Корпоративное обучение Оценка персонала Сертификация О нас Стань тренером Блог
    Пользователь только что записался на курс ""
    Спасибо!
    Форма отправлена успешно.