Скриптов език

от Уикипедия, свободната енциклопедия
Направо към: навигация, търсене

Скриптов език в информационните технологии се нарича език за програмиране, при който изходният код на програмите се изпълнява директно. За да се изпълни този изходен код, се използва специална програма, която се нарича интерпретатор. Алтернативният метод за изпълняване на програми е чрез компилиране. Сорс кодът на програма, която е написана на скриптов език за програмиране се нарича скрипт. Скриптовия език е програмен език, позволяващ контрол върху софтуерни приложения. "Скриптовете" се различават от същинския код на приложението, което обикновено е написано на друг език и често се създават или променят от крайния потребител. Скриптовите езици почти винаги са вградени в приложенията, които контролират.

Думата "скрипт" идва от писмения сценарии при актьорството, при което всеки диалог се изпълнява от актьори. Ранните скриптови езици често са наричани batch (пакетни) езици или езици за контролиране на задачи. Скриптовите езици първоначално са били създадени за да съкратят обичайния процес по промяна-компилиране-свързване-изпълнение на код.

Често ползван пример за скриптов език е при уеб браузърите като Firefox. Firefox е написан на C/C++ и може да бъде контролиран от JavaScript.

Предимства и недостатъци на скриптовите езици[редактиране | edit source]

Предимства[редактиране | edit source]

  • Потребителите могат да разглеждат и модифицират кода на програмата и по този начин да разберат как работи, да променят нейното поведение и да открият грешки в нея.
  • Сорс кодът на програмата може да работи на множество различни платформи, без да са необходими модификации при преноса.
  • Когато се направи някаква промяна в скрипта не е необходимо да се преминава през повторен процес на компилиране (такъв процес понякога отнема много време).

Недостатъци[редактиране | edit source]

  • Обикновено програмите, написани на такива езици, работят пъти по-бавно от програмите, които се компилират.
  • Сорс кодът на програмите не може да бъде скрит

TODO: лицензи - забраняват промяната... пояснения за предимствата и недостатъците python: кеширане java: две думи за виртуалната машина обикновено скриптови езици се използват при...

Видове скриптови езици[редактиране | edit source]

Езици за управление на задачи и shell[редактиране | edit source]

Автоматизацията на управлението на задачи е довела до обособяване на главен клас от скриптови езици, свързани със стартирането и управлението на системни програми. (Shells са наследници на IBM JCL(Job Control Language), ползван точно за тази цел.) Много от интерпретаторите на тези езици дублират Unix shell или MS-DOS COMMAND.COM. Други като AppleScript предлагат команди, наподобяващи английски език за изграждане на скриптове.

Скриптове за графичен потребилески интерфейс (GUI)[редактиране | edit source]

Скриптовите езици за GUI си взаймодестват с графични прозорци, менюта, бутони и др. генерирани от системата. Те симулират действията на потребителя и обикновено се използват за автоматизиране на действията на потребителя или конфигуриране на стандартно състояние. Тези езици се наричат макроси когато управлението е чрез симулиране на натиснат клавиш или клик с мишка.

Възможността за ползване на такива езици по принцип зависи от поддръжката, осигурена от приложението и операционната система. Някои GUI скриптови езици са базирани на разпознаване на графични обекти от пискелите на екрана и не зависят толкова от приложението или операционната система.

Езици, специфични за приложение[редактиране | edit source]

Някои мащабни приложения включват идиоматичен скриптов език, пригоден за нуждите на потребителите на приложението. Много компютърни игри ползват специализиран скриптов език за да изразят програмните действия на роля, която не участва в играта. Езиците от този тип са проектирани само за едно приложение, макар че наподобяват скриптови езици с обща цел. Emacs Lisp е напълно завършен и действащ диалект на Lisp, но съдържа много специални характеристики които го правят най-полезен при разширяване на функциите на Emacs.

Уеб браузъри[редактиране | edit source]

Уеб браузърите са приложения, визуализиращи уеб страници. Създадени са много езици със специфична цел за да контролират тяхното действие. Това са JavaScript, скриптов език, наподобяващ Java; VBScript от Microsoft, който работи само с Internet Explorer; XUL от Mozilla project, предназначен за Firefox; и XSLT, презентационен език, трансформиращ съдържание на XML в нова форма. Техниките, комбиниращи XML и JavaScript за подобрение на представата на потребителя за responsiveness се наричат AJAX.

Уеб услуги[редактиране | edit source]

От страната на сървъра при HTTP връзка, приложни сървъри и други сървъри за динамично съдържание като системи за управление на уеб съдържание предоставят съдържание през голямо разнообразие от техники и технологии типизирани чрез подхода, базиран на скриптови езици. Такива езици са PHP, JSP и ASP, както и Ruby.

Езици за обработка на текст[редактиране | edit source]

Обработката на текстово базирани записи е едно от най-старите приложения на скриптови езици. Скриптовите езици, написани за Unix инструменти AWK, sed, и grep автоматизират задачи, свързани с конфигурация, базирана на текст и лог файлове. Perl .

Динамични езици с обща цел[редактиране | edit source]

Някои езици като Perl, са започнали като скриптови езици, но са се развили в програмни езици, подходящи за широк обхват от цели. Други подобни езици - често интерпретирани, memory-managed, или динамични се описват като скриптови езици, въпреки че се ползват за разработка на приложения.

Разширяеми или вградени езици[редактиране | edit source]

Множество езици са били проектирани с цел заместване на скриптови езици, специфични за приложението като се могат да се вградят в програмата. Програмиста на приложението(работещ на C или друг системен език) включва "кукички", където може да се постави скриптов език, контролиращ приложението. Тези езици позволяват пренос на умения между приложенията. JavaScript в началото и все още е скриптов език, предназначен за браузър, но стандартизации на езика като ECMAScript са го направили популярен като език за вграждане. Други примери са Mozilla - SpiderMonkey, вграден в Yahoo! Widget Engine и др. Други приложения вграждащи ECMAScript включват продукти на Adobe Adobe Flash (ActionScript) и Adobe Acrobat (за скриптиране на PDF файлове).

Известни скриптови езици за програмиране[редактиране | edit source]

Вижте също[редактиране | edit source]