Вы можете проверить этот курс на моем сайте.

Всем привет, меня зовут Станислав Згурский и я .NET разработчик, решил написать книгу по C# для начинающих.

Основная цель этой книги — максимально просто изложить материал и показать возможности языка C#. Содержание некоторых глав может меняться со временем, так как я буду обновлять книгу в зависимости от обновления языка C#.

Вы всегда можете связаться со мной по любым вопросам:

Электронная почта — [email protected]

Телеграмма: @Stasoz

Присоединяйтесь к нашему сообществу в Telegram — https://t.me/itifico

Ниже вы найдете список глав, в которых я буду еженедельно публиковать материал.

С# 10 и .NET 6

  1. Введение в C#
    1.1 Что такое C# и .NET?
    1.2 Эволюция C#
    1.3 Первая программа и установка VS 2022
    1.4 Отладка
    1.5 .NET CLI
    1.6 C# ключевые слова
  2. Основы C#
    2.1 Структура программы
    2.2 Переменные
    2.3 Типы данных
    2.4 Приведение типов
    2.5 Консольный ввод/вывод
    2.6 Арифметические операторы
    2.7 Операторы присваивания
    2.8 Операторы сравнения
    2.9 Логические операторы
    2.10 Приоритет и ассоциативность операторов
    2.11 Операторы if else
    2.12 Тернарный оператор
    2.13 Циклы
    2.14 Операторы перехода
    2.15 Консольная игра — Угадывание чисел
    2.16 Массивы
    2.17 Многомерные массивы
    2.18 Зубчатые массивы
    2.19 Задачи с массивами
    2.20 Методы
    2.21 Передача параметров по ссылке и значению
    2.22 Массив как параметр и ключевое слово params
    2.23 Локальные и рекурсивные функции
    2.24 Класс Parse, TryParse и Convert
    2.25 Операторы Switch
    2.26 Тип Enum
  3. Классы, структуры и объекты
    3.1 Классы и объекты
    3.2 Конструкции
    3.3 Перегрузка методов
    3.4 Поля Const и Readonly
    3.5 Добавление классов и основного метода
    3.6 Структура
    3.7 Типы значений и ссылочные типы
    3.8 Класс и структура
    3.9 Область видимости (контекст) переменной
    3.10 Пространства имен
    3.11 Глобальные пространства имен
    3.12 Добавление Сборка в проект
    3.13 Модификаторы доступа
    3.14 Свойства
    3.15 Индексаторы
    3.16 Статическое ключевое слово
  4. Наследование и полиморфизм
    4.1 Наследование
    4.2 Приведение типов
    4.3 Виртуальные методы и свойства
    4.4 Скрытие методов и свойств
    4.5 Класс System.Object
    4.6 Абстрактные классы
    4.7 Универсальный тип
    4.8 Универсальные ограничения
    4.9 Наследование в универсальных типах
  5. Обработка исключений
    5.1 Основы обработки исключений
    5.2 Блоки перехвата и фильтры исключений
    5.3 Типы исключений. Класс исключения
    5.4 Генерация исключения и оператор throw
    5.5 Создание классов исключений
    5.6 Поиск блока catch при обработке исключений
    5.7 Отметить, снять отметку
  6. Интерфейсы
    6.1 Основы интерфейсов
    6.2 Справочник по интерфейсам
    6.3 Интерфейсы на практике
    6.4 Явная реализация интерфейсов
    6.5 Реализация интерфейсов в базовых и производных классах
    6.6 Интерфейс наследование
    6.7 Интерфейсы в обобщениях
    6.8 Копирование объектов. Интерфейс ICloneable
    6.9 Сортировка объектов. IComparable interface
    6.10 Ковариантность и контравариантность универсальных интерфейсов
  7. Делегаты, события и лямбды
    7.1 Делегаты
    7.2 Делегаты на практике
    7.3 Ковариантность и контравариантность делегатов
    7.4 Делегаты Action, Predicate и Func
    7.5 Анонимные методы
    7.6 Лямбда-выражения
    7.7 События
  8. Строки, массив и DateTime
    8.1 Класс Array
    8.2 Строки и класс System.String
    8.3 Операции со строками
    8.4 Форматирование и интерполяция строк
    8.5 Класс StringBuilder
    8.6 Регулярные выражения
    8.7 Структура DateTime
    8.8 Форматирование даты и времени
  9. Дополнительные возможности ООП
    9.1 Null и ссылочные типы
    9.2 Null и типы значений
    9.3 Проверка на null, операторы ?. и ??
    9.4 Ссылочные переменные и возврат ссылки
    9.5 Методы расширения
    9.6 Частичные классы и методы
    9.7 Анонимный тип
    9.8 Записи
    9.9 Кортежи< br /> 9.10 Сопоставление с образцом
  10. Коллекции, перечислители и итераторы
    10.1 Обзор коллекций
    10.2 ArrayList
    10.3 List‹T›
    10.4 Различия между Array и List
    10.5 LinkedList‹T›
    > 10.6 Очередь‹T›
    10.7 Стек‹T›
    10.8 Словарь‹T,V›
    10.9 Интерфейсы IEnumerable и IEnumerator
    10.10 Итераторы и инструкция yield
  11. Сборка мусора, управление памятью
    11.1 Сборщик мусора
    11.2 Завершенные объекты. Метод Dispose
    11.3 Использование конструкции
  12. Отражение
    12.1 Введение в отражение. Класс System.Type
    12.2 Практика рефлексии
    12.3 Динамическая загрузка сборок и позднее связывание
    12.4 Атрибуты
  13. Многопоточность
    13.1. Введение в многопоточность. Класс потока
    13.2 Создание потоков. Делегат ThreadStart
    13.3 Параметризованные потоки
    13.4 Синхронизация потоков
    13.5 Монитор
    13.6 Класс AutoResetEvent
    13.7 Мьютекс
    13.8 Семафор
    13.9 Таймер
    Пул потоков CLR 13.10
  14. Параллельное программирование и библиотека TPL
    14.1 Введение в параллельное программирование
    14.2 Задачи и класс Task
    14.3 Работа с классом Task
    14.4 Задачи продолжения
    14.5 Отмена задачи
    14.6 Параллельный класс
  15. Асинхронное программирование
    15.1 Асинхронные методы, async и await
    15.2 Возврат результата асинхронного метода
    15.3 Последовательный и параллельный вызов асинхронных операций
    15.4 Обработка ошибок в асинхронных методах
    15.5 Отмена асинхронных операций
  16. Работа с потоками и файловой системой
    16.1 Пространство имен System.IO
    16.2 Файл и информация о файле
    16.3 Каталог и информация о каталоге
    16.4 Путь к классу
    16.5 FileStream. Чтение и запись файла
    16.6 Чтение и запись текстовых файлов. StreamReader и StreamWriter
    16.7 Двоичные файлы. BinaryWriter и BinaryReader
    16.8 Двоичная сериализация. BinaryFormatter
    16.9 Архивирование и сжатие файлов