★ к₱естовая ♣ Фея
Высший разум
(2871399)
8 лет назад
Скрипт — это программа или программный файл сценарий, которые автоматизируют некоторую задачу, которую пользователь делал бы вручную, используя интерфейс программы. Скрипты пишутся на скриптовых языках, которые различаются по своему синтаксису, сферам применения и возможностям. Например: AngelScript, Perl, Python, PHP, JavaScript, JScript и другие.
Сфера применения скриптов огромна. Например:
- при их помощи пользователь получает возможность обращаться к базам данных;
- seo-скрипты, помогающие продвигать сайты, эти скрипты написанны, используя специальные программы автоматизации браузера - например XHE;
- наблюдать статистику посещений (счетчики посещаемости);
- совершать записи в гостевых книгах;
- оставлять комментарии к понравившимся статьям;
- на скриптах основаны все cms и форумы;
- скрипты помогают динамическому отображению веб-сайта;
- скрипты позволяют организовать изменения части сайта без перегрузки всей страницы;
и многое многое другое.
Volk411
Просветленный
(26727)
14 лет назад
Плагины или скрипты?
Для написания пользовательских расширений могут использоваться как скрипты (в терминологии некоторых программ «макросы») , так и плагины (независимые модули, написанные на компилируемых языках; в некоторых программах они могут называться «утилитами» , «экспортёрами» , «драйверами») .
Скриптовый язык удобен в следующих случаях:
1. Если нужно обеспечить программируемость без риска дестабилизировать систему. Так как, в отличие от плагинов, скрипты интерпретируются, а не компилируются, неправильно написанный скрипт выведет диагностическое сообщение, а не приведёт систему к краху;
2. Если важен выразительный код. Во-первых, чем сложнее система, тем больше кода приходится писать «потому, что это нужно» — см. , например, Hello World#Маргинальные примеры. Во-вторых, в скриптовом языке может быть совсем другая концепция программирования, чем в основной программе — например, игра может быть монолитным однопоточным приложением, в то время как управляющие персонажами скрипты выполняются параллельно. В-третьих, скриптовый язык имеет собственный проблемно-ориентированный набор команд, и одна строка скрипта может делать то же, что несколько десятков строк на традиционном языке. Как следствие, на скриптовом языке может писать программист очень низкой квалификации — например, геймдизайнер своими руками, не полагаясь на программистов, может корректировать правила игры;
3. Если требуется кроссплатформенность. Хорошим примером является JavaScript — его исполняют браузеры под самыми разными ОС.
У плагинов же есть три важных преимущества.
1. Готовые программы, оттранслированные в машинный код, выполняются значительно быстрее скриптов, которые интерпретируются из исходного кода динамически при каждом исполнении. Поэтому скриптовые языки не применяются для написания программ, требующих оптимальности и быстроты исполнения. Но из-за простоты они часто применяются для написания небольших, одноразовых («проблемных» ) программ.
2. Полный доступ к любому аппаратному обеспечению или ресурсу ОС (в скриптовом языке для этого должен существовать написанный на машинном коде API). Плагины, работающие с аппаратным обеспечением, традиционно называют драйверами.
3. Если предполагается интенсивный обмен данными между основной программой и пользовательским расширением, для плагина его обеспечить проще.
Также в плане быстродействия скриптовые языки можно разделить на языки динамического разбора (sh, command.com) и предварительно компилируемые (Perl). Языки динамического разбора считывают инструкции из файла программы минимально требующимися блоками, и исполняют эти блоки, не читая дальнейший код. Предкомпилируемые языки транслируют программу в байт-код и затем исполняют его. Некоторые скриптовые языки имеют возможность компиляции программы «на лету» в машинный код (см. JIT).