...Читать далее
Оглавление
Этап 1: Введение в C#
- Знакомство с языком C# и платформой .NET.
- Написание первой программы с использованием .NET CLI.
- Использование Visual Studio: создание первой программы.
- Написание приложений для WSL.
Этап 2: Основы программирования на C#
- Консольный ввод-вывод.
- Арифметические операции.
- Поразрядные операции.
- Операции присваивания.
- Преобразования базовых типов данных.
- Условные выражения.
- Конструкция if..else и тернарная операция.
- Циклы.
- Массивы.
- Задачи с массивами.
- Методы и параметры методов.
- Возвращение значения и оператор return.
- Передача параметров по ссылке и значению. Выходные параметры.
- Массив параметров и ключевое слово params.
- Рекурсивные функции.
- Локальные функции.
- Конструкция switch.
- Перечисления (enum).
Этап 3: Классы, структуры и пространства имен
- Классы и объекты.
- Конструкторы, инициализаторы и деконструкторы.
- Класс Program и метод Main. Программы верхнего уровня.
- Структуры.
- Типы значений и ссылочные типы.
- Область видимости переменных.
- Пространства имен и глобальные пространства имен.
- Подключение пространств имен по умолчанию.
- Создание библиотек классов с помощью Visual Studio и .NET CLI.
- Модификаторы доступа.
- Свойства.
- Перегрузка методов.
- Статические члены и модификатор static.
- Установка пакетов Nuget.
- Константы и поля для чтения.
- Работа с null в ссылочных и значимых типах.
- Проверка на null, операторы ?. и ??.
- Псевдонимы типов и статический импорт.
Этап 4: Объектно-ориентированное программирование
- Наследование.
- Преобразование типов.
- Виртуальные методы и свойства.
- Скрытие методов и свойств.
- Абстрактные классы.
- Методы класса System.Object.
- Обобщенные типы и ограничения обобщений.
- Наследование обобщенных типов.
Этап 5: Обработка исключений
- Конструкция try..catch..finally.
- Блок catch и фильтры исключений.
- Типы исключений и класс Exception.
- Генерация исключений (throw).
- Создание собственных классов исключений.
Этап 6: Делегаты, события и лямбда-выражения
- Делегаты и их применение.
- Анонимные методы.
- Лямбда-выражения.
- События.
- Делегаты Action, Predicate, Func.
- Замыкания.
Этап 7: Интерфейсы
- Определение интерфейсов и их применение.
- Явная реализация интерфейсов.
- Интерфейсы в обобщениях.
- Интерфейсы ICloneable и IComparable.
Этап 8: Дополнительные возможности ООП
- Определение операторов и их перегрузка.
- Индексаторы.
- Методы расширения.
- Анонимные типы.
- Кортежи.
- Records.
Этап 9: Pattern Matching
- Паттерн типов, свойств, кортежей.
- Логические и реляционные паттерны.
- Паттерны списков.
Этап 10: Коллекции
- Работа с коллекциями (List<T>, Dictionary<T, V>, ObservableCollection).
- Итераторы и оператор yield.
- Span, индексы и диапазоны.
Этап 11: Работа со строками
- Класс System.String.
- Форматирование и интерполяция строк.
- Класс StringBuilder.
- Регулярные выражения.
Этап 12: Работа с датами и временем
- DateTime, DateOnly, TimeOnly.
- Форматирование дат и времени.
Этап 13: Многопоточность и асинхронность
- Класс Thread.
- Синхронизация потоков.
- Работа с Task.
- Асинхронные методы (async, await).
Этап 14: LINQ и Parallel LINQ
- Основы LINQ и фильтрация коллекций.
- Агрегатные операции.
- Parallel LINQ (AsParallel, AsOrdered).
Этап 15: Работа с файлами
- Чтение и запись файлов (File, StreamReader, StreamWriter).
- Работа с бинарными файлами (BinaryReader, BinaryWriter).
- Архивация файлов.
Этап 16: Работа с JSON и XML
- Сериализация JSON (JsonSerializer).
- Работа с XML (System.Xml, LINQ to XML, XmlSerializer).
Этап 17: Рефлексия
- Исследование типов через System.Type.
- Работа с методами, конструкторами, свойствами.
- Динамическая загрузка сборок.
Этап 18: Работа с сетями
- Протокол HTTP (HttpClient, HttpListener).
- Протокол TCP (TcpClient, TcpListener).
- Протокол UDP (UdpClient).
Этап 19: Паттерны проектирования
- Основы паттернов.
- Порождающие паттерны (Singleton, Factory).
- Структурные паттерны (Adapter, Proxy).
- Поведенческие паттерны (Strategy, Observer).
- Принципы SOLID.