[Otus] Разработчик C#

495

1 C#

  • Знакомство,рассказ о формате Scrum, краткий обзор курса
  • Обзор типов и структур данных
  • Операции и операторы
  • Методы, их перегрузка, расширения
  • Классы как воплощение принципов ООП
  • Интерфейсы и их особенности
  • Коллекция коллекций
  • 50 оттенков LINQ
  • Работа со строками и регулярные выражения

2 С# Advanced

  • Reflection and Attributes
  • Как устроена Сериализация?
  • Исключения и нюансы работы с ними
  • Что есть в C# для работы с SQL и NoSQL базами данных?
  • Работа с методами как с переменными (delegates, events)
  • Дженерики, их реализация и ограничения
  • Сборщик мусора, деструкторы и финализаторы, Disposable Pattern
  • Дополнительны евозможности языка: от директив препроцессора до указателей
  • Что полезного в новых версиях C#?

3 Многопоточность и паттерны проектирования

  • В чём отличие процесса, потока и домена?
  • Примитивные и гибридные конструкции синхронизации потоков
  • Внутрипроцессное взаимодействие
  • Межпроцессное взаимодействие
  • Магические слова async / await
  • Порождающие паттерны проектирования
  • Структурные паттерны проектирования
  • Поведенческие паттерны проектирования

4 Клиент-серверная архитектура и микросервисы

  • Архитектура проекта
  • Авторизация и аутентификация
  • WCF, ASMX, Web Api, REST
  • Волшебство кэширования
  • Паттерны корпоративных приложений
  • Насколько твёрдые SOLID принципы?
  • В поисках лучшего брокера сообщений
  • CI/CD, Windows-сервисы и консольные приложения

5 Процессы и подходы

  • Waterfall, Scrum, Kanban, DDD, TDD
  • Unit, Sandbox, Blackbox, Whitebox, Integration tests
  • Типы проектов,которые можно реализовать на C#
  • Рефакторинг, Реинжиниринг, Ренейминг
  • Логирование, ведение документации и иные BestPractices
  • Инструментарий программиста

6 Проектная работа

  • Выбор проекта
  • Консультация по выбранному проекту
  • Защита проектных работ