Програмування на C# (20483)

Программа курса

Модуль 1. Обзор синтаксиса Visual C #.

Microsoft .NET Framework версии 4.7 предоставляет комплексную платформу разработки, которую можно использовать для создания, развертывания и управления приложениями и службами. Используя .NET Framework, вы можете создавать визуально привлекательные приложения, обеспечивать беспрепятственную связь через границы технологий и обеспечивать поддержку широкого спектра бизнес-процессов. В этом модуле вы узнаете о некоторых основных функциях, предоставляемых .NET Framework и Microsoft Visual Studio. Вы также узнаете о некоторых основных конструкциях Visual C #, которые позволят вам начать разработку приложений .NET Framework.

Уроки

  • Обзор написания приложения с использованием Visual C #
  • Типы данных, операторы и выражения
  • Конструкции языка программирования Visual C #

Лабораторная работа:

  • Реализация функции редактирования для списка студентов.
  • Реализация функции вставки для списка студентов
  • Реализация функции удаления для списка студентов
  • Отображение возраста учащегося

После завершения этого модуля студенты смогут:

  • • Описывать архитектуру приложений .NET Framework и функции, предоставляемые Visual Studio 2017 и Visual C #.
  • • Использовать базовые типы данных Visual C #, операторы и выражения.
  • • Использовать стандартные конструкции Visual C #.

Модуль 2: Создание методов, обработка исключений и мониторинг приложений.

Приложения часто состоят из логических функциональных единиц, которые выполняют определенные функции, такие как предоставление доступа к данным или запуск некоторой логической обработки. Visual C # является объектно-ориентированным языком и использует концепцию методов для инкапсуляции логических единиц функциональности. Метод может быть сколь угодно простым или сложным, поэтому важно учитывать, что происходит с состоянием вашего приложения, когда в методе возникает исключение. В этом модуле вы узнаете, как создавать и использовать методы и как обрабатывать исключения. Вы также узнаете, как использовать ведение журнала и трассировку для записи сведений о любых возникающих исключениях.

Уроки

  • Создание и вызов методов
  • Создание перегруженных методов и использование дополнительных и выходных параметров
  • Обработка исключений
  • Приложения для мониторинга

Лабораторная работа:

  • Расширение функциональных возможностей приложения для регистрации в классе.
  • Рефакторинг кода регистрации
  • Проверка информации о студенте
  • Сохранение изменений в списке классов

После завершения этого модуля студенты смогут:

  • • Создавать и вызывать методы.
  • • Создавать перегруженные методы и использовать необязательные параметры.
  • • Совершать обработку исключений.
  • • Совершать мониторинг приложений с помощью ведения журнала, трассировки и профилирования.

Модуль 3. Основные типы и конструкции Visual C #.

Чтобы создавать эффективные приложения с помощью Windows Presentation Foundation (WPF) или других платформ .NET Framework, необходимо сначала изучить некоторые базовые конструкции Visual C #. Вам нужно знать, как создавать простые структуры для представления элементов данных, с которыми вы работаете. Вам нужно знать, как организовать эти структуры в коллекции, чтобы вы могли добавлять элементы, извлекать элементы и перебирать их. Наконец, вам нужно знать, как подписаться на события, чтобы вы могли реагировать на действия ваших пользователей. В этом модуле вы узнаете, как создавать и использовать структуры и перечисления, организовывать данные в коллекции, а также создавать события и подписываться на них.

Уроки

  • Реализация структур и перечислений
  • Организация данных в коллекции
  • Обработка событий

Лабораторная работа:

  • Написание кода для приложения-прототипа Grades.
  • Добавление логики навигации в приложение прототипа оценок
  • Создание типов данных для хранения информации о пользователях и оценках
  • Отображение информации о пользователях и оценках

После завершения этого модуля студенты смогут:

  • • Создавать и использовать структуры и перечисления.
  • • Использовать классы коллекций для организации данных.
  • • Создавать события и подписывайтесь на них.

Модуль 4: Создание классов и реализация типизированных коллекций.

В этом модуле вы узнаете, как использовать интерфейсы и классы для определения и создания собственных настраиваемых многоразовых типов. Вы также узнаете, как создавать и использовать перечислимые типобезопасные коллекции любого типа.

Уроки

  • Создание классов
  • Определение и реализация интерфейсов
  • Реализация типизированных коллекций

Лабораторная работа:

  • Добавление проверки данных и безопасности типов в приложение.
  • Внедрение структур учителя, ученика и оценок в качестве классов
  • Добавление проверки данных в класс оценки
  • Отображение студентов в порядке имен
  • Предоставление учителям возможности изменять данные об уроках и оценках

По завершении этого модуля вы сможете:

  • Создавать классы и создавайте их экземпляры.
  • Создавать и инстанцировать интерфейсы.
  • Использовать универсальные шаблоны для создания типизированных коллекций.

Модуль 5: Создание иерархии классов с помощью наследования.

В этом модуле вы узнаете, как использовать наследование для создания иерархий классов и расширения типов .NET Framework.

Уроки

  • Создание иерархии классов
  • Расширение классов .NET Framework

Лабораторная работа:

  • Реорганизация общей функциональности в пользовательский класс
  • Реализация сложности пароля с помощью абстрактного метода
  • Создание настраиваемого исключения ClassFullException

По завершении этого модуля вы сможете:

  • Создавать базовые классы и производные классы с помощью наследования.
  • Создавать классы, наследуемые от классов .NET Framework.

Модуль 6: Чтение и запись локальных данных.

В этом модуле вы узнаете, как читать и записывать данные с помощью операций ввода-вывода транзакционной файловой системы, как сериализовать и десериализовать данные в файловую систему, а также как читать и записывать данные в файловую систему с помощью потоков.

Уроки

  • Чтение и запись файлов
  • Сериализация и десериализация данных
  • Выполнение ввода-вывода с использованием потоков

Лабораторная работа: Создание отчета об оценках.

  • Сериализация данных для отчета об оценках в формате XML
  • Предварительный просмотр отчета об оценках
  • Сохранение сериализованных данных об оценках в файл

По завершении этого модуля вы сможете:

  • Совершать чтение и запись данных в файловую систему и из файловой системы с помощью файлового ввода-вывода.
  • Преобразовать данные в формат, который может быть записан или прочитан из файла или другого источника данных.
  • Использовать потоки для отправки и получения данных в или из файла или источника данных.

Модуль 7: Доступ к базе данных.

В этом модуле вы узнаете, как создавать и использовать модели данных сущностей (EDM) и как запрашивать многие типы данных с помощью языкового интегрированного запроса (LINQ).

Уроки

  • Создание и использование моделей данных сущностей
  • Запрос данных с помощью LINQ

Лабораторная работа: Получение и изменение данных об оценках.

  • Создание модели данных сущности из базы данных Школы изящных искусств
  • Обновление данных об учениках и оценках с помощью Entity Framework
  • Расширение модели данных сущности для проверки данных

По завершении этого модуля вы сможете:

  • Создавать, использовать и настраивать EDM.
  • Запросить данные с помощью LINQ.

Модуль 8: Доступ к удаленным данным.

В этом модуле вы узнаете, как использовать классы запросов и ответов в пространстве имен System.Net для прямого управления удаленными источниками данных. Вы также узнаете, как использовать службы данных Windows Communication Foundation (WCF) для предоставления и использования модели данных сущности (EDM) через Интернет.

Уроки

  • Доступ к данным через Интернет
  • Доступ к данным с помощью подключенных служб OData

Лабораторная работа: Удаленное получение и изменение данных об оценках.

  • Создание службы данных WCF для базы данных SchoolGrades
  • Интеграция службы данных в приложение
  • Получение фотографий студентов через Интернет (если позволяет время)

По завершении этого модуля вы сможете:

  • Отправлять данные и получайте данные из веб-служб и других удаленных источников данных.
  • Получать доступ к данным с помощью служб данных WCF.

Модуль 9: Проектирование пользовательского интерфейса для графического приложения.

В этом модуле вы узнаете, как использовать Extensible Application Markup Language (XAML) и Windows Presentation Foundation (WPF) для создания привлекательных пользовательских интерфейсов.

Уроки

  • Использовать XAML для разработки пользовательского интерфейса
  • Привязівать элементы управления к данным

Лабораторная работа: Настройка фотографий студентов и стилизация приложения.

  • Настройка внешнего вида студенческих фотографий
  • Стилизация представления входа в систему
  • Анимация элемента управления StudentPhoto (если позволяет время)

По завершении этого модуля вы сможете:

  • Использовать XAML для разработки пользовательского интерфейса.
  • Привязывать элемент управления XAML к данным.
  • Применять стили к пользовательскому интерфейсу XAML.

Модуль 10: Повышение производительности и отзывчивости приложений.

В этом модуле вы узнаете, как повысить производительность своих приложений, распределяя операции по нескольким потокам.

Уроки

  • Реализация многозадачности
  • Асинхронное выполнение операций
  • Синхронизация одновременного доступа к данным

Лабораторная работа: Повышение скорости отклика и производительности приложения.

  • Обеспечение того, чтобы пользовательский интерфейс оставался отзывчивым при получении данных учителя
  • Обеспечение визуальной обратной связи во время длительных операций

По завершении этого модуля вы сможете:

  • Использовать библиотеку параллельных задач для реализации многозадачности.
  • Выполнять длительные операции без блокировки потоков.
  • Управлять одновременным доступом нескольких потоков к ресурсам.

Модуль 11: Интеграция с неуправляемым кодом.

В этом модуле вы узнаете, как взаимодействовать с неуправляемым кодом в ваших приложениях и как гарантировать, что ваш код освобождает любые неуправляемые ресурсы.

Уроки

  • Создание и использование динамических объектов
  • Управление временем жизни объектов и управление неуправляемыми ресурсами

Лабораторная работа: Обновление отчета об оценках.

  • Создание отчета об оценках с помощью Word
  • Управление временем жизни объектов Word путем реализации шаблона удаления

По завершении этого модуля вы сможете:

  • Интегрировать неуправляемый код в приложение Microsoft Visual C # с помощью среды выполнения динамического языка (DLR).
  • Контролировать время жизни неуправляемых ресурсов и убедитесь, что ваше приложение освобождает ресурсы.

Модуль 12: Создание многоразовых типов и сборок.

В этом модуле вы узнаете, как использовать существующие сборки с помощью отражения и как добавлять дополнительные метаданные к типам и членам типов с помощью атрибутов. Вы также узнаете, как сгенерировать код во время выполнения, используя объектную модель документа кода (CodeDOM), и как гарантировать, что ваши сборки подписаны и версированы, а также доступны для других приложений с помощью глобального кэша сборок (GAC).

Уроки

  • Изучение метаданных объекта
  • Создание и использование настраиваемых атрибутов
  • Генерация управляемого кода
  • Управление версиями, подписание и развертывание сборок

Лабораторная работа: Указание данных для включения в отчет об оценках.

  • Создание и применение атрибута IncludeInReport
  • Обновление отчета
  • Централизованное хранение сборки Grades.Utilities (если позволяет время)

По завершении этого модуля вы сможете:

  • Использовать отражение для проверки и выполнения сборок.
  • Создавать и использовать настраиваемые атрибуты.
  • Создавать управляемый код во время выполнения с помощью CodeDOM.
  • Создавать версии, подпись и развертывание ваших сборок в GAC.

Модуль 13: Шифрование и дешифрование данных.

В этом модуле вы узнаете, как реализовать симметричное и асимметричное шифрование и как использовать хэши для создания математических представлений ваших данных. Вы также узнаете, как создавать сертификаты X509 и управлять ими, а также как использовать их в процессе асимметричного шифрования.

Уроки

  • Реализация симметричного шифрования
  • Реализация асимметричного шифрования

Лабораторная работа: Шифрование и дешифрование отчета об оценках.

  • Шифрование отчета об оценках
  • Шифрование отчета об оценках

По завершении этого модуля вы сможете:

  • Зашифровать данные с помощью симметричного шифрования.
  • Зашифровать данные с помощью асимметричного шифрования.