Budapest University of Technology and Economics, Faculty of Electrical Engineering and Informatics

    Belépés
    címtáras azonosítással

    vissza a tantárgylistához   nyomtatható verzió    

    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, Automatizálási és Alkalmazott Informatikai Tanszék
    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 Training.code=("5NAA8")

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

    A kötelező előtanulmányi rendek grafikus formában itt láthatók.

    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.