Поддерживать
www.wikidata.ru-ru.nina.az
Zapros Scenarij programmirovanie perenapravlyaetsya syuda sm takzhe drugie znacheniya Scenarnyjyazyk yazyk scenariev skriptovoj yazyk angl scripting language vysokourovnevyj yazyk scenariev angl script kratkih opisanij dejstvij vypolnyaemyh sistemoj Raznica mezhdu programmami i scenariyami dovolno razmyta Scenarij eto programma imeyushaya delo s gotovymi programmnymi komponentami kotorye odnazhdy zagruzhennye v svoej rabote ne zavisyat ot dalnejshego nalichiya otsutstviya podklyucheniya k Seti Soglasno Dzhonu Usterhautu avtoru yazyka Tcl vysokourovnevye yazyki mozhno razdelit na yazyki sistemnogo programmirovaniya angl system programming languages i scenarnye yazyki angl scripting languages Poslednie on takzhe nazval skleivayushimi yazykami angl glue languages ili yazykami sistemnoj integracii angl system integration languages Scenarii obychno interpretiruyutsya a ne kompiliruyutsya hotya scenarnye yazyki programmirovaniya odin za drugim obzavodyatsya JIT kompilyatorami V bolee uzkom smysle pod skriptovym yazykom mozhet ponimatsya specializirovannyj yazyk dlya rasshireniya vozmozhnostej komandnoj obolochki ili tekstovogo redaktora i sredstv administrirovaniya operacionnyh sistem KlassifikaciyaYazyki programmirovaniya voobshe i scenarnye yazyki v chastnosti mogut byt klassificirovany mnozhestvom razlichnyh sposobov V plane bystrodejstviya skriptovye yazyki mozhno razdelit na yazyki dinamicheskogo razbora sh COMMAND COM i predvaritelno kompiliruemye Perl Yazyki dinamicheskogo razbora schityvayut instrukcii iz fajla programmy minimalno trebuyushimisya blokami i ispolnyayut eti bloki ne chitaya dalnejshij kod Predkompiliruemye yazyki transliruyut vsyu programmu v bajt kod i zatem ispolnyayut ego Nekotorye skriptovye yazyki imeyut vozmozhnost kompilyacii programmy na letu v mashinnyj kod t n JIT kompilyaciya Po primeneniyu yazyki mozhno grubo razdelit na tri tipa komandno scenarnye prikladnye scenarnye universalnye scenarnye Komandno scenarnye yazyki Osnovnaya statya Scenarij komandnoj stroki Poyavilis eshyo v 1960 h godah dlya upravleniya zadaniyami v operacionnyh sistemah Iz yazykov togo vremeni naibolee izvesten JCL dlya OS 360 V etot klass vhodyat yazyki paketnoj obrabotki angl batch language i yazyki komandnyh obolochek naprimer sh csh dlya Unix Eti yazyki chashe vsego ispolzuyutsya v paketnom rezhime obrabotki AutoHotkey JCL sh bash csh ksh Pilot REXX AppleScript COMMAND COM i cmd exe VBScript PowerShell AutoIt Naprimer yazyk AppleScript operacionnoj sistemy MacOS imeet redaktor Script Editor kotoryj pozvolyaet zapisyvat dejstviya po mere ih vypolneniya polzovatelem v sisteme v fajl scenariya tekstovyj fajl i oformlyat v vide ispolnyaemoj programmy Takoj podhod pozvolyaet sostavlyat prostejshie scenarii neprogrammiruyushim polzovatelem Vstroennye prikladnye scenarnye yazyki Osnovnaya statya Predmetno orientirovannyj yazyk Vstraivaemye yazyki Scenarnye yazyki etogo tipa nachali poyavlyatsya v 1980 e gody kogda na promyshlennyh personalnyh kompyuterah stalo vozmozhnym interaktivnoe obshenie s OS V klient servernoj arhitekture takie yazyki rabotali v klientskoj chasti programmnogo obespecheniya AutoLISP ECMAScript i ego dialekty JScript JavaScript ActionScript Emacs Lisp ERM Game Maker Language LotusScript Lua script VBA Vstroennyj yazyk programmirovaniya 1S PredpriyatieYazyki obshego naznacheniya Etot tip scenarnyh yazykov naibolee izvesten osobenno v primenenii k veb programmirovaniyu Yazyki etogo tipa stali voznikat s 1990 h godov Tcl Tool command language Lua Perl PHP Python REBOL Ruby JavaScript Sleduet zametit chto mnogie yazyki etoj kategorii imeyut bolee shirokoe primenenie chem v kachestve prosto yazykov scenariev naprimer JavaScript kotoryj v nekotoryh sluchayah mozhet vypolnyatsya na servere KritikaSozdatel Java Dzhejms Gosling otvyol dinamicheskim yazykam programmirovaniya upomyanuv PHP i Ruby rol scenarnyh yazykov generiruyushih veb stranicy no neprigodnyh dlya primeneniya v bolee shirokoj nishe prilozhenij iz za problem s masshtabiruemostyu i proizvoditelnostyu Priverzhency dinamicheskih yazykov ne ostavili kritiku bez otveta po vsem punktam v chastnosti o ego staranii predstavit sovremennye dinamicheskie yazyki vsego lish scenarnymi Plaginy i skriptyOsnovnaya statya Plagin Dlya napisaniya polzovatelskih rasshirenij mogut ispolzovatsya kak skripty v terminologii nekotoryh programm makrosy tak i plaginy nezavisimye moduli napisannye na kompiliruemyh yazykah v nekotoryh programmah oni mogut nazyvatsya utilitami eksportyorami drajverami Skriptovyj yazyk udoben v sleduyushih sluchayah Esli nuzhno obespechit programmiruemost bez riska destabilizirovat sistemu Tak kak v otlichie ot plaginov skripty interpretiruyutsya a ne kompiliruyutsya nepravilno napisannyj skript vyvedet diagnosticheskoe soobshenie a ne privedyot k sistemnomu krahu Kontrprimerom mogut sluzhit naprimer JVM i CLR prichyom esli pervaya byla razrabotana iz soobrazhenij perenosimosti koda bezopasnost pobochnyj effekt to vtoraya imenno iz soobrazhenij bezopasnosti Esli vazhen vyrazitelnyj kod Vo pervyh chem slozhnee sistema tem bolshe koda prihoditsya pisat potomu chto eto nuzhno Skript mozhet perenesti chast podobnogo shablonnogo koda inicializaciya unichtozhenie mezhpotochnaya sinhronizaciya i t d v sredu ispolneniya skriptov Vo vtoryh v skriptovom yazyke mozhet byt sovsem drugaya koncepciya programmirovaniya chem v osnovnoj programme naprimer igra mozhet byt monolitnym odnopotochnym prilozheniem v to vremya kak upravlyayushie personazhami skripty vypolnyayutsya parallelno ili kak soprogrammy Takoj podhod horosh s tochki zreniya masshtabiruemosti sistemy scenarii ne zavisyat ot realizacii procedur pishutsya gorazdo bystree i legche otlazhivayutsya no ne ochen horosh s tochki zreniya kachestva koda poskolku neizbezhno privodit k ego dublirovaniyu Gorazdo bolee racionalnym podhodom yavlyaetsya sozdanie fajlov resursov kak variant xml fajlov struktur baz dannyh opisyvayushih povedenie po sushestvu v deklarativnom stile kak eto delaetsya s drugimi svojstvami vnutriigrovyh obektov tekstury modeli effekty zvuki V tretih skriptovyj yazyk imeet sobstvennyj problemno orientirovannyj nabor komand i odna stroka skripta mozhet delat to zhe chto neskolko desyatkov strok na tradicionnom yazyke Odnako stoit zametit chto bo lshaya vyrazitelnost koda na scenarnyh yazykah yavlyaetsya sledstviem ih ogranichennosti i ili novizny i sravnivat C 1970 e i PHP 1990 e i ili Fortran 1950 e i Python 1990 e neumestno Skripty izvestny nizkim porogom vhozhdeniya na skriptovom yazyke mozhet pisat dazhe nizkokvalificirovannyj programmist Eto odnovremenno i plyus i minus S odnoj storony eto pozvolyaet nanimat deshyovuyu rabochuyu silu osvobozhdat specialistov ot rutinnoj raboty i povyshat skorost razrabotki ekstensivno a s drugoj kriticheski snizhaet proizvoditelnost i nadyozhnost iz za orientirovannosti obucheniya takim yazykam na reshenie konkretnyh zadach a ne na ponimanie sushnosti proizvodimyh dejstvij Problema vysokogo poroga vhozhdeniya voznikaet v osnovnom v yazykah s izbytochnym sintaksisom C C i mozhet byt polnostyu reshena lish otkazom ot nih v polzu bolee udachnyh chto razumeetsya daleko ne vsegda vozmozhno V etom sluchae skripty vypolnyayut rol palliativa Sobstvenno oni i voznikli kogda masshtabiruemost Si podobnyh yazykov stala nedostatochnoj dlya povsednevnoj raboty i porog vhozhdeniya novichkov v otrasl rezko vozros Problema bolshogo kolichestva rutiny voobshe govorya nerazreshima no v bolshinstve sluchaev mozhet byt sglazhena bolee nadyozhnymi dopolnitelnymi sredstvami naprimer avtomaticheskoj kodogeneraciej Esli trebuetsya krossplatformennost Naprimer JavaScript ego ispolnyayut brauzery pod samymi raznymi OS Problema s krossplatformennostyu napryamuyu vytekaet iz standarta yazyka standart Si naprimer ukazyvaet sizeOf short lt sizeOf int lt sizeOf long no ne ukazyvaet kakuyu imenno razryadnost oni dolzhny imet etu problemu reshayut prikladnye biblioteki naprimer Glib Sovremennye ne scenarnye yazyki Java C Haskell etoj problemy polnostyu lisheny imenno po prichine horoshej standartizacii Skriptovye yazyki primenyayutsya dlya napisaniya programm ne trebuyushih optimalnosti i bystroty ispolneniya Iz za prostoty na nih chasto pishutsya nebolshie odnorazovye problemnye programmy Mnogie skriptovye yazyki obshego naznacheniya rabotayut dostatochno medlenno poetomu ih chasto ispolzuyut tolko v sochetanii so storonnimi bibliotekami naprimer NumPy v sochetanii s Python Naprimer NumPy osnovyvaetsya na fortranovskoj biblioteke LAPACK i GSL kod kotoroj proveren vremenem i regulyarno dopolnyaetsya sovremennymi funkciyami a mnozhestvo specialnyh versij Lapaka AOML ATLAS cuBLAS ochen horosho optimizirovannyh pod sovremennye arhitektury pozvolyayut garantirovat prakticheski pikovuyu proizvoditelnost raboty funkcij etoj biblioteki Bolee pravilnyj primer yazyk Lua yavlyaetsya klassicheskim vstraivaemym yazykom scenariev obshego naznacheniya dlya ego raboty dostatochno minimalnoj realizacii Si vezde gde est Si mozhet rabotat i Lua Takzhe skriptovye yazyki horoshi dlya vizualizacii dannyh sozdaniya slozhnyh grafikov i prezentacij a takzhe prostyh programm naprimer Python ispolzuetsya v graficheskih obolochkah Gnome i Cinnamon dlya sozdaniya appletov i nebolshih nastroechnyh utilit U plaginov takzhe est vazhnye preimushestva Gotovye programmy ottranslirovannye v mashinnyj kod vypolnyayutsya znachitelno bystree skriptov kotorye interpretiruyutsya iz ishodnogo koda dinamicheski pri kazhdom ispolnenii Bolshinstvo programm perenosimy na urovne ishodnogo koda i mogut byt vypolneny interpretatorom sootvetstvuyushego yazyka podobno skriptam Ispolzovanie zhe bajt koda Java C LLVM pozvolyaet hranit perenosit i ispolnyat programmy bolee effektivnym obrazom nezheli skripty JIT kompilyaciya takzhe pozvolyaet optimizirovat obshij kod pod konkretnuyu platformu v perspektive pod konkretnoe semejstvo processorov i imeyusheesya oborudovanie Polnyj dostup k lyubomu apparatnomu obespecheniyu ili resursu OS v skriptovom yazyke dlya etogo dolzhen sushestvovat specialnyj API napisannyj na kompiliruemom yazyke Plaginy rabotayushie s apparatnym obespecheniem tradicionno nazyvayut drajverami Esli predpolagaetsya intensivnyj obmen dannymi mezhdu osnovnoj programmoj i polzovatelskim rasshireniem dlya plagina ego obespechit proshe Dlya kompiliruemyh yazykov programmirovaniya harakterno ispolzovanie silnoj staticheskoj sistemy tipov kotoraya pozvolyaet effektivno otlavlivat oshibki i luchshe optimizirovat kod Ispolzovanie zhe v sovremennyh skriptah dinamicheskoj tipizacii obuslovleno skoree tehnicheskimi osobennostyami realizacii i istoricheskimi prichinami Takzhe u staticheski tipizirovannyh yazykov est potencial dlya rosta a imenno perehod s tradicionnoj monomorfnoj tipizacii na polimorfnuyu Rasshireniya monomorfizma v sovremennyh Si podobnyh yazykah peregruzka ad hoc polimorfizm i polimorfizm podtipov a takzhe parametricheskij polimorfizm i klassy tipov v eksperimentalnyh yazykah naprimer Haskell scenarnym yazykam nedostupen staticheskaya tipizaciya vo vremya ispolneniya skripta privedyot k sushestvennoj potere proizvoditelnosti PrimechaniyaA B Makar K E McMartin M Palese T R Tephly Formate assay in body fluids application in methanol poisoning Biochemical Medicine 1975 06 T 13 vyp 2 S 117 126 ISSN 0006 2944 doi 10 1016 0006 2944 75 90147 7 2 oktyabrya 2020 goda Suzi R Scenarnye yazyki Python Mir 2001 9 2001 neopr Data obrasheniya 9 oktyabrya 2012 17 yanvarya 2013 goda Scenarnye yazyki Python angl Izdatelstvo Otkrytye sistemy Data obrasheniya 14 sentyabrya 2023 24 maya 2022 goda Ousterhout 1998 LuaJIT neopr Data obrasheniya 9 oktyabrya 2012 2 oktyabrya 2012 goda PyPy neopr Data obrasheniya 9 oktyabrya 2012 12 maya 2008 goda Joab Jackson IDG News Service Facebook releases a PHP just in time compiler neopr Data obrasheniya 9 oktyabrya 2012 11 iyunya 2012 goda Denisov Yu A Programmirovanie dlya gumanitariev 12 Lekciya Predstavlenie grammatik intuit ru Bogatyrev 2001 Trofimov Trofimova 1997 James Gosling Java Is Under No Serious Threat From PHP Ruby or C neopr Data obrasheniya 9 oktyabrya 2012 24 oktyabrya 2012 goda Ryan Tomayko Gosling Didn t Get The Memo neopr Data obrasheniya 9 oktyabrya 2012 18 yanvarya 2012 goda LiteraturaBogatyrev R Priroda i evolyuciya scenarnyh yazykov rus Mir PK 2001 11 Ousterhout J Scripting Higher Level Programming for the 21st Century angl IEEE Computer 1998 Vol 31 no 3 P 23 30 Georgiev V O Enikeev A I Scenarnyj podhod v sozdanii dialogovyh sistem Programmnye produkty i sistemy 1991 3 Trofimov M I Trofimova M P V poiskah kompyuternogo esperanto Otkrytye sistemy 1997 3 SsylkiLynn Greiner Q amp A The state of the scripting universe Scripting languages are becoming more popular www computerworld com 2008
Вершина