Kliensalkalmazások fejlesztése

A tantárgy angol neve: Client Application Development

Adatlap utolsó módosítása: 2011. március 18.

Budapesti Műszaki és Gazdaságtudományi Egyetem
Villamosmérnöki és Informatikai Kar
Villamosmérnöki szak, MSc képzés
Számítógép-alapú rendszerek szakirány
Tantárgykód Szemeszter Követelmények Kredit Tantárgyfélév
VIAUM254 2 2/1/0/v 4  
3. A tantárgyfelelős személy és tanszék Dr. Lengyel László,
4. A tantárgy előadója
Név:

 

Beosztás:

 

Tanszék, Int.:

 

Dr. Lengyel László

 

adjunktus

 

Automatizálási és Alkalmazott Informatikai Tanszék

 

Cserkúti Péter

 

mérnök-tanár

 

Automatizálási és Alkalmazott Informatikai Tanszék

 

Benedek Zoltán

 

tanársegéd

 

Automatizálási és Alkalmazott Informatikai Tanszék

 

5. A tantárgy az alábbi témakörök ismeretére épít

A C++, vagy valamely más objektumorientált programozási nyelv ismerete.

6. Előtanulmányi rend
Ajánlott:

A tárgy tematikaütközés miatt nem vehető fel szabadon választható tárgyként a  Szoftvertechnikák (VIAUA218) tárgyat felvevő, vagy azt már korábban teljesítő hallgatók számára.

7. A tantárgy célkitűzése

Egy célorientált hardvereszköz elkészítése és felprogramozása után természetes egy megszokott, PC-ről elérhető felhasználói felület, amely akár egy vastag vagy webes alkalmazáson keresztül teszi lehetővé az új hardvereszköz monitorozását és tulajdonságainak beállítását. Napjainkban egyre inkább teret hódítanak a mobil eszközök mint kliens oldali megoldások. A tantárgy a vastag és a vékony kliensek programozását mutatja be, különös tekintettel a felhasználói felületek tervezésére, a grafikus megjelenítésre és a hálózati kommunikációra. Ezen túlmenően bepillantást nyújt a mobil kliensek fejlesztési lehetőségeibe. Szinte valamennyi korszerű, kliensalkalmazások fejlesztését támogató fejlesztői platform az objektumorientált szemléletet követi. Ennek megfelelően a tárgy ismerteti az objektumorientált szoftvertervezés és modellezés alapjait is (UML alapok, néhány fontosabb architekturális és tervezési minta).

 A hallgatók alkalmasak lesznek arra, hogy az elkészített és felprogramozott célhardverekhez PC-s vékony illetve vastag klienseket készítsenek, valamint az eszközt mobil eszközökről is elérhetővé tegyék. A tantárgy alkalmassá teszi a hallgatókat arra, hogy gyorsan és hatékonyan kényelmes felhasználói felületet tervezzenek a három klienstípusra.  A hálózati kommunikáció programozása szintén súlyponti kérdés: a tantárgy végére a főbb kommunikációs módszerekre kész megoldások állnak a hallgatók rendelkezésére. A témakörök bemutatását illusztratív esettanulmányok kísérik.

 

8. A tantárgy részletes tematikája
  • A kliensoldali alkalmazásfejlesztés három irányvonala: a webes, a vastag kliens és a mobil kliens alkalmazások fejlesztésének lehetőségeinek áttekintése. Felügyelt futtatókörnyezetek jellemzői, objektumorientált fejlesztés felügyelt környezetben.

  • Alkalmazásfejlesztéshez szükséges modern objektumorientált programozási eszközök ismertetése gyakorlati példákkal.

  • Vastag kliens alkalmazások fejlesztése.  Üzenet alapú platformok  Eseményvezérelt alkalmazások, a felhasználói felület kialakítása, űrlapok.

  • A felhasználói felület kialakításának további technikái, vezérlők (control-ok) kezelése, dialógusablakok, menük.

  • Rajz és szöveg megjelenítése.

  • Objektumorientált szoftvertervezés alapjai, UML alapok, fontosabb diagramok.

  • Kliensalkalmazás architektúrák, néhány fontosabb tervezési minta (Document-View, stb.).

  • Kliensalkalmazás architektúra esettanulmány.

  • Többszálú alkalmazások fejlesztése kliensalkalmazások esetében.

  • Többszálú alkalmazások fejlesztése, szinkronizációs technikák.

  • Hálózati kommunikáció (socketek programozása) kliensalkalmazások esetében.

  • Webalkalmazások fejlesztésének alapjai: architektúra, nyelv, kliens oldali szkripttechnológiák bemutatása.

  • Webalkalmazások kiszolgálóoldali fejlesztésének alapjai: a hatékony fejlesztést lehetővé tevő szerveroldali eseményvezérelt programozási modell és a kiszolgálóoldali vezérlőkre épülő megoldások, esettanulmány.

  • Mobilszoftverek fejlesztési lehetőségeinek áttekintése. A szoftverrendszerek mobil elérését lehetővé tevő, gazdag kliensoldali funkcionalitással rendelkező mobilalkalmazások fejlesztésének alapjai. Mobil eszközök sajátosságai. 
9. A tantárgy oktatásának módja (előadás, gyakorlat, laboratórium)

Előadás, gyakorlat.

10. Követelmények    A szorgalmi időszak alatt 1 alkalommal nagy zárthelyi

         Az aláírás feltételei: legalább megfelelő szintű (elégséges) zárhelyi eredmény a szorgalmi időszak végéig.


b.       A vizsgaidőszakban:

          A vizsga írásbeli. A kreditpont megszerzésének feltétele: legalább elégséges vizsgaosztályzat elérése.

Elővizsga az oktatókkal egyeztetve lehetséges.

11. Pótlási lehetőségek
  • A zárthelyihez a TVSZ előírásai szerint mind a szorgalmi, mind a pótlási időszakban 1-1 pótlási lehetőséget biztosítunk.

  • A vizsgák a TVSZ-nek megfelelően pótolhatók

     

12. Konzultációs lehetőségek

Igény szerint előadóval egyeztetve.

13. Jegyzet, tankönyv, felhasználható irodalom
  • Michael J. Donahoo and Kenneth L. Calvert: TCP/IP Sockets in C: Practical Guide for Programmers
  • Forstner Bertalan, Ekler Péter, Kelényi Imre: Bevezetés a mobilprogramozásba

  • Albert István, Balássy György, Charaf Hassan, Erdélyi Tibor, Horváth Ádám, Levendovszky Tihamér, Péteri Szilárd, Rajacsics Tamás:  A .NET Framework és programozása

     

14. A tantárgy elvégzéséhez átlagosan szükséges tanulmányi munka
Kontakt óra42
Félévközi készülés órákra14
Felkészülés zárthelyire16
Házi feladat elkészítése
Kijelölt írásos tananyag elsajátítása 
Vizsgafelkészülés48
Összesen120
15. A tantárgy tematikáját kidolgozta

Név:

Beosztás:

Tanszék, Int.:

Dr. Levendovszky Tihamér

adjunktus

Automatizálási és Alkalmazott Informatikai Tanszék