Способи трансляції мови Typescript у проміжну мову CIL платформи .NET

Вантажиться...
Ескіз

Дата

2021

Назва журналу

Номер ISSN

Назва тому

Видавець

КПІ ім. Ігоря Сікорського

Анотація

Актуальність теми. У зв’язку з стрімким ростом популярності мови програмування Javascript все більше компаній і розробників починають використовувати її у своїх проектах. Але підтримка коду у великих програмах стає важкою через один з найбільших недоліків мови – динамічну типізацію. Для усунення цього недоліку компанія Microsoft у 2012 році запропонувала нову мову програмування під назвою Typescript. Розроблена мова є надмножиною JavaScript яка додає статичну типізацію і транслюється у Javascript відповідно. Завдяки набутої популярності мови програмування Javascript та появи її типізованої версії, виникла ідея поєднати Typescript і платформу .NET, а саме – створити транслятор мови програмування Typescript у проміжну мову CIL. Об’єктом дослідження є процес трансляції конструкцій мов програмування у проміжну мову CIL платформи .NET. Предметом дослідження є способи трансляції мови Typescript у проміжну мову CIL платформи .NET. Мета роботи: прискорення процесу трансляції мови програмування Typescript у проміжну мову CIL платформи .NET; розробка більш швидких способів трансляції умовних конструкцій, циклів, функцій, рядків та масивів; порівняльний аналіз розроблених способів. Наукова новизна полягає в наступному: 1. Вперше запропоновано спосіб безпосередньої трансляції умовних конструкцій мови Typescript у проміжну мову CIL платформи .NET, який дозволяє згенерувати код з більш високою швидкодією. 2. Вперше запропоновано спосіб безпосередньої трансляції циклічних конструкцій мови Typescript у проміжну мову CIL платформи .NET, який дозволяє згенерувати код з більш високою швидкодією. 3. Вперше запропоновано спосіб безпосередньої трансляції функцій рядків та масивів мови Typescript у проміжну мову CIL платформи .NET, який дозволяє згенерувати код з більш високою швидкодією. 4. Вперше виконано порівняльний аналіз розроблених способів із існуючим рішенням, який показав ефективність запропонованих способів. Практична цінність отриманих в дисертації результатів полягає в тому, що запропоновані способи трансляції мови Typescript у проміжну мову CIL платформи .NET та розроблений тестовий транслятор підтверджують, що безпосередня трансляція можлива і ефективна. Ці результати є підставою для створення у майбутньому повноцінного транслятора мови Typescript у платформу .NET, що дозволить збільшити популярність обраних технологій, залучити більше розробників для використання платформи .NET у розробці серверної частини додатків, що використовують мову програмування Typescript чи Javascript для розробки клієнтської частини. Апробація роботи. Основні положення і результати роботи були представлені та обговорювались на ХІІI науковій конференції магістрантів та аспірантів «Прикладна математика та комп’ютинг» ПМК-2020 (Київ, 18-20 листопада 2020 р.). Публікації. Результати дисертації викладено в наукових працях, у тому числі: - тези до доповіді на ХІІI конференції молодих вчених ПМК-2020 року за темою «Аналіз способів трансляції мови Typescript у проміжну мову CIL платформи .NET»; - стаття до наукового, фахового журналу «Комп'ютерно-інтегровані технології: освіта, наука, виробництво» випуск №42 за темою «Cпосіб трансляції конкатенації рядкових виразів мови Typescript у проміжну мову CIL платформи .NET»; Структура та обсяг роботи. Магістерська дисертація складається з вступу, п’яти розділів та висновків. У вступі подано загальну характеристику роботи, зроблено оцінку сучасного стану проблеми, обґрунтовано актуальність напрямку досліджень, сформульовано мету і задачі досліджень, показано наукову новизну отриманих результатів і практичну цінність роботи, наведено відомості про апробацію результатів і їхнє впровадження. У першому розділі розглянуто існуючі методи трансляції мови Javascript у проміжну мову CIL платформи .NET, а також проведений аналіз, який дає змогу визначити основні переваги та недоліки цих підходів. У другому розділі розглянуто платформу .NET, її розвиток та архітектуру. Проаналізовано основні інструкції мови CIL та наведено список інструкцій у вигляді таблички тих, що будуть використані у запропонованих способах. У третьому розділі описано запропоновані способи трансляції масивів, рядків, циклічних та умовних конструкцій, функцій, змінних та операцій над ними. У четвертому розділі розглянуто створення тестового транслятора на основі запропонованих способів, а також його інтеграцію у утиліту dotnet. У п’ятому розділі проаналізовано швидкодію згенерованого коду тестовим транслятором у порівнянні з результатом роботи транслятора JScript на прикладі певних задач. У висновках стисло представлені результати проведеного дослідження. Дисертація представлена на 82 аркушах, містить 70 ілюстрацій, 5 таблиць, 4 додатки та посилання на список використаних літературних джерел.

Опис

Ключові слова

компілятор, генератор коду, compiler, code generator

Бібліографічний опис

Іваненко, А. Р. Способи трансляції мови Typescript у проміжну мову CIL платформи .NET : магістерська дис. : 123 Комп’ютерна інженерія / Іваненко Антон Романович. – Київ, 2021. – 93 с.

DOI