Kliensoldali technológiák

A tantárgy angol neve: Client Side Technologies

Adatlap utolsó módosítása: 2017. június 27.

Budapesti Műszaki és Gazdaságtudományi Egyetem
Villamosmérnöki és Informatikai Kar

Mérnök informatikus szak, BSc képzés
Szoftverfejlesztés szakirány
Elágazó szakirány-tárgy

Tantárgykód Szemeszter Követelmények Kredit Tantárgyfélév
VIAUAC02 6 2/1/0/v 4  
3. A tantárgyfelelős személy és tanszék Dr. Kővári Bence András,
A tantárgy tanszéki weboldala https://www.aut.bme.hu/Course/BMEVIAUAC02
4. A tantárgy előadója

NévBeosztásTanszék
Dr. Charaf Hassanegyetemi tanárAutomatizálási és Alkalmazott Informatikai Tanszék
Dr. Kővári BencedocensAutomatizálási és Alkalmazott Informatikai Tanszék

 

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

Szoftvertechnikák

6. Előtanulmányi rend
Kötelező:
(Szakirany("AMINszoftfejlAUT", _) VAGY
Szakirany("AMINszoftfejlIIT", _) VAGY
Szakirany("AMINszoftfejlMIT", _) VAGY
Szakirany("VIABI-SOFTWE", _) )


A fenti forma a Neptun sajátja, ezen technikai okokból nem változtattunk.

A kötelező előtanulmányi rend az adott szak honlapján és képzési programjában található.

Ajánlott:


Ajánlott tárgyak: 

Szoftvertechnikák, Mobil- és webes szoftverek

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

A tárgy célja, hogy a hallgatók betekintést nyerjenek a kliensoldali alkalmazások fejlesztésének alapelveibe és meghatározó technológiáiba. A tárgy keretében bemutatásra kerülnek a legfontosabb felhasználói platformok (desktop, tablet, mobil), valamint az alkalmazás-felületek fejlesztésének rájuk vonatkozó ergonómiai alapelvek. A hallgatók megismerkednek a .NET futtatókörnyezet korszerű vastagkliens fejlesztéséhez szükséges eszköztáraival, melyek mellett hasonló súllyal megjelennek a vékonykliens technológiák is (pl. ASP.NET, HTML5, JavaScript). Tárgyalásra kerülnek az adatkötési megoldások, valamint az űrlap generálási technikák. A tárgy különböző tervezési kérdéseket érint: az MVC/MVVM tervezési minták kapcsán a hallgatók megtapasztalhatják, miként lehetséges a felület és a mögöttes logika (és ezáltal a fejlesztő és a designer munkájának) szétválasztása. A tárgy szerves részét képezik a gyakorlati foglalkozások, melyek lehetőséget biztosítanak a hallgatók számára, hogy az előadáson tanultakat maguk is kipróbálhassák.

 

A tantárgy követelményeit eredményesen teljesítő hallgató képes lesz:

·         (K2) bemutatni az alapvető kliensoldali technológiákat, rámutatni azok kapcsolatrendszerére és jellegzetességeire, egymáshoz viszonyított előnyeire és hátrányaira

·         (K3) egyszerűbb kliensalkalmazások fejlesztésére XAML technológiával

·         (K3) egyszerűbb webes alkalmazások fejlesztésére Angular technológiával

·         (K2) felsorolni és felismerni a Gestalt törvények és néhány alapvető ergonómiai alapelv használatát

8. A tantárgy részletes tematikája

Az előadások tematikája:

Előadás

Előadás anyaga

1.

A kliensoldali alkalmazások helye és jellegzetességei a többrétegű architektúrákban, kliensoldali tervezési minták, hibakezelés, naplózás, elnevezési konvenciók

2.

Vállalati és consumer alkalmazások tervezésének ergonómiai megfontolásai

3.

ASP.NET – REST, Routing, Model, View és Controller értelmezése és szerepe, segédosztályok készítése

4.

TypeScript nyelvi elemei, fejléc fájlok, osztályok, interfészek, anonim függvények

5.

TypeScript fordítás, statikus típusosság, szintaxis

6.

JavaScript adatkezelés, adatkötés, input validáció (Angular)

7.

JavaScript adatkezelés, adatkötés, input validáció (Angular)

8.

Windows Store alkalmazások fejlesztése (architektúra, programozási modell, funkciók áttekintése)

9.

GDI, GDI+ problémái, XAML, szálkezelés, Dependency/Attached properties, Visual, DPI független rajzolás, aszinkron programozás

10.

Vezérlők, Adatkötés, sablonok, erőforrások, stílusok, triggerek, eseménykezelés, MVVM, dokumentumkezelés

11.

Érintőképernyős alkalmazások tervezése, platformok (iOS, Android, Windows Store) összehasonlítása

12.

Multiplatform mobilfejlesztés alapjai

13.

Multiplatform mobilfejlesztés – Szenzorok, tervezési minták

14.

Multiplatform mobilfejlesztés – HTML5 alapú technológiák (Electron, Cordova)

Számítógéptermi gyakorlatokon az aktuális előadások anyagára épülő feladatok kerülnek megoldásra:

Gyakorlat

Gyakorlat anyaga

1.

JavaScript ismétlés

2.

ASP.NET MVC alapfunkcióinak megismerése egy példaalkalmazáson keresztül

3.

TypeScript megismerése egy példaalkalmazáson keresztül

4.

WPF alapfogalmai, Stílusok, Sablonok, DependencyProperty-k

5.

Windows Store alkalmazás készítése, MVVM tervezési minta

6.

Kliens oldali adatkötés a weben

7.

Mobil alkalmazás tervezése és fejlesztése

 

 

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őszakban:

1.      Az ismeretek átfogó és részletes áttekintését a szorgalmi időszak során 1 alkalommal, 5-7. hét környékén íratott nagyzárthelyivel (összegző értékelés) mérjük, valamint

2.      a gyakorlást a gyakorlatokon elvégzett feladatok biztosítják, amelyekről még a gyakorlat során jegyzőkönyvet kell készíteni, és beadni (részteljesítmény értékelés), valamint

3.      a szorgalmi időszak során egy kiadott nagy házi feladatot kell önállóan megoldani és beadni (részteljesítmény értékelés).

 

A félév végi aláírás feltételei:

    • a hallgató legalább 5 gyakorlat jegyzőkönyvét, valamint a hozzá tartozó programot futtatható állapotában, forráskód mellékelésével, határidőre beadta, és ezek értékelésének átlaga eléri az elégséges (2) szintet, és
    • a nagyzárthelyi dolgozat eléri az elégséges (2) szintet, és
    • a hallgató a gyakorlatokat rendszeresen látogatta (hiányzása nem haladja meg a TVSz 14.§ (3) szerint megengedett mértéket).
    • a hallgató a kiadott házi feladatot a kijelölt határidőig beadta és annak értékelése eléri az elégséges (2) szintet

 

A vizsgaidőszakban:

írásbeli vizsga.

 

 

A zárthelyi 30%-ban, a házi feladat 20%-ban, a vizsga 50%-ban számít az érdemjegybe

11. Pótlási lehetőségek

A zárthelyi pótlására egy alkalommal, a félév elején meghirdetett (zárthelyit 2-3 héttel követő) időpontban van lehetőség.

          A házi feladat pótlólagos leadása a pótlási időszakban kijelölt időpontig lehetséges.

 

 

Gyakorlatok pótlására nincs lehetőség. Ugyanakkor az 5 teljesített gyakorlatba beszámítjuk az indokolt (pl. orvosilag igazolt) távolmaradást és a tanulmányi szünetek miatt elmaradt alkalmakat is. 

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

Igény szerint az előadóval és a gyakorlatvezetővel egyeztetve. 

13. Jegyzet, tankönyv, felhasználható irodalom

·         Adam Nathan: WPF 4.5 Unleashed, 2013 Sams Publishing, ISBN: 978-0672336973

·         Christopher Nance: TypeScript Essentials, 2014, Packt Publishing, ISBN: 978- 1783985760

·         Matt Frisbie: Angular 2 Cookbook - Second Edition, 2017, Packt Publishing, ISBN: 978-1785881923

·         Christian Nagel, Jay Glynn and Morgan Skinner: Professional C# 5.0 and .NET 4.5.1, Wrox, ISBN: 978-1118833032

14. A tantárgy elvégzéséhez átlagosan szükséges tanulmányi munka

Kontaktóra

42

Készülés előadásokra

6

Házi feladat elkészítése

20

Készülés zárthelyire

13

Készülés gyakorlatra

7

Vizsgafelkészülés

32

Összesen

120

15. A tantárgy tematikáját kidolgozta

Név:

Beosztás:

Tanszék, Int.:

Dr. Charaf Hassan

egyetemi tanár

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

Dr. Kővári Bence

docens

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

Albert István

mérnöktanár

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

IMSc tematika és módszer

A tananyag mélyebb megértésére a házi feladat egyes részfázisaihoz kapcsolódó extra részfeladatok, illetve a laborgyakorlatok opcionális feladatainak megoldásával nyílik lehetőség. Ezek az extra részfeladatok segítenek jobban megérteni az előadáson kevésbé részletezett ismereteket is. 

IMSc pontozás

IMSc pontok a következő módon szerezhetők:

·         Extra technológiák, komplexebb megoldások alkalmazása a házi feladatban (maximum 20 pont)

 

Az IMSc pontok megszerzése a programban nem résztvevő hallgatók számára is biztosított.