ТЕХНОЛОГІЇ .NET РОЗРОБКИ WEB-ДОДАТКІВ

Робоча програма навчальної дисципліни (Силабус)

Реквізити навчальної дисципліни

Рівень вищої освіти Перший (бакалаврський)
Галузь знань 12 Інформаційні технології
Спеціальність 126 Інформаційні системи та технології
Освітня програма Інтегровані інформаційні системи
Статус дисципліни Вибіркова (цикл професійної підготовки)
Форма навчання очна(денна)
Рік підготовки, семестр 4 курс, весняний семестр
Обсяг дисципліни 150 годин (18 годин – Лекції, 36 годин – Лабораторні, 96 годин – СРС)
Семестровий контроль/ контрольні заходи Залік
Розклад занять http://rozklad.kpi.ua
Мова викладання Українська
Інформація про
керівника курсу / викладачів

Лектор: ст.викладач Проскура Світлана Леонідівна,

slproskura@gmail.com, моб. +38(066)567-45-59

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

Розміщення курсу login.kpi.ua

Програма навчальної дисципліни

Опис навчальної дисципліни, її мета, предмет вивчання та результати навчання

Опис дисципліни. Вивчення дисципліни «Технології .NET розробки веб-додатків» має сприяти формуванню розуміння побудови веб-додатків на основі .NET-технологій, особливості організації процесу програмування на платформі .NET Framework, вмінню студентів оцінювати ступінь правильності формування програмного коду засобами .NET-технологій.

Метою цієї дисципліни є здатність майбутніх фахівців з інформаційних технологій розробляти веб-додатки мовою С#, з урахуванням сучасних концепцій і тенденцій розвитку ASP.NET-технологій на платформі .NET Framework.

Програмні результати навчання

Програмні компетентності:

  • Здатність розв’язувати складні спеціалізовані задачі та практичні

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

Загальні компетентності:

  • Здатність до абстрактного мислення, аналізу та синтезу;

  • Здатність застосовувати знання у практичних ситуаціях;

  • Здатність до розуміння предметної області та професійної діяльності;

  • Здатність до алгоритмічного та логічного мислення;

  • Здатність вчитися і оволодівати сучасними знаннями;

  • Здатність до пошуку, оброблення та узагальнення інформації з різних джерел;

  • Здатність розробляти та управляти проектами;

  • Здатність оцінювати та забезпечувати якість виконуваних робіт;

Спеціальні (фахові, предметні) компетентності:

  • Здатність застосовувати технології та інструментальні засоби для розроблення веб-застосувань, веб-сервісів, веб-сайтів та веб-інтерфейсів з інтеграцією зовнішніх даних і програмних продуктів;

  • Здатність вирішувати задачі інтеграційних процесів інформаційних систем у сфери виробництва та керування з використанням методів аналізу та синтезу засобів передачі, зберігання та обробки інформації, основ сервіс-орієнтованого підходу до обслуговування користувачів інформаційних систем, базових та прикладних інформаційних технологій та інструментальних засобів інфраструктури ІТ;

  • Здатність проектувати, розробляти та використовувати засоби реалізації інформаційних систем, технологій та інфокомунікацій (методичні, інформаційні, алгоритмічні, технічні, програмні та інші) ;

  • Здатність аналізувати об’єкт проєктування або функціонування та його предметну область;

  • Здатність управляти якістю продуктів і сервісів інформаційних систем та технологій протягом їх життєвого циклу

  • Здатність формувати нові конкурентоспроможні ідеї й реалізовувати їх у проектах (стартапах).

  • Здатність управляти та користуватися сучасними інформаційно-комунікаційними системами та технологіями (у тому числі такими, що базуються на використанні Інтернет).

Знати:

  • особливості використання платформи .NET Framework та технології

    ASP.NET

  • теоретичні, практичні та технічні основи програмування на платформі

    .NET Framework;

  • теоретичні принципи та практичні прийоми об’єктно-орієнтованого

    програмування мовою C#;

  • основи інтеграційних рішень додатків на платформі .NET Framework;

  • особливості організації процесу об’єктно-орієнтованого програмування

    мовою програмування C#.

Вміти:

  • застосовувати об’єктно-орієнтований підхід при написанні програм

    мовою C# на платформі .NET Framework;

  • виконувати об’єктно-орієнтований аналіз і проектування предметної

    області, використовуючи UML-діаграми ;

  • застосовувати індексатори, властивості, успадкування, поліморфізм,

    делегати, абстрактні класи та методи, LINQ-запити у програмах, написаних мовою С#;

Пререквізити та постреквізити дисципліни (місце в структурно-логічній схемі навчання за відповідною освітньою програмою)

Пререквізити:

Для успішного освоєння дисципліни «Технології .NET розробки веб-додатків» необхідно мати базові знання із таких дисциплін: «Алгоритмізація та програмування», «Об'єктно-орієнтовне програмування», «Комп'ютерні мережі», «Бази даних».

Постреквізити:

Знання та навики, що придбають студенти при вивченні цієї дисципліни, забезпечать їх успішне використання на переддипломній практиці.

Зміст навчальної дисципліни

Розділ 1. Парадими ООП. Платформа .NET Framework. Технологія  ASP.NET.Основы CLR.

Класи. Об’єкти. Індексатори. Властивості. Перевантаження методів.

Тема 1.1 Парадими ООП. Особливості використання платформи .NET Framework та технології  ASP.NET. Основи CLR. Класи. Об’єкти. Рівні доступу. Конструктори.Деструктори. Динамічний розподіл пам'яті в С#. Прибиральник сміття в .Net.

Тема 1.2 Індексатори. Властивості. Автоматичні властивості. Створення екземплярів об'єктів за допомогою властивостей.

Тема 2.4 Перевантаження підпрограми ( методів).  Перевантаження бінарних, унарних та інших операторів.

Розділ 3. Успадкування. Поліморфізм

Тема 3.1 Успадкування в С#.  Приведення типів в іерархії успадкування. Порядок виконання конструкторів при успадкуванні. Визначення членів, які успадковуються.

Абстрактний клас. Інтерфейс. Порівняння абстрактних класів та інтерфейсів. Явна та неявна реалізація інтерфейсів.

Тема 3.2 Поліморфізм. Раннє, пізнє зв’язування.  Реалізація поліморфизму в С#.  Приведення типів в ієрархіїi успадкування. Переваги та недоліки приведення типів. Перевизначення та приховування методів. Виклик методів та конструкторів базового класу.

Тема 3.3 Абстрактні класи. Абстрактні методи у програмах, написаних мовою С# .  Оператори is та  as. Базовий класс Object в C#. Ієрархія  успадкування. NET Framework.

Розділ 4. Виключення виняткових ситуацій

Тема 4.1 Виключення виняткових ситуацій. Обробка виключень.  Оператори try, catch, finally. Виклик виключень.  Оператор throw. Аргументи виключень.  Власні виключення.

Повторна генерація виключень. Конструктори класа Exception. Системні та користувацькі виключення. Оператори checked unchecked.

Розділ 5. Делегати. Обробка подій. Лямбда-вирази. LINQ

Тема 5.1 Делегати. Групові делегати. Анонімні методи. Лямбда-вирази. Використання лямбда-виразів з делегатами.

Тема 5.3   Методи розширення. Мова запитів LINQ. LINQ to Objects. Введення у запити LINQ

Запити до даних. Фільтрація, упорядкування та групування даних. Об’єднання декількох наборів даних у LINQ-запиті.

Навчальні матеріали та ресурси

Базова література

  1. Джеффри Рихтер CLR via C#. Программирование на платформе Microsoft .NET Framework 4.5 на языке C#,. 2016.Питер, 896 стр.

  2. Троелсен Эндрю.Язык программирования C# 5.0 и платформа .NET 4.5 – 2015.. Видавництво Вильямс.2016 1312 с.

  3. Фримен Адам ASP.NET 4.5 с примерами на C# 5.0 для профессионалов. ISBN: 978-1-4302-4254-3 . Изд.Вильямс.2014. 1120 с.

  4. Гриффитс И. Программирование на C# 5.0. ISBN:978-5-699-69313-9. Изд. Эксмо. 2014. 1136 с.

    Додаткова література

  1. СкиДжон C# для профессионалов. Тонкости программирования. C# in Depth, Jon Skeet, Third Edition Русский перевод: Третье издание, ISBN:978-5-907114-62-3Изд. Вильямс, 608 с.

  2. Голдштейн Саша, Зурбалев Дима. Флатов Идо. Оптимизация приложений на платформе .NET с использованием языка C#, , (Переводчик: Александр Киселев). Изд ДМК Пресс. 2018. Цифровая книга.

  3. Programming C# 5.0: Building Windows 8, Web, and Desktop Applications for the .NET 4.5 Framework, Ian Griffiths (русский перевод : Программирование на C# 5.0, Иэн Гриффитс).2019. 1236 стр.

Навчальний контент

Методика опанування навчальної дисципліни (освітнього компонента)

  1. Лекційні заняття
№ з/п Назва теми лекції та перелік основних питань

 

Розділ 1. Парадими ООП. Платформа .NET Framework. Технологія  ASP.NET.Основы CLR.

Класи. Об’єкти. Індексатори. Властивості. Перевантаження методів.

1

Тема 1.1 Парадими об’єктно-орієнтованого програмування. Особливості використання платформи .NET Framework та технології  ASP.NET. Основи CLR.

Класи. Об’єкти. Рівні доступу. Конструктори.Деструктори. 

Динамічний розподіл пам'яті в програмах мовою С#. Прибиральник сміття в .Net.

2

Тема 1.2 Індексатори. Властивості. Автоматичні властивості.

Створення екземплярів об'єктів за допомогою властивостей.

3 Тема 2.4 Перевантаження підпрограми ( методів).  Перевантаження бінарних, унарних та інших операцій.
 

Розділ 3. Успадкування. Поліморфізм.

4

Тема 3.1 Успадкування в С#.  Приведення типів в іерархії успадкування.

Порядок виконання конструкторів при успадкуванні. Визначення членів, які успадковуються.

Абстрактний клас. Інтерфейс. Порівняння абстрактних класів та інтерфейсів. Явна та неявна реалізація інтерфейсів.

5

Тема 3.2 Поліморфізм. Раннє, пізнє зв’язування.  Реалізація поліморфизму в С#.  Приведення типів в ієрархіїi успадкування. Переваги та недоліки приведення типів. Перевизначення та приховування методів.

Виклик методів та конструкторів базового класу.

6 Тема 3.3 Абстрактні класи. Абстрактні методи мовою С# .  Оператори is та  as. Базовий класс Object в програмах мовою C#. Ієрархія  успадкування. NET Framework.
 

Розділ 4. Виключення.

7

Тема 4.1 Виключення.Обробка виключень.  Оператори try, catch, finally. Виклик виключень.  Оператор throw. Аргументи виключень.  Власні виключення

Повторна генерація виключень. Конструктори класа Exception. Системні та користувацькі виключення. Оператори checked unchecked.

Розділ 5. Делегати. Обробка подій. Лямбда-вирази. LINQ

 8 Тема 5.1 Делегати. Групові делегати. Анонімні методи. Лямбда-вирази. Використання лямбда-виразів з делегатами.
9

Тема 5.3   Методи розширення. Мова запитів LINQ. LINQ to Objects. Введення у запити LINQ.

Запити до даних. Фільтрація, упорядкування та групування даних. Об’єднання декількох наборів даних у LINQ-запиті.

5.2 Лабораторні заняття

№ з/п

Назва лабораторної роботи (комп’ютерного практикуму)

Кількість ауд. годин
1 Використання методів у С#. Способи передачі параметрів у методи і повертання результату. 4
2 Класи, об’єкти в С#. Механізми створення, використання та знищення об’єктів класів мовою С#. 4
3 Індексатори та властивості в програмах в С#. Механізми їх створення. 4
4 Перевантаження операцій та операторів в С#. Перевантаження унарних та бінарних та інши операцій та операторів мовою програмування С#.. 4
5 Успадкування класів. Відкрите, захищене та закрите успадкування. Приведення типів в іерархії успадкування Абстрактний клас. Інтерфейс. 4
6

Поліморфізм. Дослідження поліморфізму класів мовою С#. Реалізація полиморфизму в С#. 

Перевизначення та приховування методів. Виклик методів та конструкторів базового класу.

4
7 Виняткові ситуації. Дослідження механізму обробки виняткових ситуацій в С#. 4
8 Делегати в С#. Особливості використання делегатів у програмах, написаних мовою С#.. Групові делегати. Обробка подій. Аргументи подій. 4
9 Мова запитів LINQ. LINQ to Objects. Запити до даних. Фільтрація, упорядкування та групування даних. Об’єднання декількох наборів даних у LINQ-запиті 4

Самостійна робота студента

№ з/п Назва тем самостійних робіт
1 Модель виконання коду в середовищі CLR. Компонування, упаковка, розгортання і адміністрування додатків і типів.
2 Опціональні та іменовані параметри, параметри-масиви та довільна кількість параметрів.
3 Оптимізація роботи прибиральника сміття.
4 Рекомендації щодо використання властивостей та індексаторів.
5 Успадкування на основі прямих та непрямих розділених базових класів. Віртуальний базовий клас.
6 Присвоєння та посилання на класи в іерархії успадкування в С#.
7

Дії складових класу. Екземплярні та статичні члени класу.

Створення екземплярів об'єктів за допомогою властивостей

8 Перевизначення інтерфейсів.
9 Відношення між класами та об'єктами.
10 Використання класу Object у бібліотечних класах.
11 Аналіз стеку виклику виключення. Вкладене виключення.
12 Основні стандартні виключення та практика іх застосування.
13 Використання подій в застосуваннях с графічним інтерфейсом.
14 Дерево виразів.
15 Різновиди LINQ.
16 Динамічний LINQ.

Політика та контроль

Політика навчальної дисципліни (освітнього компонента)

Як викладач, так і студент зобов’язані дотримуватись Кодексу честі Національного технічного університету України «Київський політехнічний інститут»

Основні положення політики:

  • відвідування лекційних та комп’ютерних практикумів є обов’язковою складовою вивчення матеріалу;

  • впродовж занять студенти можуть задавати питання стосовно матеріалу, що викладається; студенти мають можливість підняти будь-яке питання, яке стосується процедури проведення та оцінювання контрольних заходів;

  • студенти мають право оскаржити результати контрольних заходів, аргументовано пояснивши з яким критерієм не погоджуються відповідно до оціночного листа та/або зауважень;

  • у випадку виявлення факту академічної недоброчесності робота не зараховується;

  • заохочувальні бали виставляються за: активну участь на лекціях та комп’ютерних практикумах, кількість заохочуваних балів на більше 10;

  • невчасне виконання комп’ютерних практикумів, контрольних робіт та тестів тягне за собою зниження отриманих балів (див. Таблицю2).

Види контролю та рейтингова система оцінювання результатів навчання (РСО)

8.1 Поточний контроль

Поточний контроль успішності засвоєння знань виконується шляхом виконання студентами: лабораторних робіт, модульної контрольної роботи (МКР), яка поділяється на дві контрольні роботи тривалістю по одній академічній годині , тестів, вивчення та відпрацювання тем, що видані для самостійної роботи.

Семестровий рейтинг студента з дисципліни складається з балів, що він отримує за:

  • лабораторні роботи ;

  • одну модульну контрольну роботу (МКР поділяється на дві контрольні роботи тривалістю по одній академічній годині);

  • тестів для перевірки засвоєння вивченого матеріалу;

  • самостійну роботу;

  • складання заліку.

8.2 Система рейтингових (вагових) балів та критерії оцінювання

Лабораторні роботи

Вагові бали кожної лабораторної роботи наведені у Таблиці 1. Сумарний ваговий бал за даний контрольний захід (r3) складає 48 балів.

Критерії оцінювання лабораторних робіт включають якість їх виконання та захист. (Таблиця 1).

Таблиця 1 – Вагові бали та критерії оцінювання лабораторних робіт

Назва роботи Бали
Виконання Захист Звіт Сума
1 Використання методів у мові C#. Способи передачі параметрів у методи і повертання результату. 2 2 1 5
2 Класи, об’єкти в С#. Механізми створення, використання та знищення об’єктів класів в мові програмування С#. 2 2 1 5
3 Індексатори та властивості в С#. Механізми їх створення та особливості використання в мові програмування С#. 2 2 1 5
4 Перевантаження операцій та операторів в С#. Перевантаження унарних та бінарних та інши операцій та операторів в мові програмування С#.. 2 2 1 5
5 Успадкування класів. Дослідження використання успадкування класів в мові програмування С#. Приведення типів в іерархії успадкування Абстрактний клас. Інтерфейс. 2 2 1 5
6

Поліморфізм. Дослідження поліморфізму класів в мові програмування С#. Реалізація полиморфизму в С#. 

Перевизначення та приховування методів. Виклик методів та конструкторів базового класу.

2 2 1 5
7 Виняткові ситуації. Дослідження механізму обробки виняткових ситуацій в мові програмування С#. 3 2 1 6
8 Делегати в С#. Особливості використання делегатів в мові програмування С#. Групові делегати. Обробка подій. Аргументи подій. 3 2 1 6
9 Мова запитів LINQ. LINQ to Objects. Запити до даних. Фільтрація, упорядкування та групування даних. Об’єднання декількох наборів даних у LINQ-запиті 3 2 1 6
  Разом за лабораторні роботи 21 18 9 48

Критерії оцінювання лабораторних робіт 1- 6:

  • відмінно”, повна відповідь (не менше 95% потрібної інформації);

- 5 балів;
  • добре”, достатньо повна відповідь (не менше 75% потрібної інформації, або незначні неточності);

- 4-4.5 балів;
  • задовільно”, неповна відповідь (не менше 60% потрібної інформації та деякі помилки);

- 3-3.5 бали;
  • незадовільно”, незадовільна відповідь.

- < 3 балів

Критерії оцінювання лабораторних робіт 7- 9:

  • відмінно”, повна відповідь (не менше 95% потрібної інформації);

- 6 балів;
  • добре”, достатньо повна відповідь (не менше 75% потрібної інформації, або незначні неточності);

- 4.5 - 5 балів;
  • задовільно”, неповна відповідь (не менше 60% потрібної інформації та деякі помилки);

- 3.5 - 4 бали;
  • незадовільно”, незадовільна відповідь.

- < 3 балів

Модульна контрольна робота

Ваговий бал МКР –12 балів.

Критерії оцінювання кожної частини МКР:

  • відмінно”, повна відповідь (не менше 95% потрібної інформації);

- 11.5-12 бали
  • добре”, достатньо повна відповідь (не менше 75% потрібної інформації, або незначні неточності);

- 9 – 10.5 балів
  • задовільно”, неповна відповідь (не менше 60% потрібної інформації та деякі помилки);

- 7.5 - 8 балів
  • незадовільно”, незадовільна відповідь.

- < 7.5 балів

Заохочувальні та штрафні бали за:

  • виконання додаткових завдань – підвищення на 5 балів.

  • не своєчасну здачу лабораторних робіт - % зниження відповідно таблиці 2.

Таблиця 2. Штрафи за затримку виконання лабораторних робіт

Термін затримки % зниження
2 тижня 5
Від 2 тижнів до 4 тижнів (місяць) 10
Від 4 тижнів до 6 тижнів 20
Від 6 тижнів до 8 тижнів (два місяці) 30
Від 8 тижнів до 12 тижнів 40
Більше, ніж 12 тижнів 50

Умови позитивної проміжної атестації

Для отримання “зараховано” з першої проміжної атестації (8 тиждень) студент повинен мати не менше ніж 10 балів (за умови, якщо на початок 8 тижня згідно з календарним планом контрольних заходівідеальнийстудент має отримати 20 балів).

Для отримання “зараховано” з другої проміжної атестації (14 тиждень) студент повинен мати не менше ніж 18 балів (за умови, якщо на початок 14 тижня згідно з календарним планом контрольних заходівідеальнийстудент має отримати 30 балів).

**Розрахунок шкали рейтингу 😗*

Максимальна сума вагових балів контрольних заходів протягом семестру складає:

Rc = 48+12 = 60 балів

Залікова складова шкали дорівнює 40% , а саме:

балів.

Таким чином, рейтингова шкала з дисципліни складає 60+40 =100 балів.

Необхідною умовою допуску до заліку є:

  • виконання 9 лабораторних робіт на оцінку не нижче ніж “задовільно”;

  • виконання МКР не нижче ніж на оцінку “задовільно”.

Критерії залікового оцінювання:

Залікове завдання складається з двох частин: практичної та теоретичної. В практичній частині залікової роботи необхідно написати програмний код, згідно завдання, виданого викладачем.

Критерії оцінювання якості практичної частини роботи:

  • відмінно”, повна відповідь (не менше 95% потрібної інформації);

- 24-25 бали
  • добре”, достатньо повна відповідь (не менше 75% потрібної інформації, або незначні неточності);

- 19-23 балів
  • задовільно”, неповна відповідь (не менше 60% потрібної інформації та деякі помилки);

- 15-18 балів
  • незадовільно”, незадовільна відповідь.

- < 15 балів

Ваговий бал теоретичної частини залікової роботи – 25 балів.

Критерії оцінювання якості теоретичної частини роботи:

  • відмінно”, повна відповідь (не менше 95% потрібної інформації);

- 14.5 -15 бали
  • добре”, достатньо повна відповідь (не менше 75% потрібної інформації, або незначні неточності);

- 11-13 балів
  • задовільно”, неповна відповідь (не менше 60% потрібної інформації та деякі помилки);

- 9-10 балів
  • незадовільно”, незадовільна відповідь.

- < 9 балів

Ваговий бал теоретичної частини залікової роботи – 15 балів.

У підсумку за складання практичної та теоретичної частини залікового завдання студент отримує:

  • відмінно

- 38-40 бали
  • “дуже добре

- 34-39 балів
  • добре

30-33 балів
  • задовільно

- 26-29 балів
  • достатньо

24-25 балів
  • незадовільно

- < 24 балів

Для отримання студентом відповідних оцінок -його рейтингова оцінка переводиться в оцінку згідно з таблицею:

Бали Оцінка
95… 100 відмінно
85 … 94 дуже добре
75 … 84 добре
65 … 74 задовільно
60 … 64 достатньо
<60 незадовільно
< 50 або не виконані інші умови допуску до заліку недопущений

Додаткова інформація з дисципліни (освітнього компонента)

Перелік питань, які виносяться на семестровий контроль розміщений в системі « КАМПУС».

Робочу програму навчальної дисципліни (силабус):

Складено ст.викладачем Проскурою Світланою Леонідівною

Ухвалено кафедрою АУТС (протокол № 1 від 27.08.2020 р.)

Погоджено Методичною комісією факультету (протокол № 1 від 02.09.2020 р.)