Інтеграція програмних систем (прикладна математика, 1.9)

Тип: На вибір студента

Кафедра: обчислювальної математики

Навчальний план

СеместрКредитиЗвітність
104.5Залік

Лекції

СеместрК-сть годинЛекторГрупа(и)
1032Вавричук В. Г.ПМп-52м

Лабораторні

СеместрК-сть годинГрупаВикладач(і)
1016ПМп-52мВавричук В. Г.

Опис курсу

Розвиток ІТ індустрії та програмування на даний час дозволяє ефективно вирішувати широке коло задач, які ставляться замовниками: виробництвом, бізнесом, державним сектором і т.д. Великою мірою це забезпечується завдяки поширенню розподілених архітектурних рішень (багатошарова архітектура, гексагональна архітектура, мікросервіси і т.д.), перевикористанню різноманітних технологій і фреймворків (фронтенд, бекенд, комунікація і т.д.), та запровадженню ефективних практик (SCM, CI і т.д.). У циклі цього курсу студенти знайомляться з фрейморками та бібліотеками (керування браузером, черги, GraphQL і т.д.), які доступні під різні мови програмування, в залежності від того чому розробник надає перевагу. Розгалядаються поширені технології такі, як черги, GraphQL, JWT та Docker, які забезпечують розподіленість архітектури. У випадку інтерфейсу користувача, фреймворки, що розгядаються є, на жаль, мово-залежними: JavaFX – під мову Java, та Angular – під мову TypeScript або JavaScript. Проте, багато принципів, на яких побудований JavaFX мають місце і для графічних фреймворків під інші мови програмування, наприклад WPF під C#. У випадку Angular, він порівнюється із іншим поширеним фронтенд фреймворком React. У курсі засоби, принципи та підходи розглядаються з практичною метою: студенти реалізовують проект, що можна назвати “золотим стандартом” ІТ проекту: програма, що надає можливості CRUD операцій з даними та графічний інтерфейс. Для легкого забезпечення більшої реалісничності завдання, студентам необхідно отримати дані з реальних джерел, таких як сайти новин, інтернет магазини і т.д.
Метою навчальної дисципліни є розширення навичок студентів роботи з фреймворками та бібліотеками під мови програмування, на яких вони спеціалізуються. Набуття знань з побудови, реалізації та інтеграції розподілених архітектурних рішень. Здобуття вмінь з ефективних практик з розробки програмного забезпечення (SCM, неперервна інтеграція і т.д.). Здобуття практичного досвіду підготовки стандартного проекту з ІТ, що включає поширений набір функціональності та є достатньо складним.

Рекомендована література

  1. https://www.selenium.dev
  2. https://playwright.dev
  3. RabbitMQ Tutorials
  4. GraphQL > Learn
  5. GraphQL .NET > Docs
  6. https://jwt.io
  7. https://docs.docker.com
  8. https://angular.io
  9. Підручник з JavaFX
  10. https://plantuml.com

Силабус: 2023р.

Завантажити силабус