Item #1

Цей фундаментальний курс досліджує межі того, що може бути обчислено за допомогою формальних моделей обчислень, таких як машина Тюрінга та лямбда-числення. Вивчаються ключові концепції розв’язності (decidability) та обчислювальної складності (computational complexity), включаючи класи P, NP та NP-повні проблеми. Дисципліна дає глибоке теоретичне розуміння того, які завдання можна вирішити за допомогою алгоритмів, а які є нерозв’язними або вимагають надмірних ресурсів.

Курс є вступом до мови програмування Python, яка вирізняється простим синтаксисом та широкою застосовністю у веб-розробці, аналізі даних та машинному навчанні. Студенти вивчають основні структури даних, керуючі конструкції, роботу з файлами та об’єктно-орієнтовані принципи у контексті Python. Набуті навички дозволяють швидко створювати скрипти для автоматизації та розробляти кросплатформні застосунки.

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

Дисципліна є початковим кроком у світ програмування, зосереджуючись на мові JavaScript, яка є основою веб-розробки. Студенти вивчають базові структури даних, керуючі конструкції (умови, цикли) та функції, формуючи розуміння алгоритмічного мислення. Після завершення курсу слухачі зможуть створювати прості інтерактивні елементи та основи веб-застосунків.

Курс присвячений освоєнню системи контролю версій Git, що є незамінною для командної розробки та управління проєктами. Розглядаються ключові поняття: коміти (commits), гілки (branches), злиття (merging) та вирішення конфліктів. Практичні навички роботи з Git та сервісами на кшталт GitHub/GitLab дозволять ефективно відстежувати зміни та співпрацювати над кодом.

This advanced-level course focuses on complex data structures and sophisticated algorithmic techniques crucial for solving challenging computational problems. Topics include advanced graph algorithms, dynamic programming, and efficient searching and sorting methods, analyzed using Big O notation for time and space complexity. The aim is to equip students with the skills to design, analyze, and implement highly optimized solutions in a professional environment.

Цей курс фокусується на практичному застосуванні класичних та сучасних алгоритмів для вирішення реальних інженерних задач. Розглядаються ефективні методи сортування, пошуку, алгоритми на графах (як-от Дейкстри, пошук у глибину та ширину) та їхня реалізація. Навчання спрямоване на розвиток здатності вибирати й адаптувати найбільш оптимальний алгоритм, виходячи з конкретних обмежень продуктивності та обчислювальних ресурсів.

Дисципліна знайомить з мовою програмування C# та фреймворком .NET, які широко використовуються для розробки корпоративних застосунків, десктопних програм та ігор (наприклад, у Unity). Основна увага приділяється об’єктно-орієнтованому програмуванню (ООП), роботі з колекціями, обробці винятків та основам розробки графічного інтерфейсу користувача. Це надає базу для створення надійного та масштабованого програмного забезпечення.

This advanced course explores complex and highly specialized data structures necessary for optimizing performance in large-scale systems and databases. It covers structures like advanced trees (e.g., B-trees, Red-Black trees), heaps, hash tables with collision resolution techniques, and specialized graphs. Emphasis is placed on analyzing the trade-offs between different structures in terms of time and space complexity for various operations, preparing students for high-performance software engineering.

Курс розкриває математичні основи кількісного вимірювання інформації та методи її ефективного передавання й зберігання. Вивчаються ключові поняття, як-от ентропія, надлишковість та пропускна здатність каналу, а також різноманітні схеми кодування (Хаффмана, Шеннона-Фано) для стиснення даних без втрат і коди з виправленням помилок (наприклад, Хеммінга). Ці знання є критично важливими для комунікаційних систем і зберігання даних.

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

Курс охоплює математичний апарат, що лежить в основі 2D- та 3D-комп’ютерної графіки. Основні теми включають лінійну алгебру (матриці та вектори) для операцій з об’єктами (трансформації, обертання, масштабування), проективну геометрію для побудови перспективних зображень та основи освітлення (моделі затінення). Знання дозволяють розуміти та програмувати конвеєр рендерингу.

This subject focuses on the principles and tools for developing software that can run seamlessly on multiple operating systems (e.g., Windows, macOS, Linux, mobile platforms) from a single codebase. It covers various cross-platform frameworks (like React Native, Flutter, or Xamarin) and the challenges associated with adapting user interfaces, accessing native functionalities, and ensuring consistent performance across different environments. The goal is to maximize code reuse and reach a wider user base.

Цей курс поглиблено вивчає парадигму об’єктно-орієнтованого програмування (ООП), використовуючи мову C# як основний інструмент. Студенти детально розглядають чотири стовпи ООП: ін капсуляцію, успадкування, полі морфізм та абстракцію, а також принципи SOLID та патерни проєктування. Практична робота спрямована на створення гнучких, модульних та легко підтримуваних програмних систем.

Дисципліна присвячена фізичним та математичним основам відображення кольору та світла у віртуальному просторі. Вивчаються різні кольорні моделі (RGB, CMYK, HSL), а також просунуті алгоритми освітлення, включаючи моделі затінення (Фонга, Гуро), трасування променів (Ray Tracing) та глобальне освітлення. Знання необхідні для створення реалістичних та якісних зображень у графічних застосунках.

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

Дисципліна охоплює фундаментальні принципи роботи технології блокчейн, що лежить в основі криптовалют та децентралізованих систем. Вивчаються концепції криптографії (хешування, цифрові підписи), розподілених реєстрів, консенсусних механізмів (PoW, PoS) та архітектура смарт-контрактів. Набуті знання дозволяють розуміти та створювати додатки в децентралізованих екосистемах.

Курс зосереджений на актуальних інструментах та фреймворках екосистеми Java, які використовуються в промисловій розробці. Розглядаються сучасні можливості самої мови (наприклад, нововведення останніх версій), а також ключові фреймворки, такі як Spring Boot, для швидкої розробки мікросервісів та веб-додатків. Основний акцент робиться на підвищенні продуктивності та використанні найкращих практик.

Цей предмет є початковим курсом з розробки серверної частини (backend) веб-застосунків за допомогою Java. Вивчаються основи роботи з сервлетами, технологією JSP, а також інтеграція з базами даних за допомогою JDBC. Студенти отримують розуміння архітектури клієнт-сервер та навички створення динамічних веб-сторінок.

Дисципліна знайомить з математичним апаратом, що використовується для аналізу, покращення та перетворення цифрових зображень. Розглядаються такі методи, як перетворення Фур’є, фільтрація (згортка), гістограмний аналіз та алгоритми стиснення. Знання дозволяють реалізовувати ефективні алгоритми для видалення шуму, виділення контурів та розпізнавання образів.

Курс присвячений принципам та методам ефективного графічного представлення даних для спрощення їхнього аналізу та інтерпретації. Вивчаються найкращі практики дизайну діаграм, графіків та дашбордів, а також інструменти та бібліотеки (наприклад, Python/R бібліотеки або Tableau). Мета — навчити перетворювати складні набори даних на інтуїтивно зрозумілі візуальні історії.

Цей предмет охоплює архітектуру та практичні аспекти розробки рішень Інтернету речей (IoT) для корпоративного сектору. Розглядаються питання вибору апаратного забезпечення (сенсори, мікроконтролери), протоколів передачі даних (MQTT, CoAP), хмарних платформ для обробки даних та безпеки IoT-систем. Основний фокус на застосуванні IoT для автоматизації та оптимізації бізнес-процесів.

 

Ця дисципліна знайомить з Теорією категорій як потужним математичним інструментом для абстрагування та уніфікації структур у програмуванні та логіці. Вивчаються основні концепції, такі як категорії, функтори та природні перетворення, і їх застосування для розуміння структур даних, композиції програм та формалізації систем типів. Курс допомагає розробляти більш модульне та коректне програмне забезпечення.

Курс охоплює набір методів та алгоритмів для виявлення прихованих закономірностей, кореляцій та тенденцій у великих масивах даних. Розглядаються ключові техніки, включаючи кластеризацію (clustering), класифікацію (classification), асоціативні правила та регресійний аналіз. Основна увага приділяється практичному застосуванню цих методів для розв’язання бізнес-задач, прогнозування та підтримки прийняття рішень.

Дисципліна присвячена методам та архітектурі побудови систем, що пропонують користувачам релевантні товари чи інформацію, та систем, що допомагають менеджерам приймати обґрунтовані рішення. Розглядаються алгоритми колаборативної фільтрації, контент-базовані методи та гібридні підходи в рекомендаційних системах, а також моделі для створення аналітичних панелей у СППР.

Курс зосереджений на математичних основах побудови та маніпулювання геометричними об’єктами у просторі. Вивчаються такі методи, як криві Безьє, B-сплайни, поверхні NURBS та їхні аналітичні властивості, необхідні для точного моделювання. Ці знання є фундаментальними для систем CAD/CAM, комп’ютерної графіки та 3D-друку.

Цей предмет поглиблює знання з розробки повноцінних веб-застосунків за допомогою екосистеми Java. Основний акцент робиться на використанні сучасних фреймворків, таких як Spring (Core, MVC, Data) та/або Jakarta EE, для створення RESTful API та роботи з базами даних. Студенти вчаться проєктувати багатоланкові веб-системи.

Курс охоплює принципи, протоколи та інструменти, необхідні для моніторингу, конфігурації та забезпечення безперебійної роботи комп’ютерних мереж. Розглядаються протоколи управління, як-от SNMP, методи забезпечення якості обслуговування (QoS), управління безпекою та виявлення несправностей. Набуті знання дозволяють ефективно адмініструвати мережеву інфраструктуру підприємства.

Дисципліна є першим кроком у галузь Машинного навчання (ML), що дозволяє комп’ютерам навчатися на даних без явного програмування. Вивчаються основи контрольованого (supervised), неконтрольованого (unsupervised) та навчання з підкріпленням (reinforcement learning). Розглядаються базові алгоритми, як-от лінійна регресія, k-найближчих сусідів та дерева рішень.

 

Курс поєднує вивчення паралельних обчислень та розробки веб-додатків у сучасній екосистемі .NET (C#). Детально розглядаються механізми багатопоточності, асинхронності (Async/Await) та синхронізації для створення швидких і чуйних застосунків. Навички застосовуються для розробки високонавантажених веб-сервісів за допомогою ASP.NET Core.