Objektumorientált szoftverfejlesztés előnyei és hátrányai beágyazott környezetben

OData támogatás
Konzulens:
Dr. Kovácsházy Tamás
Méréstechnika és Információs Rendszerek Tanszék

Manapság beágyazott környezetben a C programozási nyelv a legelterjedtebb. Ennek oka egyrészt a C nyelv azon kedvező tulajdonsága, hogy alacsonyabb (regiszter) és magasabb (bonyolult algoritmusok) szintű dolgokat is le tudunk vele írni, másrészt fontos szempont az is, hogy a bekövetkező eseményekre minél rövidebb idő alatt tudjunk választ adni (real-time követelmény). Egyes feladatok megoldása viszont sokkal szemléletesebb objektumorientált modell alkalmazásával. Az objektumorientált nyelvek közül a C++ jöhet számításba, melynek segítségével az egyre növekvőbb méretű beágyazott projektek is átláthatóbban implementálhatóak (az absztraktabb, magasabb szintű megvalósítás miatt). Habár C-ben is megvalósíthatunk “osztályokat” struktúrák és függvénypointerek segítségével, a C kód így is nehézkesen olvasható és nehezebben érthető lesz.

A félév során elkezdtem foglalkozni a témával, ami a következőkből állt: irodalomkutatás, C++ elemek vizsgálata, célalkalmazás vizsgálata.

1. Az irodalomkutatás többek között internetes fórumok és cikkek böngészéséből állt, mely során megismertem pár szabványt, ezek jellemzőit:

- MISRA C++, JSF C++, EC++, ISO C++, Cert C++

2. Alacsonyabb szinten (assembly) elkezdtem vizsgálni a C++ nyelvi elemeit (egyelőre nem beágyazott platformon). A vizsgált elemek többek között:

- osztályok,

- osztályok statikus taggal,

- konstruktorok, destruktorok.

3. A külső konzulenssel együtt kiválasztott alkalmazást elkezdtem átalakítani a következő szempontok szerint:

- az eredeti környezetéből kivéve olyan átalakításokat végeztem rajta, melyeknek köszönhetően fordítható és futtatható az általam használt gépen (melyen unix alapú operáció rendszer fut), ez az átalakítás még folyamatban van,

- a szerkezetét áttekintve objektumorientált megvalósítási tervek születtek.

Letölthető fájlok

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