Скрипта или скриптни језик је рачунарски језик коме није потребан корак компилације и радије се тумачи један по један у току извршавања. То је место где је написана скрипта и где су написана упутства за окружење које се извршава. За разлику од програмских језика који се прво компајлирају пре покретања, скрипт језици не компајлирају датотеку и не извршавају датотеку без превођења.
Данас се скрипте често користе за креирање динамичких веб апликација јер су повезане са развојем веба. Скриптни језици на страни сервера и језици за скриптирање на страни клијента су две врсте скриптних језика. Питхон, ПХП и Перл су примери скриптних језика на страни сервера, док је ЈаваСцрипт најбољи пример језика за скриптовање на страни клијента. Ови језици се често развијају са циљем да комуницирају са другим програмским језицима.
Доступно је више језика за скриптовање, а неки су следећи:
Примена језика за писање
Постоји неколико области у којима се користе скриптни језици:
- Језици за скриптовање се користе на страни сервера као и на страни клијента, а такође се широко користе у веб апликацијама. Језици као што су ЈаваСцрипт, Питхон, ПХП и Перл су примери скриптних језика на страни сервера, а ЈаваСцрипт, јКуери, АЈАКС су примери скриптних језика на страни клијента.
- Као и Питхон скрипте, Перл, Схелл су сви скрипт језици, који се користе у системској администрацији.
- Користи се за прављење додатака и екстензија за тренутне апликације, као и за игре и мултимедију.
Предности скриптних језика
Неке друге кључне тачке предности скриптних језика су такође наведене у наставку:
- Може се лако преносити између различитих оперативних система.
- Директно извршава датотеке без потребе за компилацијом, али понекад може бити потребно да се преведе када је то потребно.
- То је платформа отвореног кода која омогућава корисницима да прегледају и уређују скрипту када је то потребно.
- У поређењу са стварним програмом, много се брже развија.
Недостаци скриптних језика
- Омогућава корисницима да прегледају и кодирају које неке компаније могу забранити.
- Ови језици нису компајлирали датотеку и директно је интерпретирали, јер корисници морају да инсталирају тумач или посебан програм пре покретања скрипте.
- У поређењу са компајлираним програмом, скрипт језици могу бити спори у неким ситуацијама.
Разлика између језика за скриптовање и програмских језика
Иако су сви скрипт језици програмски језици, они имају разлику у томе што скриптни језици директно тумаче датотеке и не требају корак компилације. На пример, програм избељен у скрипт језику као што је ПХП или ЈаваСцрипт не мора да се компајлира, док Ц програм који треба да се компајлира пре покретања.
гимп извоз као јпг
Генерално, у поређењу са интерпретираним програмима, компајлирани програми раде брже јер се прво конвертују изворни машински код пре покретања. Интерпретатор чита и анализира наредбе кода сваки пут када се нађу, и ако се открију грешке, наилази на њих и зауставља се у том тренутку, док компајлер чита и анализира код само једном и приказује грешке које код садржи. Практично, због побољшаних рачунарских могућности савременог хардвера и напредних пракси кодирања, разлика између језика за стругање и програмских језика постаје замагљена.
Када правите разлику између језика као што су скриптовање и програмирање, мора се узети у обзир окружење у којем ће се они користити. Разлог за то је тај што програмери морају бити у стању да направе компајлер за језик за скриптовање као што је ЈаваСцрипт и да га користе као не-скриптни (преведени језик), као и тумач за компајлирани језик као што је Ц или Ц++ и користе то као скриптни језик.
В8 ЈаваСцрипт мотора Гоогле Цхроме-а је прави пример за то. В8 конвертује ЈаваСцрипт код у машински код уместо да га тумачи. Језици као што су ЈаваСцрипт, ПХП, Питхон и ВБСцрипт су генерално коришћени без експлицитног корака компилације, док Ц и Ц++ имају експлицитни корак компилације.
Кључне разлике између скриптовања и програмирања су наведене у табели испод:
Сцриптинг Лангуаге | Програмски језик |
---|---|
Заснован је на тумачу. | Заснован је на компајлеру. |
Користи се за комбиновање постојећих компоненти. | Користи се за развој од нуле. |
Покреће се унутар програма и зависи од њега. | Независан је од родитељског програма. |
Функционише за претварање инструкција високог нивоа у машински језик. | Ради на претварању целог програма у машински језик у једном потезу. |
Не захтева компајлирање датотеке и директно покретање. | Потребно је прво компајлирати датотеку. |
Нема тип датотеке. | Садржи тип датотеке .еке. |
Не подржава типове података, графички дизајн и дизајн корисничког интерфејса, нити је подршка ограничена. | Има богат графички дизајн подршке, типове података и дизајн корисничког интерфејса. |
Корисници могу лако да га пишу и користе. | Може бити тешко користити и писати. |
Потребан је домаћин. | Не треба му хост јер је самоизвршен. |
Захтева ниско одржавање. | Захтева високо одржавање. |
Примери скриптних језика укључују ВБ Сцрипт, ЈаваСцрипт, Перл, Руби и ПХП. | Примери програмских језика укључују ЦОБОЛ, Јава, ВБ, Басиц, Ц, Ц++, Ц# и Пасцал. |