Rövid tematika
A multiplatform fejlesztés előnyei, hátrányai. Áttekintés: C, Java, .NET, Flash/Air, Mono Game. HTML alapú OS-ek. Lehetőségek: C++, HTML5/JS, egyéb technológiák. C++ ismétlés, Fejlesztőeszközök, fordítók, C++ 11, új nyelvi funkciók. Fejlesztési minták: RAII, Kivételkezelés, natív kivételek kezelése platform szinten, Crossplatform technikák, natív interfészek, implementálás platform szinten, preprocessor direktívák, template metaprogramozás. Natív réteg és a platform együttműködése, interoperabilitás: C++/CX, JNI, Objective-C. A Qt bevezetése, Qt object model, gyűjtemény osztályok, fa, élettartam, sharing, signal-slot koncepció, események. Qt koordináta rendszer, rajzolás, QML, hálózat elérés, többnyelvűség, erőforrások. A Tablet és mobil alkalmazások felhasználói felületének kialakítása HTML és CSS segítségével. Modernizer. Typescript/ECMA Script 6 alapú, objektum-orientált alkalmazásfejlesztés. Mobil UI, Single page application architektúra, kliensoldali keretrendszerek. Nagy alkalmazás fejlesztése: architekturális minták, modulok, preprocesszorok, minifikálás, teljesítményelemzés. Hibrid alkalmazások adattárolási kérdései: local storage, IndexedDB. Aszinkronitás, hálózat kezelés, real-time és két-irányú kommunikáció, SignalR/socket.io. Natív HTML/JS alkalmazások: PhoneGap, Titanium (benne: location, kamera, natív mobil funkciók elérése). Node.js.