Forráskódanalízis .NET Compiler Platform alapokon

OData támogatás
Konzulens:
Benedek Zoltán
Automatizálási és Alkalmazott Informatikai Tanszék

Napjainkban, a szoftverek fejlődésével és komplexitásuk növekedésével egyre fontosabbá válnak a szoftverfejlesztési folyamatba integrált, a programozók munkáját támogató eszközök illetve módszertanok. A fejlesztés ilyen módú segítése ugyanis nagymértékben hozzájárul jól karbantartható, minőségi szoftverek létrejöttéhez.

A programtervezési minták e módszertanok közé tartoznak, feladatuk pedig, hogy hatékony és rugalmasan megvalósítható megoldásokat kínáljanak a fejlesztés során felmerülő általános kihívásokra, problémákra. Használatukkal a kód egyszerűbbé, jobban átláthatóbbá válik, ezáltal pedig az elkészült szoftver karbantarthatósága is növekszik.

Dolgozatom célja egy olyan szoftver készítése, amely alkalmas a programtervezési minták felismerésére tetszőleges C# nyelvű forráskódban, ezáltal egy hatékony eszközt adva a programozók kezébe, mellyel már a szoftver magas szintű felépítésének automatizált vizsgálatára is lehetőség nyílik. Bár az összes tervezési minta felismerésének megvalósítására nem vállalkozhatom, a szoftver keretrendszer felépítése, valamint egyszerű bővíthetősége lehetőséget biztosít arra, hogy segítségével a későbbiek során további, általam nem detektált tervezési minták is könnyen felismerhetők legyenek.

A tervezési minták detektálásához feltétlenül szükséges a forráskód alapos feltérképezése és átvizsgálása. A .NET Compiler Platform a fordítás menete során

felhalmozott információkat teszi elérhetővé a programozók számára C# illetve Visual Basic nyelven. A platform segítségével tehát a forráskód mély szintű analízise valósulhat meg, és mivel a tervezési minták felismeréséhez a forráskód elemzése nagymértékben szükséges, így a felismerő szoftver megvalósításához ezt a szolgáltatáshalmazt vettem igénybe.

Végül, mivel egy elemző szoftvernél feltétlenül lényeges, hogy pontos találatokat adjon, szoftveremet annak elkészültekor éles környezetben, már létező eredményekkel összehasonlítva is teszteltem, hogy megbizonyosodjak a kapott eredmények helyességéről, ezáltal pedig a program megbízhatóságáról.

Egy ilyen felismerő program használata nagymértékben elősegíti a tervezési minták helyes használatát, ezáltal pedig a szoftverfejlesztési folyamat segítésében és végső soron az elkészült szoftver minőségének növelésében is szerepet játszhat.

Letölthető fájlok

A témához tartozó fájlokat csak bejelentkezett felhasználók tölthetik le.