ВИКОРИСТАННЯ КІНЦЕВИХ АВТОМАТІВ ТА ЇХ ОБ'ЄКТНО-ОРІЄНТОВАНИХ МОДЕЛЕЙ ПРИ ПРОЕКТУВАННІ ТА РЕАЛІЗАЦІЇ ПОВЕДІНКИ ПРОГРАМНИХ СИСТЕМ

Дмитро Нікітін
2021 DÉBATS SCIENTIFIQUES ET ORIENTATIONS PROSPECTIVES DU DÉVELOPPEMENT SCIENTIFIQUE VOLUME3   unpublished
Нікітін Дмитро Михайлович здобувач вищої освіти факультету комп'ютерних наук Харківський національний університет радіоелектроніки НАУКОВИЙ КЕРІВНИК: ORCID ID: 0000-0001-5981-4760 Голян Віра Володимирівна канд. техн. наук, доцент, доцент кафедри програмної інженерії Харківський національний університет радіоелектроніки УКРАЇНА Вступ. У сучасному світі більшість програмних продуктів є високонавантаженими, розподіленими, масштабованими системами. Розробка будь-якої програми, чи то невеликої
more » ... ури з обробки інформації, чи комплексного програмного продукту, складається з декількох етапів, грамотне проектування та реалізація яких є обов'язковою умовою для досягнення успішного результату. При розробці програмного забезпечення основоположним етапом є проектування -повне планування того, що доведеться розробляти, в які терміни, з якими вихідними даними і очікуваним результатом. Особливістю сучасних програмних проектів є використання під час розробки процесу рефакторингу [1] -регулярної перебудови вихідного коду програми (відбувається без зміни функціоналу) для полегшення підтримки змін логіки та поліпшення розуміння коду. Для виконання рефакторингу використовується велика кількість патернів та методик, які описують шляхи покращення коду. Мета роботи. Метою даної роботи є аналіз програмних рішень, алгоритмів, патернів проектування, які базуються на кінцевих автоматах з метою виявлення існуючих недоліків, та їх модернізація для оптимізації проектування та реалізації поведінки програмних систем. Матеріали і методи. У роботі було використано такі методи: − методи теорії автоматів; − методи дискретної математики; − патерни проектування об'єктно-орієнтованих програм; − методи побудови і аналізу алгоритмів; − абстрагування (виділення тільки основних властивостей програмної системи; абстрагування від апаратної взаємодії при виконанні операцій вводувиводу);
doi:10.36074/logos-05.02.2021.v3.24 fatcat:u2xdbbrwfzdkpcd74matp54n5i