Основний курс .NET (C#)

Де: online

Коли: 15 Лют з 19:00 до 21:00 (пн, ср)

Тривалість: 20 занять

Вартість: 4900 грн*

*Early bird: 4900 грн (до 11.01)
Standart: 6000 грн (до 08.02)
Last chance: 6600 грн

Можливий варіант оплати 50/50:
3300 грн до початку навчання,
3300 грн до початку другого місяця навчання

Основний курс .NET (C#) орієнтований на отримання практичних навичок розробки веб-застосунків.

Протягом перших занять ви заглибитеся у особливості використання .NET платформи, щоб далі розробляти веб-проект. Разом із тренером ви створите моделі і логіку для зберігання даних в реляційній базі MS SQL, навчитеся працювати з ADO.NET та Entity Framework. Далі крок за кроком ви розроблятимете сайт, який дозволить його користувачу працювати з даними.

Під час навчання ви працюватимете із ASP.NET Core MVC і Razor. А ще ви покриєте свій  проект модульними тестами (Unit Tests). Таким чином, до кінця курсу, ви матимете  працюючий веб-проект та знання з розробки веб-застосунків.

ПРОГРАМА

Курс складається з 20 занять та триватиме 2,5 місяці.

Під час онлайн зустрічей студенти нарощуватимуть необхідні практичні навички з розробки  власного веб-застосунку. Теоретичний матеріал опрацьовуватиметься учасниками самостійно. Щоразу тренер видаватиме студентам нове домашнє завдання.

Заняття 1 Вступ

Після знайомства з учасниками перейдемо до вивчення Git – розподіленої системи керування версіями файлів і командної роботи, щоб далі використовувати її для практичних завдань.

Заняття 2 Структури даних, колекції та узагальнення (Generics)

Почнемо працювати з Visual Studio 2019 community – середовищем розробки C# програміста. Розберемо основні типи складних структур даних: список, черга, стек, словник. Навчимося створювати власну колекцію і використовувати оператор yield. Розглянемо узагальнення, як спосіб уникнути помилок виконання і збільшення швидкодії програми.

Заняття 3 Делегати, події, лямбда-вирази, методи розширення(Extensions)

Розберемо поняття делегата і події. Навчимося використовувати анонімні методи і лямбда-вирази. Застосуємо делегати Action, Predicate, Func. Розробимо власні методи розширення.

Заняття 4 LINQ

Розберемо типи LINQ. Навчимося працювати з багатьма функціями, до яких надає доступ LINQ: сортування, пошук елементів.

Заняття 5 XML + Serialization

Напишемо код для зчитування інформації з xml файлу в об’єктну модель класів. Згодом напишемо код для збереження стану об’єктної моделі класів в xml файл. Розберемося як працює серіалізація: Json, Xml, Binary.

Заняття 6 ADO.NET

Огляд ADO.NET. Налаштуємо доступ до бази даних і виконаємо кілька команд. Необхідно буде реалізувати методи зчитування, вставки, редагування і видалення записів з бази даних. Розберемося, що таке SqlParameters і як влаштована конвертація типів між .NET i SQL. Попрактикуємося у використанні транзакцій.

Заняття 7 Багатопотокове програмування

Розглянемо, що таке процес і потік і для чого є ThreadPool. Навчимося запускати потоки і їх синхронізувати.

Заняття 8 Асинхронне програмування

Продовжимо попереднє заняття і розглянемо, як обробляти помилки (Exceptions). Переваги використання класу Task і конструкції acync await.

Заняття 9 Практичне заняття з асинхронного програмування

На практиці закріпимо вивчений матеріал.

Заняття 10 Огляд ASP.NET Core

Почнемо наше знайомство з платформою для розробки веб застосунків ASP.NET Core. Конфігурація, Middleware.

Заняття 11 ASP.NET Core Web.Api

Розберемо архітектуру ASP.NET Core Web.Api. І такі речі як: Routing, Model Binding, Http Status Codes.

Заняття 12 ASP.NET Core MVC

Розглянемо MVC паттерн і зони відповідальності Model, View, Controller. Проаналізуємо структуру проекту ASP.NET Core MVC. Розберемо деталі життєвого циклу запитів, як відбувається перехід між веб сторінками і передача даних від Controller до View і навпаки.

Заняття 13 Огляд Entity Framework Core

Розглянемо, що таке Object-relational mapping (ORM) фреймворк і чому вони з’явилися на прикладі Entity Framework Core. Розглянемо різні підходи роботи з базами даних (DB First і Code First).

Заняття 14 Entity Framework Core

Розберемо наступні речі: Маніпуляції з моделями даних. Налаштуємо Entity Mapping, атрибути анотації даних (Data Annotations Attributes). Задамо різні відносини між сутностями (Entity): один до одного, один до багатьох і багато до багатьох. Торкнемося режимів міграцій схеми бази даних.

Заняття 15 ASP.NET Core MVC Validation & Authorization

Веб-застосунки націлені на роботу з людьми та обмін інформацією, тому виникає необхідність контролювати коректність даних (Validation) та керувати рівнями доступу (Authentication і Authorization). Якраз про це буде наше зайняття.

Заняття 16 Закріплення матеріалу по ASP.NET CORE

Ми сфокусуємося на питаннях, які накопичилися на попередніх заняттях присвячених ASP.NET CORE.

Заняття 17 Unit Testing

Студенти дізнаються, як покривати існуючий проект юніт тестами, а також визначати, чи можливо покривати юніт тестами всі частини програми. Обговоримо відмінність юніт тесту від інтеграційного тесту.

Заняття 18 Рефакторинг і дотримання принципів SOLID ч1

Розглянемо перші 2 з 5 принципів SOLID. Навчимося визначати на практиці, наскільки код відповідає заданим принципам. Розглянемо, які зміни можна ввести, щоб код відповідав принципам.

Заняття 19 Рефакторинг і дотримання принципів SOLID ч2

Продовжимо розглядати принципи SOLID. Виконаємо практичне завдання з аналізу коду на відповідність принципам і спробуємо привести його у відповідність.

Заняття 20 Bug fixing

Використовуючи парне програмування (практику cross-testing), будемо шукати дефекти (баги) в наших проектах і оцінювати, як вони впливають на проект. Також розглянемо, в чому полягає підхід TDD і чому він корисний при усуненні дефектів.

Всі учасники курсу будуть підключені до спеціального чату, де зможуть комунікувати з тренером, отримуватимуть відповіді на свої питання, посилання на потрібну для вивчення статтю чи документ.

По завершенні курсу ви:

– Поліпшите знання платформи .NET
– Навчитеся створювати веб-додатки за допомогою платформи ASP.NET CORE
– Закладете теоретичний і практичний фундамент для роботи з реляційними базами даних, використовуючи фреймворк ADO.NET
– Засвоїте фреймворк об’єктно-орієнтованого доступу до даних Entity Framework Core
– Отримаєте навички рефакторінга коду
– Навчитеся писати модульні тести (Unit Tests)
– Отримаєте знання, які дозволять претендувати на позицію молодшого спеціаліста .NET

БОНУС

Для всіх учасників курсу — безкоштовний вебінар від Sr. recruiter в Sigma Software: «Interview Easy or Hard».

У ході зустрічі наш експерт поділиться секретами і лайфхаками, які допоможуть вам успішно пройти шлях від кандидата до співробітника ІТ компанії.

Ви дізнаєтеся:

– як скласти резюме так, щоб вас запросили на інтерв’ю

– як підготуватися до співбесіди і успішно її пройти

– на що варто звернути увагу, коли ви отримали заповітний оффер від компанії

Мова

Заняття будуть проходити українською мовою з використанням англійських термінів.

Вимоги до учасників:

  • Знання англійської мови не нижче Pre-Intermediate.
  • Власний ноутбук (не менше ніж 4 GB RAM і процесор не нижче ніж 1.8 GHz)
  • Базові навики C#:
    • Розуміння класу і об”єкта
    • Базові типи даних
    • Оператори
    • Цикли