Ateities kalbos? Pravartu paskaityti apie programavimo kompiuteriams palyginimą su kitais realaus gyvenimo aprašais >>>>> Ateitis yra neišvengiama be mažyčių programyčių vadinamų skriptais. Įvairioms firmoms besiveržiant į Voratinklio glėbį, jie pateikia labai pigų ir greitai realizuojamą būdą kurti dinaminius WWW puslapius. Lyginant su įprastinėmis kalbomis, pvz., C/C++, jie turi nemažai pranašumų. Scenarijų kalbas lengva išmokti ir apie jas gausu kuo įvairiausios informacijos visais klausimais. Ir kuo beprogramuotume (Rexx, Perl, Tcl arba Python), visada rasite įsikirtusių į tą reikalą ir pasiekusių paslapčių gelmę bet kurioje iš tų kalbų. Tad kas yra skriptai? Dažniausiai tai mažos programos skirtingus terpės komponentus sujungiančios į visumą. Tikrąjį darbą atlieka kuris nors komponentas (pvz., DBVS), o skriptai tik perduoda duomenis ir valdo veiksmų seką. Programuotojui nereikia daug laiko sugaišti žemo lygio problemoms spręsti ir jis gali daugiau dėmesio skirti uždavinio sprendimui. Pavyzdžiui, C programuotojas turi daug dėmesio skirti atminties valdymo programavimui ir tai yra didžiausias jo klaidų šaltinis. Scenarijų kalbos tokias funkcijas automatizuoja. Žinoma, C kalba parašytos programos gali būti vykdomos net 2 kartus greičiau. Tačiau, iš kitos pusės, tokią pat programą C kalba galima parašyti dukart greičiau. O kartais, jei CGI lėtina greitaveiką, galima parinkti tinkamesnį Web serverį, pvz., IBM firmos GoServe terpėje Rexx interpretatorius iškviečiamas to paties proceso, kuris aptarnauja TCP/IP protokolą, atskiroje gijoje (thread), todėl Rexx programos vykdomos net 10 kartų greičiau. Scenarijų kalbos ypač patrauklios, kai reikia turėti programą, kuri dažnai kinta arba reikia sujungti į visumą kelių komponentų darbą. Jos mažiau tinka programoms, kurioms vykdymo greitis ypač svarbus. Laimei, Voratinklyje nėra gyvybiškos reikmės nepaprastai greitaveikai. Daugiau dėmesio yra skiriama WWW svetainės struktūrai, kurios puslapiai turi bendrus elementus, pvz., firmos logotipą, tą patį puslapio tvarkinį ir t.t. Tačiau tokių puslapių automatizavimui nėra daug priemonių. Vienas jų - nuo 1994-ųjų populiarūs SSI (Server Side Includes) principai. Jie vis dar populiarūs ir dabar, tačiau savo pajėgumu neprilygsta skriptams. SSI atrodo taip (kito HTML failo įtraukimui): <HTML> <!--#include logo_ir_adresas.html> </HTML> Pastaba: primenu, kad <!-- --> konstrukcija reiškia komentarą HTML kalboje. Kokias kitas technologijas gali pasirinkti Web programuotojas?
Bet mums rūpi skriptai Kurią kalbą rinktis praktiškai neturi reikšmės. Visas jas lengva išmokti ir visos turi beveik tas pačias galimybes. Tad daug svarbesni socialiniai veiksniai pažįstamų patarimai, galimybė konsultuotis ir t.t. Kiti veiksniai yra subtilesni. Metų metais CGI buvo beveik sutapatinta su 1987-ais Larry Walt sukurta Perl (Practical Extraction Report Language) kalba. Ji pradžioje buvo skirta didelių tekstinės informacijos failų skaitymui, kai kurių veiksmų atlikimui ir ataskaitų generavimui palengvinti. Tad šioje kalboje ypatingas dėmesys buvo skirtas informacijos paieškai pagal nurodytą šabloną. Dabar ji Internete garsėja kaip ideali priemonė skirtingų programų ir duomenų bazių bendram naudojimui "suklijuojant" jas į vientisą sprendimą. Ir, kas nemažiau svarbu, "perl" (kaip ir "Linux") yra nemokama. Ir tikrai, - naudojant "Perl" yra sukurtos didžiosios pasaulio svetainės (pvz., Yahoo, ar Excite). Viskonsine (Wiskonsin Electric Power) Perl kalba (kartu su Fortran) realizuotas projektas branduolinio kuro valdymui prognozėms, finansų apskaitai, el.gamybos ataskaitoms vyriausybei ir kt. Tad jei norite koja kojon žengti plačiai išmintu vieškeliu, rinkitės Perl, kurį naudoja beveik visi Unix serveriai. Tačiau Perl nėra privaloma ir kitos kalbos turi prieš ją pranašumų. Jei jūsų serveris tviska žydra spalva, pagalvokite apie Rexx, kuri veikia visose IBM operacinėse terpėse. Ir būtų keista, jei IBM žiemos Olimpiados metu AIX terpėje būtų išsivertusi be Rexx kalbos. Tcl (Tool Command Language) kalba yra naudojama Travelocity, c|net ir MilliCent svetainėse. Ji nuostabiai tinka plyšiui tarp Web ir duomenų bazių užpildyti. Ją išmokti lengviau nei Perl ir ji tinka daugiakalbėms programoms kurti, nes tenkina Unicode standartus. Ji priimtina kuriant grafines sąsajas (GUI) ir kai reikia tinklo valdymo galimybių. Tuo labiau, kad ją gaunate su daugeliu produktų (pradedant routeriais ir baigiant SGML PĮ tiekėju DynaBook firma). Ją Berkeley UC sukūrė John Ousterhoat, kuris vėliau perėjo į Sun firmos Sun Script padalinį, pardavinėjantį Tcl produktus (iš ten galima atsisiųsti ir Tcl). Tcl kalbą iliustruosime darbuotojų HTML puslapio šablonu: [Asmuo Jonas Skendelis, redaktorius vartiklis@vartiklis.lt] Jonas Skendelis yra Vartiklio redaktorius. Šiame šablone panaudota Asmuo procedūra Tcl kalba atrodytų: proc Asmuo {vardas {email { } } } { # komentaras: email nėra būtinas parametras set html "<p><b>T:$vardas" if { [string length $email] } { append html "<a href=\"mailto:$email\">$vardas</a>" } else { append html "$vardas" } append html "</b><br>" return $html } Tad su šia Tcl procedūra ankstesnis HTML šablonas būtų pertvarkytas į tokį HTML fragmentą: <p><b><a href="mailto:vartiklis@vartiklis.lt">Jonas Skendelis, redaktorius</a><br> Jonas Skendelis yra Vartiklio redaktorius. Skaitykite platesnį įvada į Tcl kalbą >>>>> O Python, kurį sukūrė Guido van Rossum, yra darbo arkliukas didelėms ir sudėtingoms programoms kurti savotiškas konkurentas C/C++ ir Java kalboms (ją naudojo Four11, Infoseek ir Musi-Cal www svetainės). Ją rinktis verta galvojant apie ateitį ir dirbant grupėje. Ji greita kaip ir Perl, paprasta kaip Tcl ir galinga kaip Java ar C/C++. Naujose naršyklėse realizuota JavaScript kalba (jos alternatyva VBScript užsiangažavęs tik Microsoft IE kiaute). Tačiau kartu su jomis dažnai reikia mokytis ir kitų skriptų kalbų. Dar kitos kalbos (PHP, Forth, Guile, Frontier) naudojamos tik turint specialius tikslus. Skriptai nėra vien tik žaisliukai. Visos skriptų kalbos leidžia sąveiką su duomenų bazėmis, failais, Java bibliotekomis, tinklo protokolais ir t.t. O didžiausias jų privalumas kaina. Daugelį paketų galima atsisiųsti ir naudoti veltui. Sąnaudos tėra tik priežiūrai ir apmokymui. O Perl yra toks populiarus, kad firmos net nemato prasmės teikti jo palaikymo paslaugas. Po mikroskopu
REXX Rexx () - Mike Cowlishawo iš IBM 1982 m. sukurta interpretacinė (scripting) programavimo kalba, kuri galėtų būti naudojama bet kurioje sistemoje. Taip pat manyta, kad ji galėtų būti supaprastintas PL/I variantas. Pirminis jos tikslas buvo pakeisti EXEC ir EXEC 2. Tad ji yra tokių kalbų kaip Tcl ir Python pirmtakas. Su laiku IBM ją įtraukė į daugelį savo sistemų, naudojamų tiek meinfreimuose, tiek personaliniuose kompiuteriuose. Egzistuoja tiek komercinės, tiek nemokamos šios kalbos realizacijos. Ypatingą populiarumą įgavo AmigaOS (įskaitant paskutinę versiją 3.2 išleistą 2021 m.). Programos REXX kalba pavyzdys: #!/usr/local/bin/regina nm = "Jonai" queue "Labas," nm nm = "Petrai" queue "Sudie," nm pull msg say msg pull msg say msg exit Ji pateikia: Pastaba: programa vykdyta nemokamu Regina for Windows 2000 interpretatoriumi.
Tiesiog - Java | |