[ЯЮНИОР] C#. Для профессионалов 2021 [Роман Сакутин]

195

Курс нацелен на разработчиков, которые уже овладели базовыми средствами языка и хотят развиваться дальше!
В курсе представлены
блоки практики с различными технологиями, чтобы вы были свободны в творчестве и профессии.
Модуль 1.1 Инкапсуляция

  • Что такое инкапсуляция?
  • Примеры защиты состояния
  • Пример инвентаря
  • Свойства
  • Закон Деметры
  • Temporal Cohesion
  • Трёхуровневая архитектура
  • Кейс. Ожидания
  • K.I.S.S
  • DRY — Dont Repeat Yourself

Домашка

  • Симуляция траекторий
  • Защита данных
  • Разбивка класса

Модуль Организационные моменты

  • Как сдавать ДЗ

Модуль 1.2 Полиморфизм

  • Полиморфизм подтипов и формальная система типов
  • Контракт через интерфейс
  • Контракт через абстрактные классы
  • Контракт через виртуальные методы
  • Глубокий virtual
  • Виртуальные свойства
  • Принцип подстановки Барбары Лисков (LSP)
  • Реализация IEnumerable на примере связного списка
  • Зависимость от абстракций
  • Принцип инверсии зависимостей (DIP)

Домашка

  • Вомбат
  • Роллбэк
  • Товар со скидкой

Модуль 1.3 Делегаты и события

  • Cohesion and coupling
  • Виды Cohesion
  • Виды Coupling
  • Стратегия
  • Тип делегата
  • События

Домашка

  • Сохранение
  • Обсервер

Модуль 1.4 Рефакторинг

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