JavaScript technológiák

Általános információk

Óraszám
2 gyakorlat
Előfeltétel
Webfejlesztés 2.
Célkitűzés
Betekintés a modern webprogramozás világába a JavaScript alapú technológiákon keresztül. A félévben a modern JavaScript programozás nyelvi elemeitől a klienstől a webszerveren keresztül az adatbázis szerverig tekintjük át a JavaScript alapú lehetőségeket.

Számonkérés

A feladatról

Az értékeléshez egy beadandó feladat megírása szükséges.

A beadandónak kell lennie kliens- és szerveroldali részének, értelemszerűen mindkét helyen JavaScript alapú webes technológiákat kell használni. A megvalósításhoz lehet használni az óraitól eltérő keretrendszereket, ha valaki már ismer ilyet vagy szeretne megismerni egyet. A szerver lehet klasszikus webszerver, de lehet egy egyoldalas alkalmazást kiszolgáló REST API végpont is, vagy akár mindkettő egyszerre. Az adatok tárolását nem kell külön adatbázis-szerverrel elvégezni (persze lehet), elég fájlban letárolni (pl. a NeDB segítségével).

Az elkészítendő beadandó egy kisebb alkalmazás legyen. Lehet saját téma, de akár választhatsz a lenti ötletek közül, amelyek a Webfejlesztés 2. tárgy korábbi beadandóit gondoltatják újra full-stack JavaScript technológiák felhasználásával. Ha bizonytalan vagy a témaötletedet illetően, akkor írj nekem!

Néhány beadandó ötlet:

Beadás

Ha tudod, akkor a beadandódat tedd fel Github projektként, és csak a linkjét küldjed el nekem. Ha nem ismered a Githubot, az sem gond, akkor a tömörített projektmappát küldd el nekem. A projektet mindkét esetben úgy készítsd elő, hogy a node_modules mappa ne legyen benne (Github esetében a .gitignore fájlba is be kell rakni).

Írj egy rövid readme.md fájlt arról, hogy hogyan kell feltelepíteni az alkalmazást. (Tipikusan npm install és npm start vagy node server.js szokott lenni.)

A beadandót személyesen be kell mutatni. Ezen az űrlapon keresztül lehet jelezni, hogy ki mikor jönne.

Beadási határidő: január 17.

Bemutatás napja: január 18. hétfő, 2.420-as szoba.

Értékelés

A jegyszerzés feltételei:

  • Beadandó beadása és sikeres bemutatása
  • Véleménykérő űrlap kitöltése (később lesz felrakva)

Tematika

  1. Bevezetés, áttekintés
    • Elvárások tisztázása
  2. JavaScript modern nyelvi elemei
  3. JavaScript modern nyelvi elemei (folytatás), HTML absztrakciók (jQuery)
  4. HTML és alkalmazás absztrakciók
  5. Alkalmazás absztrakciók
  6. Alkalmazás absztrakciók és modularizálás
  7. React és Flux (Nézetabsztrakció és alkalmazáskoncepció)
  8. Flux és Redux (Nézetabsztrakció és alkalmazáskoncepció)
  9. Redux
  10. Node.js és NPM, Node mint webszerver
    • Diasor
    • Node.js filozófia
    • Tipikus feladatok a szerveroldalon
      • Kimenet
      • Bemenet
      • Sablonok
  11. PHP funkcionalitások expressben
    • Diasor
    • Node.js filozófia
    • Tipikus feladatok a szerveroldalon
      • Kimenet
      • Bemenet
      • Sablonok
      • Perzisztálás
      • Munkamenet
      • Autentikáció (Passport.js)
  12. REST végpont kialakítása
    • REST végpont építése Express-szel
    • Memória (NeDB)
    • Fájl (NeDB)
    • MongoDB telepítése
    • parancssor
    • mongodb library
    • mongoose library
  13. Kliensoldali adattárolás, AJAX és aszinkronitás, Websocket

Segédanyagok, dokumentációk

Elektronikus tananyagok

Oktatók

Horváth Győző (horvath pont gyozo kukac inf pont elte pont hu)