Proceedings of the International scientific and practical conference ―Synergy of Modern Science and Education‖ (June 12-14, 2026) / Publisher website: www.naukainfo.com. – New York, USA, 2026. - 145 p.
56 COMPUTER AND SOFTWARE ENGINEERING УДК 004.738:004.42 Павлов Валерій Георгійович к.т.н., доцент Новиков Ігор Михайлович студент Національний технічний університет України «Київський політехнічний інститут імені Ігоря Сікорського» м. Київ, Україна ІЗОЛЬОВАНЕ ВИКОНАННЯ Й РОЗГОРТАННЯ ОСВІТНЬОЇ ПЛАТФОРМИ CODETOLEARN Анотація. У статті розглянуто розроблену веб-платформу CodeToLearn для вивчення мов програмування та фреймворків із автоматичною перевіркою рішень і AI-аналізом коду за визначеними критеріями. Показано, що уніфікований механізм ізольованого виконання користувацького коду в Docker-контейнерах – judge-контейнери для класичних мов і playground- контейнери з попереднім переглядом для React і Vue – суттєво звужує простір придатних моделей розгортання та виключає типові serverless- і PaaS-рішення. Виконано порівняльний аналіз чотирьох підходів до розгортання й обґрунтовано вибір декларативної VPS-інфраструктури на основі Terraform і systemd. Працездатність платформи та обраної моделі розгортання підтверджено експлуатацією у production-середовищі. Ключові слова: навчання програмуванню, фреймворки, веб-платформа, AI-аналіз коду, Docker, контейнеризація, розгортання, інфраструктура як код. Індустрія розробки програмного забезпечення залишається одним із найдинамічніших секторів світової економіки, а набір технологій розробника оновлюється з безпрецедентною швидкістю: за даними Stack Overflow Developer Survey 2025, понад 84 % розробників уже використовують або планують використовувати AI-інструменти у щоденній роботі [1]. Це формує стійкий попит на навчальні середовища, які дають студентові не лише теорію, а й повноцінну практику з негайним зворотним зв'язком. Водночас наявні навчальні сервіси фрагментовані за нішами: одні обмежуються теорією без можливості писати код, інші тренують виключно алгоритмічні задачі, треті зводять перевірку рішення до порівняння виводу програми з еталоном, ігноруючи стиль, структуру та ефективність коду. Об'єктом дослідження є платформа для вивчення технологій – мов програмування та фреймворків – з аналізом коду за допомогою AI. У межах цієї веб-платформи CodeToLearn : учень обирає курс, опрацьовує теорію та виконує практичні завдання у браузерному редакторі; після відправлення рішення запускаються автоматичні тести, а AI-модель формує структурований відгук із балами за визначеними критеріями [2]. Технологічну основу складають React на клієнті, Fastify з типобезпечним oRPC на сервері та PostgreSQL із Drizzle ORM як сховище даних. Метою цієї статті є опис сутності запропонованої платформи та аналіз нетривіальної інженерної проблеми, що виникла під час її створення: уніфікований механізм ізольованого виконання користувацького коду в Docker-контейнерах суттєво звужує простір придатних моделей розгортання, роблячи непридатними типові serverless- і контейнерні хмарні рішення, – та обґрунтування обраного способу її розв'язання. Механізм виконання коду та постановка проблеми. Центральним архітектурним рішенням платформи є уніфікований Docker-орієнтований механізм виконання користувацького коду. Запуск довільного коду на сервері без належної ізоляції загрожує компрометацією інфраструктури [3], тому кожне виконання відбувається в окремому короткоживучому контейнері з жорсткими лімітами процесорного часу й оперативної пам'яті та вимкненою мережею. Механізм розрізняє два режими: judge-контейнери для класичних мов (JavaScript, TypeScript, Python та інші) виконують скрипт із тестами й повертають структурований результат, тоді як playground-контейнери для фронтенд-
Made with FlippingBook
RkJQdWJsaXNoZXIy MTAxMzIwNA==