Разлика между версии на „Скриптов език“

редакция без резюме
м (whitespaces)
{{сливане|Скрипт}}
Скриптов език в [[информационни технологии|информационните технологии]] се нарича [[език за програмиране]], при който [[изходен код|изходният код]] на програмите се изпълнява директно. За да се изпълни този изходен код, се използва специална програма, която се нарича [[интерпретатор]]. Алтернативният метод за изпълняване на програми е чрез [[компилиране]]. [[Сорс код]]ът на програма, която е написана на скриптов език за програмиране се нарича скрипт.
Скриптовият език е програмен език, позволяващ контрол върху софтуерни приложения. "Скриптовете" се различават от същинския код на приложението, което обикновено е написано на друг език и често се създават или променят от крайния потребител. Скриптовите езици почти винаги са вградени в приложенията, които контролират.
 
Скриптовият език е програмен език, позволяващ контрол върху софтуерни приложения. "Скриптовете"„Скриптовете“ се различават от същинския код на приложението, което обикновено е написано на друг език и често се създават или променят от крайния потребител. Скриптовите езици почти винаги са вградени в приложенията, които контролират.
Думата "скрипт" идва от писмения сценарии при актьорството, при което всеки диалог се изпълнява от актьори. Ранните скриптови езици често са наричани batch (пакетни) езици или езици за контролиране на задачи. Скриптовите езици първоначално са били създадени за да съкратят обичайния процес по промяна-компилиране-свързване-изпълнение на код.
 
Думата "скрипт"„скрипт“ идва от писмения сценарии при актьорството, при което всеки диалог се изпълнява от актьори. Ранните скриптови езици често са наричани batch (пакетни) езици или езици за контролиране на задачи. Скриптовите езици първоначално са били създадени за да съкратят обичайния процес по промяна-компилиране-свързване-изпълнение на код.
 
Често ползван пример за скриптов език е при [[уеб браузър]]ите като [[Firefox]]. Firefox е написан на [[C]]/[[C++]] и може да бъде контролиран от [[JavaScript]].
 
TODO:
лицензи - – забраняват промяната...
 
пояснения за предимствата и недостатъците
python: кеширане
java: две думи за виртуалната машина
обикновено скриптови езици се използват при...
 
== Видове скриптови езици ==
=== Езици за управление на задачи и shell ===
Автоматизацията на управлението на задачи е довела до обособяване на главен клас от скриптови езици, свързани със стартирането и управлението на системни програми. (Shells са наследници на IBM JCL(Job Control Language), ползван точно за тази цел.) Много от интерпретаторите на тези езици дублират Unix shell или MS-DOS COMMAND.COM. Други като AppleScript предлагат команди, наподобяващи английски език за изграждане на скриптове.
 
=== Скриптове за графичен потребилески интерфейс (GUI) ===
Скриптовите езици за GUI си взаймодестват с графични прозорци, менюта, бутони и др. генерирани от системата. Те симулират действията на потребителя и обикновено се използват за автоматизиране на действията на потребителя или конфигуриране на стандартно състояние. Тези езици се наричат ''макроси'' когато управлението е чрез симулиране на натиснат клавиш или клик с мишка.
 
Възможността за ползване на такива езици по принцип зависи от поддръжката, осигурена от приложението и операционната система. Някои GUI скриптови езици са базирани на разпознаване на графични обекти от пискелите на екрана и не зависят толкова от приложението или операционната система.
 
=== Езици, специфични за приложение ===
Някои мащабни приложения включват идиоматичен скриптов език, пригоден за нуждите на потребителите на приложението. Много компютърни игри ползват специализиран скриптов език за да изразят програмните действия на роля, която не участва в играта. Езиците от този тип са проектирани само за едно приложение, макар че наподобяват скриптови езици с обща цел. Emacs Lisp е напълно завършен и действащ диалект на Lisp, но съдържа много специални характеристики които го правят най-полезен при разширяване на функциите на Emacs.
 
=== Уеб браузъри ===
 
=== Динамични езици с обща цел ===
Някои езици като [[Perl]], са започнали като скриптови езици, но са се развили в програмни езици, подходящи за широк обхват от цели. Други подобни езици - – често интерпретирани, memory-managed, или динамични се описват като скриптови езици, въпреки че се ползват за разработка на приложения.
 
=== Разширяеми или вградени езици ===
Множество езици са били проектирани с цел заместване на скриптови езици, специфични за приложението като се могат да се вградят в програмата. Програмиста на приложението (работещ на C или друг системен език) включва "кукички"„кукички“, където може да се постави скриптов език, контролиращ приложението. Тези езици позволяват пренос на умения между приложенията. JavaScript в началото и все още е скриптов език, предназначен за браузър, но стандартизации на езика като ECMAScript са го направили популярен като език за вграждане. Други примери са Mozilla - – SpiderMonkey, вграден в Yahoo! Widget Engine и др. Други приложения вграждащи ECMAScript включват продукти на Adobe Adobe Flash (ActionScript) и Adobe Acrobat (за скриптиране на PDF файлове).
 
== Известни скриптови езици за програмиране ==
* [[Erlang]]
* [[bash]] (UNIX)
* [[PowerShell|PowerShell]] (Windows)
* [[AppleScript]] (Macintosh)