Korszerű parancsállomány-módszerek

A tantárgy angol neve: Modern Scripting Methods

Adatlap utolsó módosítása: 2006. július 1.

Tantárgy lejárati dátuma: 2009. november 24.

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

Villamosmérnöki Szak

Műszaki Informatika Szak

Választható tárgy

Tantárgykód Szemeszter Követelmények Kredit Tantárgyfélév
VIHI9144 6., 8. 2/0/0/v 3 1/1
4. A tantárgy előadója

Név:

Beosztás:

Tanszék, Int.:

dr. Pongor György

egy. adj.

Híradástechnikai

Verhás Péter

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

Programozás alapjai.

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

Programozás alapjai I és II (Vill. szak) illetve Programtervezés I és II (Informatikai Szak).

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

A hallgatók áttekintést kapnak a modern script programozási megoldásokról, az elérhető script nyelvekről, az egyes megoldások előnyeiről, hátrányairól, és arról, hogy az egyes nyelveket mire szánták, és ehhez képest mire használják az emberek az egyes nyelveket.

Az áttekintést követően a hallgatók megismerkednek egy új script nyelvi implementációval, amelyik a BASIC programozási nyelvet implementálja. Ennek során a hallgatók áttekintést kapnak a konkrét implementáció architektúrájáról, a nyelvi elemző, és közbülső kód generátor, interpreter és más modulok működéséről.

A szemeszter végére a hallgatók a konkrét gyakorlati példa kapcsán tapasztalatot szereznek a következő ismeret-körökben:

  • Script nyelvek összehasonlítása.
  • Közepes méretű rendszerek objektum orientált programozása C nyelven (<2MB forrás kód).
  • Többszálú programozás problematikája.
  • Futási időben betöltendő modulok számára felület definiálása (API) idegen programozók számára, verzió ellenőrzés, régi verziók támogatása (API verzió negotiation).
  • Beépíthető program készítése, külső program számára megfelelő API tervezése.
  • Web programozás lehetőségei kezdve a CGI-től, Web szerver API használatán keresztül egészen a cél web-szerver írásáig
8. A tantárgy részletes tematikája
  • Script nyelvek összehasonlítása, Perl, PHP, Pyton, TCL, XLISP, ScriptBasic.
  • ScriptBasic interpreter általános architektúra
  • Beépíthetőség, "multi-thread aware" feltételek
  • ScriptBasic interpreter modulok áttekintése
  • Beolvasó
  • Lexikális elemző
  • Szintaxis elemző
  • Építő (builder)
  • Értelmező
  • Segéd modulok
  • Memória kezelés
  • Változó kezelés
  • Szimbólumtábla kezelés
  • Többszálú naplózási modul
  • Külső modulok kezelése, külső modul felé API tervezés
  • többszálúság kezelése,
  • miért rosszul tervezett a PHP ill. az Apache modul felülete
  • miért jó a Java JNI felülete
  • Többszálú külső modulok fejlesztése, példa az MT modul
  • Kódolási, dokumentálási konvenciók kialakítása a projektben
9. A tantárgy oktatásának módja (előadás, gyakorlat, laboratórium)

A tárgyból heti 1 alkalommal 2 órás előadást tartunk. A hallgatók a félév során házi feladatot kapnak, amelyet a félév végéig kell beadniuk.

10. Követelmények
  1. A szorgalmi időszakban:
  2. A szorgalmi időszak alatt a hallgatók 1 db házi feladatot kapnak, amelyet a félév végéig kell beadniuk. Az elfogadott házi feladat a vizsgára bocsátás feltétele.

  3. A vizsgaidőszakban: A vizsga szóbeli.

c. Elővizsga: A tárgyból elővizsgát tartunk a szorgalmi időszak utolsó hetében. Az elővizsgára bocsátás feltétele az elfogadott házi feladat.

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

-

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

Igény esetén a hallgatóknak konzultációs lehetőséget biztosítunk.

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

Bármely programozási módszerekkel és a C programozási nyelvvel foglalkozó könyv vagy jegyzet használható.

Ajánlott irodalom:

  • Aho, Hopcroft, Ullman: Számítógép-algoritmusok tervezése és analízise
  • Niklaus Wirth: Algoritmusok + Adatstruktúrák = Programok (Műszaki Könyvkiadó 1982.)
  • További, a hálózaton rendelkezésre bocsátott anyagok.
14. A tantárgy elvégzéséhez átlagosan szükséges tanulmányi munka

(a tantárgyhoz tartozó tanulmányi idő körülbelüli felosztása a tanórák, továbbá a házi feladatok és a zárthelyik között (a felkészülésre, ill. a kidolgozásra átlagosan fordítandó/elvárható idők félévi munkaórában, kredit x 30 óra, pl. 5 kredit esetén 150 óra)):

Kontakt óra

30

Félévközi készülés órákra

10

Házi feladat elkészítése

30

Vizsgafelkészülés

20

Összesen

90

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

Név:

Beosztás:

Tanszék, Int.:

dr. Pongor György

egy. adj.

Híradástechnikai

Verhás Péter