Спосіб відстеження змін у імпортованих файлах на прикладі мови NFML
DOI:
https://doi.org/10.20535/1560-8956.47.2025.340204Ключові слова:
алгоритм, ієрархія, файлова система, відстеження змін, Node.jsАнотація
Об’єктом дослідження є відстеження змін у файлах, які є безпосередньою частиною проекту. У статті розглянуто різноманітні способи відстежувати зміни у файлах, визначено найкращий з них на основі вимог, висунутих для розробки ефективного алгоритму. Розроблений алгоритм повинен мати змогу відслідковувати зміни незалежно від ієрархії файлів у проекті, а також додавати чи видаляти файли з відстежуваних залежно від того, чи вони застосовуються в поточному проекті. Робота алгоритму розглядається на прикладі предметно-орієнтованої мови NFML. Із розглянутих способів відстеження змін node --watch та nodemon не підійшли в силу того, що для них неможливо встановити стеження за файлами індивідуально, а також при відстеженні змін вони перезапускають процес повністю. Натомість, chokidar дає змогу додати окремі файли у список відстежуваних, а також видозмінювати його під час виконання програми. Крім цього, процес не перезапускається при виявленні змін у одному із файлів, що надає достатньо гнучкості при описі необхідної поведінки. Метою роботи є визначення способу відстежити зміни у файлах для реагування на ці зміни. Прикладом такої реакції є гаряча компіляція. Для досягнення цієї мети пропонується алгоритм, побудований із використанням chokidar, який встановлює стеження за файлами за оновлює список відстежуваних файлів за потреби.
Бібл. 3, іл. 3, табл. 1
Посилання
Command-line API | Node.js v23.10.0 Documentation [Електронний ресурс] – Режим доступу до ресурсу: https://nodejs.org/api/cli.html (дата звернення: 26.03.2025).
nodemon | GitHub [Електронний ресурс] – Режим доступу до ресурсу: https://github.com/remy/nodemon (дата звернення: 26.03.2025).
chokidar | GitHub [Електронний ресурс] – Режим доступу до ресурсу: https://github.com/paulmillr/chokidar (дата звернення: 27.03.2025).
##submission.downloads##
Опубліковано
Номер
Розділ
Ліцензія

Ця робота ліцензується відповідно до Creative Commons Attribution-NonCommercial-ShareAlike 4.0 International License.
1.Автори залишають за собою право на авторство своєї роботи та передають журналу право першої публікації цієї роботи на умовах ліцензії Creative Commons Attribution License, котра дозволяє іншим особам вільно розповсюджувати опубліковану роботу з обов'язковим посиланням на авторів оригінальної роботи та першу публікацію роботи у нашому журналі.
2. Автори мають право укладати самостійні додаткові угоди щодо неексклюзивного розповсюдження роботи у тому вигляді, в якому вона була опублікована нашим журналом (наприклад, розміщувати роботу в електронному сховищі установи або публікувати у складі монографії), за умови збереження посилання на першу публікацію роботи у нашому журналі.
3. Політика журналу дозволяє і заохочує розміщення рукопису роботи авторами в мережі Інтернет (наприклад, на arXiv.org або на особистих веб-сайтах). Причому рукописи статей можуть бути розміщенні у відкритих архівах як до подання рукопису до редакції, так і під час його редакційного опрацювання. Це сприяє виникненню продуктивної наукової дискусії, позитивно позначається на оперативності ознайомлення наукової спільноти з результатами Ваших досліджень і як наслідок на динаміці цитування вже опублікованої у журналі роботи. Детальніше про це: The Effect of Open Access.