190 likes | 254 Views
Modern Scripting Megoldások. Peter Verh á s January 2002. Tartalom. Tematika Megbeszélés Script nyelvek összehasonlítása ScriptBasic általános áttekintés. Félévi tematika. 14 hét 1db házifeladat vizsga. Tematika. 5. Hét • Preprocesszor • Külső modulok • ScriptBasic API 6. Hét
E N D
Modern Scripting Megoldások Peter Verhás January 2002
Tartalom • Tematika Megbeszélés • Script nyelvek összehasonlítása • ScriptBasic általános áttekintés
Félévi tematika • 14 hét • 1db házifeladat • vizsga
Tematika 5. Hét • Preprocesszor • Külső modulok • ScriptBasic API 6. Hét • Beépíthetőség, "multi-thread aware" feltételek 7. Hét • 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 8. Eszter SB Engine Socket Programozás 9. Eszter SB Engine HTTP 10. Eszter SB Engine • Writing a web server • CGI module 11. Hét • Többszálú külső modulok fejlesztése, példa az MT modul 12. Hét • Kódolási, dokumentálási konvenciók kialakítása a projektben 1. Hét • Tematika megbeszélése • Script nyelvek összehasonlítása, JavaScript, Perl, PHP, Pyton, TCL, XLISP, ScriptBasic. • ScriptBasic általános áttekintés 2. Hét • ScriptBasic interpreter általános architektúra • Lexer modul, szintaxis ellenőrzés, builder, végrehajtás 3. Hét • ScriptBasic interpreter modulok áttekintése • Beolvasó • Lexikális elemző • Szintaxis elemző • Építő (builder) • Értelmező 4. Hét • Segéd modulok • Memória kezelés • Változó kezelés • Szimbólumtábla kezelés • Többszálú naplózási modul
Script nyelvek összehasonlítása • Perl • JavaScript • PHP • Python • TCL • XLISP
Perl • www.perl.org • 1987 – • Verziók: 1.0, 3.0, 4.0, 5.0 • Most 6.0 tesztelés alatt
JavaScript • Csak böngészőkben • Nem általános célú script nyelv
PHP • Personal Homepage Tool • Perl utánzat kihagyva a Perl bonyolultságát • 1994- • Első változat Perl-ben volt megírva • Verziók: 1.0, 3.0, 4.0
Python • http://www.python.org • 1990 – • Jól beépíthető, és modulokkal kiegészíthető nyelv
TCL • Tool Command Language • John Ousterhout • 1987 – (DEC) • Primitív szintaktikájú nyelv • Beépíthető és modulokkal kiegészíthető • http://tcl.activestate.com/doc/tclHistory.html
XLISP • http://www.mv.com/ipusers/xlisper/ • David Betz • Lisp an extension of the Scheme language
Mi a ScriptBasic • BASIC • Scripting • Hordozható • 4E • Fordított értelmezett • Többszálú felkészült
BASIC • Többen programoznak BASIC nyelven, mint ahány programozó van a világon. • Pillanatok alatt meg lehet tanulni, nem rettenek el tőle, mint a Perl-től
Scripting • Egyszerű programot írni • kevés deklaráció • Automatikus memória kezelés • Automatikus típus konverzió
Hordozható • Windows NT • UNIX • Minimális eltérés a kér rendszer közötti implementációban
4E • Easy to Embed, Easy to Extend • Forrás szinten módosítható • Külső modul függvény és parancs definiálásra • Belső preprocesszor • Külső preprocesszor • Jól definiált API • Dokumentáció
Fordított Értelmezett • Belső kód • Közbülső kód cache • C kódra fordítható
Többszálúra felkészült • NEM többszálú, de • Fel van készülve a többszálú programozásra • Függvények újrabeléptethetők • Nincsenek globális változók