Automatic analysis of the use of design patterns in program code
Jazyk: | ruština |
---|---|
Rok vydání: | 2020 |
Předmět: | |
DOI: | 10.18720/spbpu/3/2020/vr/vr20-3101 |
Popis: | Тема выпускной квалификационной работы: «Автоматический анализ использования паттернов проектирования в программном коде». В данной работе изложена сущность подхода к созданию программной системы для автоматического анализа использования паттернов проектирования в исходном программном коде. Рассмотрены методы решения указанной задачи. Проанализированы структуры идентифицируемых паттернов. Для обнаружения паттернов в коде применён статический анализ с использованием синтаксического дерева. В качестве технологий для создания решения были использованы язык программирования C# и пакет SDK для .NET Compiler Platform, более известный как Roslyn. Спроектирована и описана архитектура создаваемого проекта, позволяющая производить масштабирование и добавление новых алгоритмов для обнаружения паттернов проектирования. Реализована программная система, позволяющая автоматически анализировать использование паттернов проектирования Composite, Iterator, Observer, Prototype, Singleton и Template Method в объектно-ориентированном программном коде на языке C#. Созданное решение протестировано на тестовых данных, представленных исходным кодом активно применяемого на практике программного продукта. The subject of the graduate qualification work is «Automatic analysis of the use of design patterns in program code». In the given work the essence of the approach to creation a software system for the automatic analysis of the use of design patterns in the source code is stated. The methods for solving the specified problem are reviewed. The structures of identifiable patterns are investigated. To detect patterns in the code, static analysis using a syntax tree is applied. C# programming language and the .NET Compiler Platform SDK, better known as Roslyn, were used as technologies for creating the solution. The architecture of the created project, which allows scaling and adding new algorithms to detect design patterns, is designed and described. A software system for automatically analysis of Composite, Iterator, Observer, Prototype, Singleton, and Template Method design patterns in the object - oriented program code in C# language is developed. The created solution was tested on test data provided by the source code of a software product actively used in practice. |
Databáze: | OpenAIRE |
Externí odkaz: |