Академия BelHard
Курс
«Программирование на .NET с нуля»
Старт: 15 октября, 2019
18:30 – 21:30 (вт/чт)
16 занятий
Место проведения:
ул. Мельникайте, д. 2
Курс
«Программирование на .NET с нуля»
Старт: 15 октября, 2019
18:30 – 21:30 (вт/чт)
16 занятий
Место проведения:
ул. Мельникайте, д. 2
Этот курс для вас, если:
Вы видите перспективы в активно растущем IT-рынке и хотели бы работать в этой сфере.
Вы видите возможность оптимизировать определенные задачи, написав свою программу.
Вам нравятся игры и хотели бы попробовать создать что-то свое.
Кто такой
.
NET разработчик ?
Это специалист, который использует в своей работе платформу .NET - обширный набор инструментов и технологий, тесно связаных между собой, которые позволяют эффективно писать на языке C# как небольшие программы для учебы и дома, так и крупные коммерческие продукты. Платформа .NET была создана и активно развивается гигантом в сфере информационных технологий — компанией Microsoft.
Сегодня платформа .NET позволяет писать не только программы под Windows, но и под остальные основные операционные системы (.NET Core), сайты (ASP.NET, Blazor), мобильные приложения (Xamarin), игры (Unity 3D).

Ценность .NET разработчиков в индустрии

По причине массового распространения операционной системы WIndows, специалисты C# занимали уверенное положение на рынке годами, но язык и платформа .NET были ориентированы только на семейство операционных систем Microsoft Windows. Благодаря переменам в руководстве был сделан упор на облачные технологии и кросс-платформенность. Это позволило расширить сферы применения платформы и языка, перенести компетенцию на другие устройства и операционные системы. Благодаря этому, в последние годы зарплаты .NET разработчиков имеют стабильный тренд на рост от года в год.
Ценность .NET разработчиков в индустрии
По причине массового распространения операционной системы WIndows, специалисты C# занимали уверенное положение на рынке годами, но язык и платформа .NET были ориентированы только на семейство операционных систем Microsoft Windows. Благодаря переменам в руководстве был сделан упор на облачные технологии и кросс-платформенность. Это позволило расширить сферы применения платформы и языка, перенести компетенцию на другие устройства и операционные системы. Благодаря этому, в последние годы зарплаты .NET разработчиков имеют стабильный тренд на рост от года в год.
Что необходимо, чтобы стать
.NET разработчиком?
1
Иметь навык в любом языке, поддерживаемом платформой .NET (самым популярным является C#).
2
Понимать принципы работы языка, платформы и среды исполнения, уметь писать эффективные алгоритмы и бизнес-процессы под конкретные задачи.
3
Обладать навыком работы с хранилищами данных: базы данных, файловые системы, in-memory хранилища (кэш), браузерные хранилища.
4
Понимание OOP, OOD, SOLID, DRY, KISS, YAGNI, etc.
5
Иметь желание постоянно развиваться, самосовершенствоваться, изучать новое и увеличивать экспертизу в своих текущих используемых технологиях.

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

1. Основы С#.
Компьютерные основы.
  • Разрядность процессоров.
  • Разрядность операционных систем.
  • Часто встречающиеся файловые системы, их отличия и ограничения
Основные термины и понятия.
  • .NET - фреймворк, а не язык.
  • CLI, CIL, CLR.
  • Основной инструментарий разработчика.
  • Лексические основы языка и основные расширения файлов.
  • Hello, World!
  • Метод Main.
  • С# Interactive Window.
Типы данных.
  • Типизация - плюсы и минусы.
  • Значимые типы.
  • Ссылочные типы.
  • Устройство памяти, хранение значимых и ссылочных типов данных.
  • Влияние разрядности операционной системы на размерность типов.
  • Платформенные и языковые типы данных.
  • Боксинг/анбоксинг.
  • Приведение типов и отличие способов.
  • Метод typeof, конструкция «object» is «type».
  • Парсинг данных других типов.
Переменные.
  • Инициализация переменных.
  • Нейминг-конвенции (правила именования).
Операторы языка.
  • Присваивание.
  • Сравнение.
  • Логические.
  • Арифметические.
  • Унарные.
  • Тернарные.
  • Условные.
  • Объединяющие.
  • Операторы доступа.
  • Особенности работы операторов сравнения со строками.
2. Логика приложений и взаимодействие с данными.
Работа с консолью приложения.
  • Вывод данных.
  • Ввод данных.
  • Запуск приложения и его стартовые аргументы.
Условные операторы.
  • If, if-else, if-else-if.
  • Switch.
  • truthly/falsely.
  • Вложенные условные операторы и частые ошибки при их использовании.
Массивы и перечисляемые типы.
  • Одномерные массивы.
  • Многомерные массивы.
Циклы.
  • while, do while.
  • for.
  • Вложенные циклы и частые ошибки при работе с ними.
Пространства имен и зависимости.
Классы.
  • Основные члены классов.
  • Конструктор.
  • Отличие var, const, readonly, static.
  • Модификаторы доступа.
  • Геттеры и сеттеры.
  • Методы, сигнатуры и перегрузки.
  • Опциональные аргументы методов.
  • Выходные параметры out и ref.
  • Области видимости переменных.
  • Ссылка this.
  • Абстрактные классы и интерфейсы.
  • Наследование.
  • Создание копий объектов классов.
  • Сравнение объектов классов - GetHashCode и IComparable.
  • Жизненный цикл и IDisposable, конструкция using.
3. Концепции разработки и упрощение взаимодействия с данными.
Best-practices.
  • SOLID.
  • Принцип единой ответственности (S из SOLID).
  • KISS.
  • YAGNI.
  • Рефакторинг, преждевременный рефакторинг и чрезмерный рефакторинг.
  • Консистентность.
  • Нейминг-конвенции методов и объектов в системе.
NuGet пакеты и NPM.
Дата и время.
Строки.
  • Сравнение.
  • StringBuilder.
  • Строковая интерполяция.
Многопоточность и асинхронность.
  • Базовые отличия асинхронности, многопоточности и параллельного программирования.
  • lock.
  • Task, async-await.
Дженерики (обобщенные типы).
Перечисляемые типы данных, коллекции, словари.
  • Основные типы IEnumerable.
  • Enum.
  • Dictionary.
  • KeyValuePair.
  • Итераторы.
  • Потокобезопасные коллекции.
  • LINQ.
  • Агрегатные функции при работе с коллекциями и массивами.
Исключения.
  • Стандартные типы исключений.
  • Клиентские исключения.
  • Конструкция try-catch.
  • StackTrace - его польза и правильная работа с ним.
4. Работа с локальными данными.
Сериализация и основные форматы данных.
  • JSON
  • XML
  • Сериализация/Десериализация
Работа с файлами.
  • Типы File и FileStream.
  • Запись данных.
  • Чтение данных.
  • Асинхронная работа с файлами.
5. Работа с внешними данными.
Базы данных.
  • Основы баз данных и их типизация.
  • Нормализация и денормализация баз.
  • ADO.NET.
  • ORM на примере Entity Framework.
  • Валидационные атрибуты.
Сетевые запросы.
  • Краткий обзор модели передачи данных OSI.
  • Прикладные протоколы HTTP и HTTPS.
  • Транспортные протоколы TCP и UDP.
  • Уровни доменов.
  • Основные типы HTTP запросов.
  • Кодировка.
  • Чтение и запись данных запроса.
  • Основные коды ответов серверов.
6. Advanced.
Логгирование на примере nlog.
Библиотеки классов (DLL).
Комментарии, аннотации и TODO.
Расширения.
MemoryStream и его применение.
Интернирование строк.
Внедрение зависимостей.
Шифрование и хэширование.

  • Основные виды и их разница.
  • Симметричное шифрование AES (Rijndael).
Использование StopWatch и PerformanceCounter для измерения производительности приложения.
Делегаты.
Регулярные выражения.
Новое в C#.

  • Tuple.
  • Lambda.
  • Predicate.
  • Discard.
  • Локальные функции.
Ближайший старт
Старт
15 октября, 2019
Время занятий
18:30 – 21:30 (вт/чт)
Стоимость
690 BYN
Длительность
16 занятий
Опыт работы в IT сфере – более 8 лет
Илья Бегун
Образование: Московский Технологический Институт, специальность «Программные комплексы электронно-вычислительных машин», бакалавр.
Работал программистом в стэке .NET в таких компаниях, как Тинькофф Банк (Москва), ITransition (Минск), на текущий момент является Full-Stack .NET разработчиком в EPAM Systems в Минске.
Среди компаний, над чьими проектами работал, были:
- один из крупнейших в мире производителей алкоголя,
- один из сотовых операторов США,
- компания лидер в сфере сетевой безопасности для образовательных учреждений в Соединенном Королевстве,
- образовательный медицинский проект крупной британской медийной компании,
- один из крупнейших в мире интеграторов служб наземной почты,
- сервис для автоматизации звонков с применением технологии Text-to-Speech на базе сервера телефонии Asterisk.
Активный участник .NET Community. Проходит сертификацию для Microsoft Certified Solutions Associate (MCSA: Web-Applications), Microsoft Certified Software Developer (MCSD: App Builder) и Microsoft Certified: Azure Developer Associate.

Преподаватель
Остались вопросы?
Мы ответим на любой!
Академия BelHard:
Отдел по работе с клиентами:
+375 (44) 546 54 54

+375 (29) 546 54 54

Отдел маркетинга и рекламы:
+375 (29) 123 30 08


E-mail: it-academy@belhard.com
Администрация, учебные классы:
г. Минск, пер. 4-ый Загородный, д. 56а (ст.м. Молодежная)
Учебные классы:
г. Минск, ул. Мельникайте, д. 2 (ст.м. Фрунзенская)