Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:

18-lekciya_paradigma_qq

.pdf
Скачиваний:
0
Добавлен:
18.01.2026
Размер:
154.37 Кб
Скачать

18-lekciya. Skriptli programmalastırıw paradigmaları. Skriptli (Scenariyli) tilleri. Domen mashqalaları. World Wide Web skriptleri.

Jobası:

1.Skriptli tillerdiń mánisi hám klassikalıq tillerden ayırmashılıǵı.

2.Skriptli programmalastırıwdıń tiykarǵı xarakteristikaları (Interpretaciya, Dinamikalıq tiplestiriw).

3."Jelim tiller" (Glue languages) koncepciyası hám domen-arnawlı mashqalalar.

4.Web-skriptlew: Server tárep (Backend) hám Client tárep (Frontend) texnologiyaları.

Skriptli tillerdiń tábiyatı hám kelip shıǵıwı

Skriptli (scenariyli) programmalastırıw tilleri – bul tiykarınan bar bolǵan komponentlerdi yamasa sistemalardı bir-biri menen baylanıstırıw hám avtomatlastırıw ushın arnalǵan tiller. Tariyxıy jaqtan olar operaciyalıq sistemalardı basqarıw (Shell scripts) hám tekstti qayta islew (awk, sed) ushın payda boldı. Dástúrli "sistemalıq" tiller (C, C++, Java) nolden baslap quramalı maǵlıwmatlar strukturasın hám algoritmlerdi jaratıwǵa baǵdarlanǵan bolsa, skriptli tiller (Python, JavaScript, PHP, Bash) bar bolǵan quramalı bloklardı "jelimlew" (glue) hám basqarıw wazıypasın atqaradı. Mısalı, C++ tilinde jazılǵan videokameradan súwret alıwshı modul menen, súwretti analizlewshi moduldı Python skripti arqalı ańsat ǵana biriktirip, qáwipsizlik sistemasın jasawǵa boladı.

Skriptli tillerdiń eń tiykarǵı ózgesheligi – olar ádette "Interpretaciya" (Interpretation) etiledi, yaǵnıy kod kompilyaciya etilmeydi (mashina kodına aylandırılmaydı), al arnawlı interpretator tárepinen qatarma-qatar oqılıp orınlanadı. Bul programmanı jazıw hám testlew procesin (Edit-Run cycle) júdá tezletedi. Baǵdarlamashı kodtı ózgertip, birden nátiyjesin kóre aladı, bul "Rapid Application Development" (Tez islep shıǵıw) ushın oǵada qolaylı. Degen menen, interpretaciya procesi kompilyaciyalanǵan tillerge qaraǵanda programmanıń orınlanıw tezligin tómenletiwi múmkin, biraq zamanagóy JIT (Just-In-Time) kompilyatorlar bul ayırmashılıqtı azaytpaqta.

Jáne bir zárúr xarakteristika – bul "Dinamikalıq tiplestiriw" (Dynamic Typing). C yamasa Java tillerinde hárbir ózgeriwshiniń tipi (int, string) aldın ala

járiyalawı shárt bolsa, skriptli tillerde ózgeriwshiniń tipi onıń ishine salınǵan mániske qaray avtomat túrde anıqlanadı hám programma orınlanıw waqtında ózgeriwi múmkin. Mısalı, x = 5 dep jazıp, keyin x = "Sálem" dep ózgerte beriwge boladı. Bul kodtı qısqa hám qolaylı etedi, biraq úlken kólemdegi proektlerde tiplerge baylanıslı qátelerdiń (Type Errors) kóbeyiwi qáwipin tuwdıradı.

Skriptli tiller kóbinese "Joqarı dárejeli" (Very High-Level) tiller qatarına kiredi. Olar programmistten yadtı basqarıw, maǵlıwmatlar strukturasın (dizimler, sızbaqlar) nolden dúziw sıyaqlı tómen dárejeli jumıslardı talap etpeydi. Tildiń ózinde tayın hám qolaylı "Associativ massivler" (Dictionaries / Hash maps), turaqlı ańlatpalar (Regular Expressions) hám qatarlar menen islesiw quralları bar. Bul skriptli tillerdi tekstli maǵlıwmatlardı qayta islew, fayllar menen islesiw hám prototiplerdi tez jaratıw ushın teńsiz quralǵa aylandıradı.

Domen-arnawlı mashqalalar hám "Jelim" tilleri

Skriptli tiller kóbinese anıq bir "Domen" (taraw) mashqalaların sheshiw ushın payda bolǵan yamasa sol tarawda ústemlikke iye bolǵan. Mısalı, "Perl" tili dáslep tekstli esabatlardı (reports) tayarlaw ushın jaratılǵan bolsa, keyinirek ol bioinformatika hám sistemalıq administratorlıq tarawında keń qollanıldı. "Bash" yamasa "PowerShell" – bul operaciyalıq sistemanıń (Linux, Windows) buyrıqların avtomatlastırıw, fayllar menen operaciyalar islew hám basqa programmalardı iske túsiriw ushın arnawlı jaratılǵan tiller. Bul tillerdiń sintaksisi óz domeniniń talaplarına beyimlesken.

"Jelim tilleri" (Glue Languages) koncepciyası skriptli paradigmanıń eń kúshli tárepleriniń biri. Hár túrli tillerde (C, Fortran, Java) jazılǵan komponentlerdiń bir-biri menen "sóylesiwi" qıyın bolıwı múmkin. Skriptli tiller (ásirese Python, Tcl, Lua) usı hár túrli komponentlerdi biriktiretuǵın "kópir" wazıypasın atqaradı. Mısalı, ilimiy esaplawlarda tiykarǵı quramalı esaplawlar tez isleytuǵın C/C++ yamasa Fortran kitapxanalarında (NumPy, SciPy) orınlanadı, biraq olardı shaqırıw, maǵlıwmatlardı tayarlaw hám nátiyjeni kórsetiw Python arqalı ámelge asırıladı. Bul – "Eki tilli programmalastırıw" (Two-language programming) modeliniń klassikalıq mısalı.

Oyın industriyasında hám quramalı grafikalıq qosımshalarda skriptli tiller "Ishki ornatılǵan" (Embedded) tiller retinde qollanıladı. Mısalı, "Lua" tili oǵada jeńil hám tez bolǵanlıqtan, ol World of Warcraft yamasa Angry Birds sıyaqlı oyınlardıń ishki logikasın (personajlardıń háreketlerin, oyın scenariylerin) jazıw ushın qollanıladı. Oyınnıń dvijogi (grafika, fizika) C++ tilinde jazılǵan bolsa, oyın

dizaynerleri Lua skriptleri arqalı oyınnıń qaǵıydaların dvijoktı qayta kompilyaciya qılmay-aq ózgerte aladı. Bul islep shıǵıw procesin júdá tezletedi.

Domen mashqalalarınıń jáne bir úlken tarawı – bul testlew hám avtomatlastırıw. Selenium, Appium sıyaqlı qurallar skriptli tiller (Python, Java, JS) arqalı veb-saytlar hám mobil qosımshalardı avtomat túrde testlewge imkaniyat beredi. Skript paydalanıwshınıń háreketlerin (túymeni basıw, tekst jazıw) imitaciya qıladı. Bul jerde skriptli tildiń iykemliligi hám dinamikalıq tábiyatı test ssenariylerin tez jazıw hám ózgertiw ushın júdá qolaylı bolıp tabıladı.

World Wide Web skriptleri: Frontend hám Backend

Skriptli tillerdiń eń keń tarqalǵan hám eń tez rawajlanıp atırǵan tarawı – bul World Wide Web. Web-skriptlew eki úlken baǵdarǵa bólinedi: "Client-side" (Klient tárep) hám "Server-side" (Server tárep). Klient táreptegi skriptlew – bul paydalanıwshınıń brauzerinde (Chrome, Firefox) orınlanatuǵın kod. Bul tarawdıń dawsız patshası – "JavaScript" (JS). JavaScript dáslep ápiwayı animaciyalar hám formanı tekseriw ushın jaratılǵan bolsa, búgingi kúnde ol tolıǵı menen qosımshalardı (Single Page Applications - React, Vue, Angular) jaratıwǵa imkaniyat beretuǵın kúshli tilge aylandı.

JavaScript – bul brauzer túsinetuǵın jalǵız programmalastırıw tili

(WebAssembly-di esapqa almasa). Ol HTML (struktura) hám CSS (dizayn) penen birge veb-tiń úsh tiykarǵı texnologiyasın quraydı. JS skriptleri veb-betti "tiri" etedi: paydalanıwshı tıshqanshanı basqanda juwap beriw, serverden maǵlıwmatlardı asinxron (AJAX) júklew hám betti qayta júklemesten mazmundı jańalaw – bulardıń barlıǵı klientlik skriptlewdiń nátiyjesi. Búgingi kúnde TypeScript (JS-tiń statikalıq tiplestirilgen versiyası) sıyaqlı ústemeler (supersets) JS-tiń úlken proektlerdegi kemshiliklerin dúzetip, skriptli paradigmanı kásiplik dárejege kóterdi.

Server táreptegi (Backend) skriptlew bolsa, veb-serverde orınlanadı. PHP, Python (Django, Flask), Ruby (Ruby on Rails), hám Node.js (JavaScript-tiń serverlik versiyası) – bul tarawdıń tiykarǵı wákilleri. Serverlik skriptlerdiń wazıypası – paydalanıwshıdan kelgen sorawdı (request) qabıllaw, maǵlıwmatlar bazası menen baylanısıw, kerekli esaplawlardı orınlaw hám paydalanıwshıǵa HTML bet yamasa JSON maǵlıwmat (response) qaytarıw. Dáslepki web (Web 1.0) statikalıq betlerden turǵan bolsa, skriptli tiller arqalı dinamikalıq web (Web 2.0 - sociallıq tarmaqlar, onlayn dúkanlar) payda boldı.

PHP tili – veb-skriptlew ushın arnawlı jaratılǵan eń ataqlı til. Ol HTML kodınıń ishine kirgizilip, serverde orınlanadı hám nátiyjesi klientke jiberiledi.

WordPress sıyaqlı dúnyadaǵı saytlardıń 40% in quraytuǵın platformalar PHP-da jazılǵan. Al Python hám Ruby tilleriniń freymvorkları (web frameworks) "MVC" (Model-View-Controller) arxitekturasın qollanıp, veb-qosımshalardı tez hám tártipli qurıwdı támiyinleydi. Skriptli tiller veb-dúnyanıń "júregi" bolıp, internettiń búgingi kúndegi interaktiv hám funkcional bolıwına tikkeley sebepshi boldı.

BAQLAW SORAWLARÍ:

1.Skriptli tillerdiń (Interpretaciyalanatuǵın) kompilyaciyalanatuǵın tillerden (C++, Java) tiykarǵı ayırmashılıǵı nede?

2."Dinamikalıq tiplestiriw" (Dynamic Typing) degen ne hám onıń skriptli tillerdegi artıqmashılıǵı qanday?

3."Jelim tiller" (Glue languages) koncepciyası qanday máselelerdi sheshiw ushın qollanıladı?

4.Veb-programmalastırıwda Client-side (Frontend) hám Server-side (Backend) skriptleriniń wazıypaları qanday ajıratılǵan?

5.JavaScript tiliniń veb-skriptlewdegi ornı hám áhmiyeti qanday?

Соседние файлы в предмете Programmalastiriw paradigmalari