Модуль 1. Введение C# и .NET Framework.
- Обзор .NET framework, как начать строить приложение NET Framework с помощью C# и Visual Studio 2010.
- Лабораторная работа.
Модуль 2. Использование программных конструкций C#.
- Введение в синтаксис языка программирования C# и базовые типы данных и конструкций.
- Лабораторная работа.
Модуль 3. Объявление и вызов методов.
- Введение понятия метода и описание метода как единицы кода, предназначенная для выполнения дискретной части работы.
- Способы объявления и вызова методов с помощью C#.
- Лабораторная работа.
Модуль 4. Обработка исключений.
- Значимость обработки исключения и объяснение, почему приложения должны разрабатываться с учетом обработки исключения.
- Способы эффективной обработки исключений в приложениях и генерации исключений в методах для диагностики ошибки в коде.
- Лабораторная работа.
Модуль 5. Чтение и файлы записи.
- Чтение и запись файлов с помощью классов в .NET framework.
- Различные подходы, способы чтения и записи различных форматов данных.
- Лабораторная работа.
Модуль 6. Создание новых типов.
- Создание собственных типов, моделирующих объекты в реальном мире и реализующих предметную логику в соответствии с требованиями.
- Различие между ссылочными и значимыми типами.
- Лабораторная работа.
Модуль 7. Инкапсуляция данных и методов.
- Использование модификаторов доступа к членам типа для инкапсуляции.
- Определение статического модификатора для членов которые могут использоваться совместно всеми экземплярами одного типа.
- Лабораторная работа.
Модуль 8. Наследование от классов и реализации интерфейсов.
- Наследование как ключевая концепция объектно ориентированного программирования.
- Использование наследования, интерфейсов и абстрактных классов для разработки иерархии объектов.
- Определения контрактов для функций, которые должны предоставляться классом.
- Реализация по умолчанию в базовом абстрактном типе.
- Лабораторная работа.
Модуль 9. Управление временем жизни объектов и контроль ресурсов.
- Управление ресурсами и их освобождение при завершении их использования.
- Работа сборщика мусора относительно неуправляемых ресурсов, действия для освобождения ресурсов.
- Лабораторная работа.
Модуль 10. Инкапсуляция данных и перегрузка операторов.
- Использование свойств и индексаторов для инкапсуляции состояния и представление данных в требуемом формате и эффективно.
- Реализация операторов для типов с помощью перегрузки.
- Лабораторная работа.
Модуль 11. Отделение методов и обработка событий.
- Отделение операции из метода, который его реализует, использование анонимных методов для реализации несвязанных операций.
- Использование событий для сообщения об изменениях или значимом явлении.
- Лабораторная работа.
Модуль 12. Использование коллекций и создание обобщенных типов.
- Концепция коллекции классов и их использование их с большей гибкостью, чем простой массив.
- Обобщения (шаблоны) и их использование обеспечения целостности и безопасности типа.
- Лабораторная работа.
Модуль 13. Создание классов коллекций с перечислением.
- Использование классов коллекций из библиотеки базовых классов .NET Framework.
- Создание пользовательской коллекции классов.
- Лабораторная работа.
Модуль 14. Использование LINQ для запроса данных.
- Использование LINQ для запроса данных.Встроенные методы расширения и операторов запросов.
- Способы динамического построения запросов LINQ с помощью деревьев выражений.
- Лабораторная работа.
Модуль 15. Интеграция с динамическим языком и компонентами COM.
- Вызов кода и компонентов, которые были написаны с помощью других языков из кода C#.
- Использование среды выполнения динамического языка (DLR) для повторно использования кода языков сценариев, таких как Ruby и Python.
- Способ вызова COM-компонентов в приложение C#.
- Лабораторная работа.