Курс C# /.NET Pro

Старт обучения
Дату уточните у администрации
81 час. по 2-3 раза в неделю

Описание курса

С помощью C# создаются отличные приложения для Windows, мобильные приложения, веб-приложения, игры. И неудивительно, ведь C# — один из самых распространенных языков разработки. При этом авторство языка принадлежит Microsoft, поэтому в спросе на него сомневаться не приходится — язык пользуется отменной поддержкой комьюнити.

 

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

После курса вы сможете:

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

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

1. Знакомство с платформой .NET и языком программирования C#

  • Обзор платформы .NET Framework
  • Знакомство c языком C#
  • Обзор возможностей языка
  • Знакомство c IDE Visual Studio
  • Структура программы.
  • Компиляция программы
  • Написание первой программы
  • Типы проектов

2. Типы данных

  • Устройство памяти в компьютере
  • Системы счисления
  • Как хранятся данные в памяти
  • Понятие переменной
  • Типы переменных
  • Создание и инициализация переменных.
  • Область видимости
  • Константы
  • Операции над базовыми типами

3. Условные конструкции

  • Понятие условных конструкций
  • Условная конструкция if
  • Оператор многозначного выбора switch…case

4. Основы работы с системой

контроля версий


5. Циклические конструкции

  • Знакомство с циклами
  • Цикл с предусловием while
  • Цикл с постусловием do…while
  • Цикл со счетчиком for

6. Методы

  • Понятие метода
  • Создание метода
  • Вызов метода
  • Виды методов с параметрами и без
  • Модификаторы out и ref
  • Рекурсия
  • Метод Main

7. Массивы

  • Понятие массивов и необходимость их использования
  • Способы создания массивов
  • Работа с массивами
  • Многомерные массивы
  • Зубчатые массивы

8. Введение в объектно-ориентированное программирование

  • Понятие класса и объекта
  • Создание классов, их содержимое
  • Создание объектов с помощью классов
  • Модификаторы доступа
  • Работа со свойствами
  • Автоматически реализуемые свойства
  • Конструкторы пользовательские и по умолчанию
  • Частичные классы и методы

9. Наследование и полиморфизм

  • Понятие наследования
  • Реализация наследования
  • Базовый тип Object
  • Upcast и DownCast
  • Понятие и реализация полиморфизма
  • Виртуальные методы

10. Абстракция и интерфейсы

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

11. Статические классы и методы

  • Создание и вызов статических методов
  • Работа со статическими методами
  • Создание статических классов
  • Необходимость в статических классах
  • Расширяющие методы

12. Структуры. Перечисления

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

13. Исключительные ситуации

  • Понятие исключительных ситуаций
  • Обработка исключений, конструкция try, catch, finally
  • Создание своих классов исключений
  • Множественная обработка исключений

14. Сборщик мусора


15. Коллекции

  • Основные типы сложных структур данных: список, очередь, стек, словарь, множество
  • Интерфейсы, которые поддерживаются различными коллекциями
  • Инициализаторы коллекций
  • Создание пользовательских коллекций

16. Обобщения

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

17. Делегаты, события, лямбда-выражения

  • Понятие делегата
  • Объявление делегатов
  • Анонимные методы
  • Лямбда-выражения
  • События

18. LINQ

  • Стандартные операции запросов. Фильтрация. Сортировка.
  • Группировка
  • Анонимные и динамические типы
  • Подключение к базе данных
  • LINQ to SQL

19. EntityFramework

  • Подключение Nuget-пакетов к проекту
  • Основы работы с БД
  • Подключение БД к проекту
  • Создание миграций

20. Ввод-вывод. Сериализация. XML

  • Библиотека System.IO
  • Работа с JSON
  • Понятие сериализации. Сериализация в JSON
  • Реализация собственных методов для сериализации

21. Сборки, пространства имен, атрибуты, директивы препроцессора, рефлексия

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

22. Потоки, задачи, синхронизация

  • Проблема распределенных вычислений, многоядерности
  • Асинхронные Делегаты
  • Классы Thread, Task
  • Проблемы, возникающие при параллельных вычислениях
  • Классы отвечающие за синхронизацию

23. .NET Core

  • Обзор возможностей
  • Основы WEB-разработки
  • Создание приложения

24. Unit-тестирование

  • Unit Testing Framework
  • Тестирование закрытых и статических методов
  • Тестирование корректной работы бизнес-логики
  • Интеграционные тесты

25. Сдача проектов

  • Обсуждение результатов

26. Как составить резюме и пройти собеседование

  • Структура резюме
  • Часто задаваемые вопросы
  • Как вести себя на собеседовании
  • Основные ошибки на собеседовании
  • Урок английского языка №1
  • Урок английского языка №2
  • Урок поиска работы

Минимальные требования:

  • Вы изучили Основы программирования и теперь хотите погрузиться в направление C#
  • Вы работаете в другой сфере, но хотите обрести перспективную IT-профессию
  • Вы занимаетесь разработкой, но хотите расширить поле своих знаний
  • Вы — QA-специалист, которому нужен язык для автоматизации тестирования

Лекторы:


Курс C# /.NET Pro в Ташкенте

* Указанные скидки не суммируются с другими действующими акциями и специальными предложениями. Если у Вас возникли вопросы, обращайтесь за консультацией к нашим менеджерам!

spinner-it