Спеціальні мови програмування
Мета вивчення дисципліни: забезпечити формування поглибленої системи теоретичних і практичних знань у галузі веб-розробки програмного забезпечення проектів ASP.NET Core на основі шаблону MVC, що використовують базу даних MS SQL Server за допомогою інфраструктури Entity Framework Core, реалізують систему ідентифікації користувачів засобами інфраструктури Identity, формують інтерфейс користувача за допомогою механізму Razor та фреймворку Bootstrap, мовами програмування C#, JavaScript, HTML, CSS.
Практичне значення та використання отриманих знань: підвищення рівня теоретичних і прикладних знань, що формують фахівця в галузі інформаційних технологій, які сприяють утворенню у здобувачів поглиблених вмінь та навичок веб-розробки програмного забезпечення із застосуванням сучасних парадигм програмування, тобто підготовці спеціалістів для створення, впровадження та підтримки професійно-орієнтованих комп’ютерних технологій у професійній діяльності.
Тематика та види навчальних занять
Для денної форми здобуття освіти
Лекційні заняття
Лекція 1. Веб-застосування з доступом до баз даних.
Створення проекту веб-застосування. Додавання та конфігурування інфраструктури для доступу до баз даних. Визначення патерну «Сховище». Реалізація патерну «Сховище».
Лекція 2. Виконання операцій над даними.
Читання даних: читання об'єкта за ключем, запитування всіх об'єктів, запитування специфічних об'єктів. Збереження нових даних: призначення ключів. Оновлення даних: оновлення повного об'єкту, запитування існуючих даних перед оновленням, оновлення в єдиній операції бази даних. Видалення даних.
Лекція 3. Робота з міграціями.
Поняття міграцій. Створення додаткових міграцій. Управління міграціями: вивід списку міграцій, застосування всіх міграцій, оновлення до специфічної міграції, видалення міграції, переустановлення бази даних. Робота з множиною баз даних. Програмне управління міграціями: створення класу диспетчера міграцій, створення контролера та представлення для диспетчера міграцій, виконання диспетчера міграцій. Програмне заповнення баз даних початковими даними.
Лекція 4. Створення відношень між даними.
Створення відношення: додавання навігаційної властивості, створення міграції, запитування та відображення зв'язаних даних, оновлення представлення з метою відображення зв'язаних даних. Створення та оновлення зв'язаних даних. Видалення зв'язаних даних. Створення обов'язкового відношення: створення властивості зовнішнього ключа, операція видалення за наявності обов'язкового відношення. Виконання запитів для множини відношень: оновлення та заповнення початковими даними бази даних, виконання запитів до ланцюжка навігаційних властивостей.
Лекція 5. Робота з відношеннями.
Доступ до зв'язаних даних безпосередньо: підвищення зв'язаних даних, доступ до зв'язаних даних із використанням параметра типу. Укомплектування відношення між даними. Запитування зв'язаних даних у відношенні «один до багатьох». Робота зі зв'язаними даними у відношенні «один до багатьох»: оновлення зв'язаних об'єктів, створення нових зв'язаних об'єктів, зміна відношень.
Лекція 6. Типи відношень.
Укомплектування відношення «один до одного»: визначення навігаційної властивості, вибір залежного сутнісного класу, створення та застосування міграції. Робота з відношеннями «один до одного»: запитування зв'язаних даних у відношенні «один до одного», створення та оновлення зв'язаних об'єктів, зміна відношення «один до одного». Визначення відношень «багато до багатьох»: створення з’єднуючого класу, укомплектування відношення «багато до багатьох», запитування зв'язаних даних у відношенні «багато до багатьох», управління відношеннями «багато до багатьох».
Лекція 7. Формування шаблонів для існуючих баз даних.
Формування шаблонів для існуючої бази даних. Виконання процесу формування шаблонів. Використання моделі даних, згенерованої процесом формування шаблонів. Реагування на зміни у базі даних: модифікація бази даних, оновлення моделі даних, оновлення класу контексту, оновлення контролерів та представлень, додавання можливостей сталості моделі даних.
Лекція 8. Ручне моделювання баз даних.
Створення ручної моделі даних: створення класу контексту та сутнісних класів, створення контролера та представлення, основні угоди для моделі даних, перевизначення угод для моделі даних, моделювання відношень. Використання моделі даних, створеної вручну. Запитування даних у моделі даних, створеної вручну. Оновлення даних у моделі даних, створеної вручну.
Лекція 9. Введення до системи ідентифікації.
Налаштування системи ідентифікації. Створення класу користувача. Створення класу контексту бази даних. Конфігурація налаштування строчки підключення до бази даних. Створення бази даних ідентифікації. Використання системи ідентифікації. Перелік облікових записів користувача. Створення користувачів. Перевірка паролів. Перевірка деталей, пов'язаних із користувачем. Завершення побудови засобів адміністрування. Реалізація можливості видалення. Реалізація можливості редагування.
Лекція 10. Застосування системи ідентифікації.
Аутентифікація користувачів. Підготовка до реалізації аутентифікації. Додавання аутентифікації користувачів. Тестування аутентифікації. Авторизація користувачів за допомогою ролей. Створення та видалення ролей. Управління членством у ролях. Використання ролей для авторизації.
Лекція 11. Розширені можливості системи ідентифікації.
Додавання спеціальних властивостей до класу користувача. Підготовка міграції до бази даних. Тестування спеціальних властивостей. Робота із заявками та політиками. Концепція заявок. Створення заявок. Використання політик. Використання політик для авторизації доступу до ресурсів. Використання сторонньої автентифікації. Реєстрація програми в Google. Увімкнення аутентифікації Google.
Лабораторні заняття
Лабораторне заняття 1. Веб-застосування з доступом до баз даних.
Мета заняття: 1. Закріплення і поглиблення теоретичних знань, отриманих при вивченні розділу «Веб-застосування з доступом до баз даних». 2. Набуття практичних навичок розробки та реалізації веб-застосування з використанням інфраструктури для доступу до баз даних. 3. Набуття практичних навичок налагодження веб-застосування, в якому використана інфраструктура для доступу до баз даних.
Лабораторне заняття 2. Виконання операцій над даними.
Мета заняття: 1. Закріплення і поглиблення теоретичних знань, отриманих при вивченні розділу «Виконання операцій над даними». 2. Набуття практичних навичок розробки та реалізації веб-застосування з використанням виконання операцій над даними. 3. Набуття практичних навичок налагодження веб-застосування, в якому реалізовано виконання операцій над даними.
Лабораторне заняття 3. Створення відношень між даними.
Мета заняття: 1. Закріплення і поглиблення теоретичних знань, отриманих при вивченні розділу «Створення відношень між даними». 2. Набуття практичних навичок розробки та реалізації веб-застосування з використанням створення відношень між даними. 3. Набуття практичних навичок налагодження веб-застосування, в якому реалізовано створення відношень між даними.
Лабораторне заняття 4. Робота з відношеннями.
Мета заняття: 1. Закріплення і поглиблення теоретичних знань, отриманих при вивченні розділу «Робота з відношеннями». 2. Набуття практичних навичок розробки та реалізації веб-застосування з використанням роботи з відношеннями. 3. Набуття практичних навичок налагодження веб-застосування, в якому реалізована робота з відношеннями.
Лабораторне заняття 5. Формування шаблонів для існуючих баз даних.
Мета заняття: 1. Закріплення і поглиблення теоретичних знань, отриманих при вивченні розділу «Формування шаблонів для існуючих баз даних». 2. Набуття практичних навичок розробки та реалізації веб-застосування з використанням формування шаблонів для існуючих баз даних. 3. Набуття практичних навичок налагодження веб-застосування, в якому реалізовано формування шаблонів для існуючих баз даних.
Лабораторне заняття 6. Застосування системи ідентифікації.
Мета заняття: 1. Закріплення і поглиблення теоретичних знань, отриманих при вивченні розділу «Застосування системи ідентифікації». 2. Набуття практичних навичок розробки та реалізації веб-застосування з використанням аутентифікації та авторизації користувачів. 3. Набуття практичних навичок налагодження веб-застосування, в якому реалізовано аутентифікація та авторизація користувачів.
Консультації здійснюються впродовж семестру згідно встановленого розкладу.
Індивідуальна робота
Курсова робота є індивідуальним завданням здобувача, що передбачає вирішення конкретної практичної навчальної задачі з використанням відомого, а також (або) самостійно вивченого теоретичного матеріалу.
Мета виконання курсової роботи – закріпити формування поглибленої системи теоретичних і практичних знань у галузі веб-розробки програмного забезпечення для реалізації здатності використання інформаційно-комунікаційних технологій, сучасних методів і моделей інформаційної безпеки.
Завдання виконання курсової роботи:
– закріплювати теоретичні основи та практичні навички застосування методів вилучення, аналізу, обробки та синтезу інформації для формування технічного завдання при розв’язанні задач в галузі інформаційних технологій;
– закріплювати теоретичні основи та практичні навички сучасних парадигм веб-програмування та способів їх вибору з позицій зручності та якості застосування для реалізації методів та алгоритмів розв’язання задач в галузі інформаційних технологій;
– закріплювати практичні навички кодування веб-програмного забезпечення для розв’язання задач в галузі інформаційних технологій;
– закріплювати практичні навички налагодження веб-програмного забезпечення для розв’язання задач в галузі інформаційних технологій.
Тему курсової роботи здобувачі вищої освіти обираюсь самостійно із поданих у методичних вказівках до виконання курсової роботи з дисципліни.
Графік виконання курсової роботи:
– 1 тиждень: формулювання технічного завдання;
– 2 тиждень: проектування веб-застосування;
– 5 тиждень: кодування веб-застосування;
– 8 тиждень: тестування веб-застосування;
– 9 тиждень: оформлення пояснювальної записки;
– 11 тиждень: захист курсової роботи.
Форми контрольних заходів та оцінювання результатів навчання
Для денної форми здобуття освіти
Поточний контроль полягає у виконанні
1) 6-ті лабораторних робіт. Лабораторні роботи полягають у розробці програмного забезпечення відповідно до мети та завдань лабораторних занять. Бездоганне виконання лабораторних робіт 1-2 оцінюється у 12 балів; 3-6 оцінюється у 14 балів;
2) модульної контрольної роботи. Модульна контрольна робота представляє собою виконання практичного завдання.
Бездоганне виконання модульної контрольної роботи становить 20 балів.
Підсумковий контроль – залік. Залік виставляється за результатами роботи здобувачів в семестрі. Мінімальна кількість, яка дозволяє отримати «зараховано» – 60 балів.
ПРН11. Вміти застосовувати сучасні технології програмування та розроблення програмного забезпечення, програмної реалізації чисельних і символьних алгоритмів.
ПРН13. Використовувати в практичній роботі спеціалізовані програмні продукти та програмні системи комп’ютерної математики.
ПРН14. Виявляти здатність до самонавчання та продовження професійного розвитку.
ПРН21. Володіти загальними принципами функціонування та архітектури комп’ютерних систем та основами операційних систем.
ПРН26. Уміти використовувати знання методів обробки інформації та комунікаційних технологій при вирішенні професійних завдань (управління інформацією).