Скриптовые языки программирования: задачи, особенности и преимущества
В 1950 году появился первый язык программирования - ассемблер. ЭВМ тогда были еще несмышлеными детьми по сравнению с современными ПК. Согласно законам дарвинизма машины росли, набирались ума и производительности. Вместе с ними эволюционировали и языки программирования. Из низкоуровневых они превратились в высокоуровневые, объектно-ориентированные. Сейчас мы имеем сценарные, или скриптовые языки.
Что собой представляют языки сценариев
Высокоуровневые языки программирования для написания последовательности операций, или сценариев называются скриптовыми, сценарными или интерпретируемыми языками. К ним относятся:
- JavaScript;
- ActionScript;
- Perl;
- Python;
- Scala;
- R;
- Ruby;
- PHP.
Программные языки, например C#, C или Pascal используют для создания алгоритмов, процедур, новых данных. Скриптовые предназначены для соединения уже существующих инструментов. За счет этого минимизируется количество кода.
Для того чтобы написать простейшую программу Hello, World! на ассемблер требуется 14 строк кода. C++ заставит написать 8. Почти в два раза меньше, но все равно долго. Придется подключить заголовочный файл, библиотеки, указать функцию, а потом еще и компилировать. То же самое на Python помещается в одну фразу - print Hello, World!. Одинаковый результат за меньшие усилия, при этом никаких компиляторов.
Скорость обработки
С появлением скриптовых языков, в сообществах кодеров часто звучат предположения о скорой кончине C++. Все больше недовольных ропщут на трудный синтаксис и сложность компиляции. Защитники процедурного программирования утверждают, что коду на Python далеко по скорости до C. А Perl – язык для детей, непригодный для «настоящего» программирования. Но это миф.
Производительность компьютеров растет по экспоненте. Около 10 лет назад для быстроты действительно нужен был код на программном языке. Сейчас вычислительная техника обладает достаточной мощностью, чтобы обрабатывать сценарии и приложения на Java или Ruby за одинаковый промежуток времени.
Кому и для каких целей нужны языки сценариев
Экспансия Интернета породила касту «эпизодических программистов». Это веб-мастера, верстальщики и владельцы Интернет-ресурсов, для которых важна доступность. У них нет времени на многолетнее погружение в азы процедурного программирования. Они пишут код от случая к случаю, им нужен простой синтаксис для сценариев на JavaScript и фронтенд-разработки. Для серверного программирования походит как JS, так и скриптовый язык PHP.
Классическое ООП безмерно гордится наследованием реализации кода. Это главный аргумент мирового господства ООП в будущем, но и существенный недостаток. При повторном использовании части кода или отельного подкласса, нельзя отделаться от влияния и методов его суперкласса. Зато это возможно с JavaScript. Скриптовые языки обеспечивают безболезненное повторное использование, посредством встраивания отдельных компонентов в общий код.
JavaScript
Согласно барометру популярности JavaScript стоит на первом месте. Используется для веб-программирования, создания клиентских приложений и интерактивной работы. Интерпретаторы JS встроены в каждый уважающий себя браузер, а с появлением Node, JavaScript стал использоваться для программирования серверов.
На сегодняшний день JavaScript – скриптовый язык, который используется на каждом сайте. Так как работает он прямо в браузере, не нужно загружать дополнительное ПО, достаточно текстового редактора. Это гибкий язык с простым синтаксисом, поэтому его часто рекомендуют для начинающих кодеров.
Python
Популярность этого языка неумолимо набирает обороты. Python – это высокоуровневый серверный скриптовый язык для веб-сайтов и мобильных приложений. Обладает компактным синтаксисом, его удобно читать и легко с ним работать. Скептики утверждают, что пригоден Python только для работы с web, а создавался он в целях оживить статичный HTML. Но это не так.
На Python пишут не только плагины и модули. Его применяют в гейм-разработке. Игры Frets On Fire, MMORPG EVE и Online Sims 4 (продано 1 миллион экземпляров) были созданы на Python. Его используют Instagram, Pinterest, Rdio, Google, Yahoo и даже НАСА. У Python низкий порог вхождения, он быстро усваивается и запоминается. Выучить его можно абсолютно бесплатно на интерактивных площадках Codecademy, сервисах Udacity и Coursera.
PHP
Серверный язык сценариев, предназначенный для динамических веб-сайтов и разработки приложений. Может быть непосредственно встроен в исходный HTML-документ, а не во внешний файл. На PHP построено и работает более 200 миллионов веб-сайтов, включая Digg, Facebook и платформы WordPress, Joomla, Drupal.
На сегодняшний день самыми востребованными скриптовыми языками являются JavaScript, Python, PHP. Постепенно завоевывают любовь программистов Ruby, Scala и R.
- Ruby – сценарный язык, созданный в 1995 году Юкихиро Мацумото. До 2004 года о нем никто не слышал, пока не появился фреймворк Ruby on Rails. Сейчас Ruby уверенно догоняет Python.
- Увеличивается интерес к Scala. Это функциональный язык, использующийся серверами Foursquare и Twitter. На нем можно писать как веб, так и Android-приложения.
- R – инструмент для сбора статистических данных, работы с графикой и мощный скриптовый язык. Представляет собой коллекцию классических скриптовых функций, заимствованных из Лиспа и математики, с набором подпрограмм для анализа.
Выводы
Сценарные языки сейчас в тренде, а большинство аналитиков придерживаются мнения, что за ними будущее. Python, Ruby, PHP позволяют писать компактный и лаконичный код с наименьшим числом ошибок. Простой и понятный синтаксис дает возможность любому желающему освоить их и начать заниматься разработкой.