Курс: C# и WPF
Интерактивные лекции в формате карточек. Нажмите на карточку, чтобы открыть урок.
Лекции по WPF — Основы
Введение в WPF
Познакомимся с основами Windows Presentation Foundation, его назначением и возможностями.
Архитектура WPF: XAML, Code-behind, Application
Разберем структуру WPF-приложений и взаимодействие XAML с кодом на C#.
VisualTree и LogicalTree
Изучим разницу между визуальным и логическим деревом элементов в WPF.
Панели компоновки
Рассмотрим различные панели для размещения элементов интерфейса и их особенности.
Элементы управления
Изучим основные элементы управления WPF: кнопки, текстовые поля, списки и др.
WPF — Свойства и привязка
DependencyProperty
Поймем, как работают зависимые свойства и их преимущества в WPF.
Routed Events
Изучим маршрутизируемые события и способы их обработки.
Data Binding
Научимся связывать данные между интерфейсом и логикой приложения.
Конвертеры значений
Разберем, как преобразовывать данные при привязке с помощью конвертеров.
ObservableCollection
Изучим коллекцию с уведомлениями об изменениях для динамических списков.
WPF — Стили и шаблоны
Ресурсы и стили в WPF
Поймем, как использовать ресурсы для переиспользования элементов интерфейса.
Преобразования в WPF
Подробное руководство по Transform-классам в Windows Presentation Foundation.
Триггеры
Разберем, как менять поведение и внешний вид элементов с помощью триггеров.
Темы и ResourceDictionary
Изучим создание тем для приложения и использование словарей ресурсов.
Анимации в WPF
Изучите различные виды анимаций в WPF Storyboard, их применение и лучшие практики для создания плавных и эффектных переходов.
WPF — MVVM и архитектура
MVVM основы
Познакомимся с паттерном MVVM и его ролью в разделении логики и интерфейса.
Команды (ICommand)
Изучим реализацию команд для обработки действий пользователя.
View и ViewModel
Разберем взаимодействие представления и модели представления в MVVM.
Dependency Injection
Познакомимся с внедрением зависимостей для гибкости архитектуры.
C# — Основы
Введение в C#
Ознакомимся с языком C#, его особенностями и инструментами разработки.
Переменные и типы
Изучим базовые типы данных и работу с переменными в C#.
Операторы
Разберем арифметические, логические и условные операторы.
Циклы и Массивы
Научимся использовать циклы для повторения действий в коде.
Методы
Познакомимся с методами, перегрузкой и параметрами.
C# — ООП
Классы и объекты
Изучим, как создавать и использовать классы и объекты в C#.
Конструкторы и деструкторы
Разберем методы инициализации и очистки объектов.
Свойства
Научимся работать с геттерами и сеттерами для управления данными объектов.
Инкапсуляция
Познакомимся с принципом для защиты данных и управления доступом.
Наследование
Познакомимся с принципом наследования для повторного использования кода.
Полиморфизм
Изучим возможность объектов вести себя по-разному в зависимости от контекста.
Абстракция и интерфейсы
Разберем способы создания абстрактных классов и интерфейсов для гибкости кода.
C# — Продвинутое
Исключения
Научимся обрабатывать ошибки и использовать конструкции try-catch-finally.
Делегаты и события
Изучим делегаты, события и их применение для обработки действий пользователя.
Лямбда-выражения
Познакомимся с компактной записью функций с помощью лямбда-выражений.
LINQ
Разберем язык запросов для удобной работы с коллекциями данных.
Generics и коллекции
Изучим обобщенные типы для создания универсального кода.
Асинхронность: async/await
Изучим механизмы многозадачности и параллельного программирования.
C# — Работа с данными
Основы работы с данными в C#
Поговорим о видах хранения данных, потоках и сериализации.
Работа с файлами: File, FileInfo, Directory
Научимся читать, записывать и управлять файлами и папками.
Потоки ввода-вывода
Разберем Stream, StreamReader, StreamWriter и FileStream.
Бинарные файлы
Познакомимся с BinaryReader и BinaryWriter для работы с бинарными данными.
Формат CSV
Изучим работу с табличными данными в формате CSV.
Работа с XML
Рассмотрим XmlDocument, XDocument и LINQ to XML.
Работа с JSON
Научимся использовать System.Text.Json и Newtonsoft.Json.
Введение в базы данных
Разберем основы SQL и отличия между SQLite и SQL Server.
ADO.NET: подключение к базе
Подключимся к базе данных и выполним простые запросы.
SQL-запросы из C#
Вставка, обновление и удаление данных с защитой от SQL Injection.
Entity Framework Core: основы
Познакомимся с ORM, DbContext и миграциями.
Запросы в Entity Framework
Используем LINQ для работы с данными через EF Core.
Миграции и управление схемой
Создание и применение миграций, добавление seed-данных.
LINQ to Objects и LINQ to SQL
Разберем различия IEnumerable и IQueryable и оптимизацию запросов.
Паттерны работы с данными
Изучим Repository и Unit of Work для организации слоя данных.
Оптимизация и Рефакторинг
Основы рефакторинга и оптимизации
Познакомимся с концепциями рефакторинга и оптимизации, научимся различать их и применять базовые принципы чистого кода.
Профилирование и диагностика производительности
Научимся использовать инструменты профилирования, выявлять узкие места и анализировать производительность приложения.
Оптимизация UI и привязок в WPF
Разберем методы оптимизации интерфейса, виртуализацию, deferred rendering и эффективное использование binding.
Асинхронность и управление памятью
Изучим async/await, многопоточность, предотвращение утечек памяти и работу с IDisposable.
Оптимизация работы с данными
Научимся оптимизировать запросы LINQ и Entity Framework, использовать ленивую загрузку и кэширование для повышения производительности.
Паттерны, архитектура и чек-лист оптимизации
Разберем паттерны рефакторинга, архитектурные подходы к масштабируемости и составим практический чек-лист оптимизации кода.
API — основы (C#)
Что такое API?
Разберем, что представляет собой интерфейс программирования приложений и зачем он нужен в современной разработке.
Типы API
Изучим различия между REST, SOAP, GraphQL и другими типами API, их особенности и применение.
Работа с REST API в C#
Научимся отправлять запросы и получать данные с помощью HttpClient, обрабатывать JSON-ответы и использовать API в приложении.
Создание собственного API в ASP.NET
Пошагово создадим простое REST API на ASP.NET Framework и подключим его к клиентскому приложению.
Авторизация и безопасность API
Разберем, как защищать API при помощи ключей, токенов и JWT-аутентификации, а также как скрывать чувствительные данные.