iOS alkalmazás és Kitura alapú szerver tervezése és fejlesztése Swift nyelven

OData támogatás
Konzulens:
Dr. Forstner Bertalan
Automatizálási és Alkalmazott Informatikai Tanszék

Azóta, hogy 2007-ben Steve Jobs bemutatta az iPhone-t, a legelső okostelefont, ahogy azt ma a világ ismeri, a telefonok váltak a legnépszerűbb elektronikai eszközökké. Manapság már szinte mindenre ezeket az eszközöket használjuk, ezekkel tartjuk a kapcsolatot a barátainkkal, intézzük a fontos ügyeinket, fizetünk velük a boltban vagy parkolásért, és egyre többet szeretnénk belőlük kihozni. Korábban az alkalmazások többnyire kicsik és egyszerűek voltak, viszont ahogy egyre nőttek az igények, úgy velük növekedett a programok mérete is. Emiatt a növekedés miatt az alkalmazások fejlesztése és karbantartása egyre nehezebb feladatnak bizonyul, melyet leginkább egy jól megtervezett és kivitelezett architektúrával oldhatunk meg.

A szakdolgozatom főtémájaként egy iOS alkalmazást, és az azt kiszolgáló szervert terveztem meg, és fejlesztettem le Swift nyelven. A közös nyelv használatának egy nagy előnye volt, hogy bizonyos kódrészeket mindkét oldalon fel tudtam használni. A dolgozatomban ismertetem az Apple-féle MVC, az MVVM és a VIPER architektúrák felépítését, melyek az alkalmazásfejlesztés során gyakran használatosak, illetve hogy ezeknek milyen előnyei és hátrányai vannak. Bemutatom azt is, hogy manapság friss technológiaként milyen szerveroldali Swift könyvtárak léteznek (Perfect, Vapor és Kitura), ezek hogyan teljesítenek más keretrendszerekkel szemben, és hogy szerintem miért vár rájuk nagy jövő.

Továbbá szemléltetem, hogy milyen szempontok alapján terveztem meg és hogyan fejlesztettem le a klienst, valamint a szervert. Ezek során több nehézségbe is ütköztem, például, hogy az adatok hogyan alakíthatóak szerveroldalon - Kiturával - a megfelelő JSON formára, melynek okát bővebben ki is fejtem.

A problémák megoldása után pedig bemutatom az elkészült alkalmazást. Lezárásként végül összefoglalom a fejlesztés alatta szerzett tapasztalataimat, ezenfelül felvázolom, hogy szerintem milyen továbbfejlesztési lehetőség rejlik a projektben.

Szakdolgozatom témája munkámmal is összefüggésben van, mely nagyban hozzájárult a dolgozat elkészítéséhez.

Letölthető fájlok

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