Webportálok fejlesztése

A tantárgy angol neve: Development of WEB Portals

Adatlap utolsó módosítása: 2018. január 23.

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

Villamosmérnöki szak

Mérnök informatikus szak 

Szabadon választható tantárgy

 

BSc és MSc képzés

 

Szabadon választható tantárgy
Tantárgykód Szemeszter Követelmények Kredit Tantárgyfélév
VIAUJV83   4/0/0/v 4  
3. A tantárgyfelelős személy és tanszék Dr. Dunaev Dmitriy,
A tantárgy tanszéki weboldala http://www.aut.bme.hu/Portal/webportalok
4. A tantárgy előadója

Név:

Beosztás:

Tanszék, Int.:

Gincsai Gábor

Tanársegéd

AAIT

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

A tárgy a HTML, CSS, JavaScript és C# nyelv alapvető ismeretére épít. A tárgy felvétele csak azon hallgatók számára ajánlott, akik ezekkel a technológiákkal tisztában vannak.

6. Előtanulmányi rend
Kötelező:
NEM ( TárgyTeljesítve("BMEVIAU9083") )

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:

A tárgy felvételéhez kötelező előtanulmányi rend nincsen. A HTML, CSS, JavaScript, C# nyelv ismerete viszont szükséges a tárgy teljesítéséhez, azonban ezekkel a témákkal a tárgy bevezető szinten nem foglalkozik.

A tantárgyat nem vehetik fel azok, akik már előzőleg teljesítették a VIAU9083 (Webportálok fejlesztése) tantárgyat.

 

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

A tárgy keretében a hallgatók megismerkednek a modern webes portálokkal szemben támasztott követelményekkel, és megoldásokat látnak azok gyakorlati megvalósítására. A cél, hogy a hallgató a webes portálokat komplex, a gyakorlatban általában kritikus fontosságú megoldásként lássa, ismerje az ilyen jellegű projektekhez tartozó problémakört, és tisztában legyen a lehetséges megoldási módokkal. A tárgy átfogó és teljes képet ad a portálok különböző felhasználási területeiről, külön hangsúlyt fektetve az architektúra, a teljesítmény és a biztonság kérdéseire.

Az tárgyhoz kapcsolódó laborok keretében a hallgatók számára lehetőség nyílik az előadás anyagának gyakorlati alkalmazására is az ASP.NET platformon legújabb verziójával.

 

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

A tantárgy az alábbi témaköröket dolgozza fel:

  • Kliens szerver kommunikáció.
  • Szinkron és aszinkron felhasználói felületek.
  • Felhasználó azonosítás, jogosultság kezelés.
  • Biztonság.
  • Teljesítmény.
  • Komplex alkalmazás fejlesztése ASP.NET Core MVC segítségével.

Tervezett órai bontás a tantárgy oktatása során

Hét

Előadás

Gyakorlat

1

Tantárgykövetelmények ismertetése.

TCP/IP protokoll, IP címzés, névfeloldás, HTTP protokoll áttekintése.

Opcionális gyakorlat

Adatbázis kezelési megoldások átismétlése EF Core segítségével.

2

Felhasználói felületek tervezése.

Webalkalmazás tervezése. (Funkciók, felhasználói felület, és adatbázis tervezés.)

3

Szerver oldali fejlesztés alapjai. Beérkező kérések feldolgozása, szerver oldali alkalmazás architektúra.

ASP.NET Core MVC projekt létrehozása, felépítésének áttekintése, beállítási lehetőségek.

4

Kliens és szerver oldali állapotkezelési megoldások. (Session, cookie, storage)

Szerver oldali renderelés (Razor)

Adatbázis kezelés, adatelérés EF Core segítségével ASP.NET alkalmazásba.

5

Felhasználó azonosítás és jogosultság kezelés.

Külső hitelesítési szolgáltatások működése.

Impersonation és trusted identity model.

Összetettebb oldalak készítése.

Pl.: keresés, találati lista

6

Szinkron és aszinkron felhasználói felületek. AJAX, Cross domain hívások (CORS, JSONP).

Egységes arculat megvalósítása, site layout és CSS segítségével.

7

Webszolgáltatások és REST API.

Felhasználókezelés ASP.NET Identity-vel. Űrlap alapú és külső hitelesítési szolgáltatón keresztüli (pl.: Google) bejelentkezés megvalósítása.

8

Szerver oldali push modell.

Longpolling, websocket, SignalR

Adminisztrátori funkciók megvalósítása.

Pl.: Termék feltöltés, kategorizálás

9

SSL és tanúsítványok.

Felhasználói élmény javítása aszinkron kérésekkel. Web API, AJAX, UI komponensek (pl.: typeahead)

10

Biztonság az interneten. Biztonsággal kapcsolatos alapfogalmak.

Újrahasznosítható komponensek készítése (View komponensek, Tag helperek).

11

Szerver oldali programozási hibák: SQL injection, cross-site scripting, buffer overrun, cross-site request forgery.

Külső komponensek integrálása NuGet packegek segítségével.

12

Teljesítmény, skálázhatóság, tesztelés, monitorozás.

SignalR használata ASP.NET Core környezetben.

13

Tartalék időpont elmaradó előadás esetére.

SSL használata, kereső barát URL-ek kezelése, sitemap, meta tagek.

14

Házi feladat bemutatás

Tartalék időpont elmaradó gyakorlat esetére.

9. A tantárgy oktatásának módja (előadás, gyakorlat, laboratórium)

Előadás és számítógépes labor. A számítógépes labor során az előadáson hallottak begyakorlására van lehetőség Visual Studio és ASP.NET Core legújabb verzióinak a használatával.

10. Követelmények

        A szorgalmi időszakban:

A hallgatóknak a szorgalmi időszakban kötelező egy házi feladat részletes specifikálása (10. hétig), illetve a specifikált feladat elkészítése és bemutatása ASP.NET Core platformon a szorgalmi időszak végéig.A hallgató a félév elismerését jelentő félév végi aláírást csak akkor kaphat, ha a specifikációja és a házi feladata elfogadásra került.

A vizsgaidőszakban:

A tantárgy anyagából a hallgatók szóbeli vizsgát tesznek. A félév végi osztályzatot a vizsgajegy alapján kapják.

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

A házi feladat specifikációját a 10. héten kell beadni. Ezt különeljárási díj mellett a 11. hét végéig van lehetőség pótolni (a TVSZ 16§ (2) pontja alapján).

A házi feladatot a szorgalmi időszak végéig be kell adni. Ezt később pótolni különeljárási díj mellett lehet a pótlási héten előre meghirdetett időpontban.

Elégtelen vizsga a TVSZ szabályai szerint pótolható.

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

Igény szerint az előadókkal egyeztetve.

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

1.     Jason De Oliveira, Michel Bruchet: Learning ASP.NET Core 2.0

2.     Dustin Metzgar: .NET Core in Action, ISBN 9781617294273

3.     Freeman, Adam: Pro ASP.NET Core MVC

4.     Introducing ASP.NET Core 2.0 - Video

5.     Introduction to ASP.NET Core

6.     Getting Started with ASP.NET Core in Visual Studio 2017 (Web 101) - Video

7.     MusicStore ASP.NET Core MVC

8.     Elektronikus tanszéki jegyzetek

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

Kontakt óra

56

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

6

Készülés laborra

14

Házi feladat elkészítése

12

Felkészülés vizsgára

32

Összesen 

120

15. A tantárgy tematikáját kidolgozta
Név:

 

Beosztás:

 

Tanszék, Int.:

 

Dr. Charaf Hassan

 

docens

 

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

 

Balássy György

 

tanszéki mérnök

 

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

 

Gincsai Gábor

 

tanársegéd

 

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