Использование программной платформы Node.js для разработки серверной стороны системы управления контентом интернет-ресурса
Автор: Проаспэт А.Г.
Журнал: Экономика и социум @ekonomika-socium
Рубрика: Информационные и коммуникативные технологии
Статья в выпуске: 6 (49), 2018 года.
Бесплатный доступ
Интернет-ресурсы, созданные с использованием системы управления контентом, поддерживаются разработчиками, которые не являются авторами данной системы, в связи с этим необходимо повышать читабельность исходного кода для расширения возможностей модификации. Способом повысить лапидарность кода является использование платформы Node.js для разработки серверной части. Технология Node.js довольно молода и не сможет в обозримом будущем вытеснить аналоги, однако обладает рядом преимуществ перед ними и даёт более широкие возможности для интеграции с клиентской частью веб-проекта.
Интернет-ресурс, серверная разработка, система управления контентом интернет-ресурса
Короткий адрес: https://sciup.org/140239226
IDR: 140239226
Текст научной статьи Использование программной платформы Node.js для разработки серверной стороны системы управления контентом интернет-ресурса
Node.js — программная платформа, основанная на движке V8 (разработанном в Google для браузера Chrome, транслирующем JavaScript в машинный код), превращающая JavaScript из узкоспециализированного языка в язык общего назначения. Node.js добавляет возможность JavaScript взаимодействовать с устройствами ввода-вывода через свой API (написанный на C++), подключать другие внешние библиотеки, написанные на разных языках, обеспечивая вызовы к ним из JavaScript-кода. Node.js применяется преимущественно на сервере, выполняя роль веб-сервера, но есть возможность разрабатывать на Node.js и десктопные оконные приложения (при помощи NW.js, AppJS или Electron для Linux, Windows и macOS) и даже программировать микроконтроллеры (например, tessel и espruino). В основе Node.js лежит событийно-ориентированное и асинхронное (или реактивное) программирование с неблокирующим вводом/выводо Одна из наиболее сложных проблем при написании систем, общающихся по сети – обработка ввода и вывода. Чтение и запись данных в сеть и из сети, на диск, и другие устройства. Перемещение данных требует времени, и грамотное планирование этих действий может сильно повлиять на время отклика системы для пользователя или сетевых запросов [1].
В традиционном методе обработки ввода и вывода принято, что функция, к примеру, readFile, начинает читать файл и возвращается только когда файл полностью прочитан. Это называется синхронным вводом-выводом (synchronous I/O, input/output).
Node был создан с целью облегчить и упростить использование асинхронного I/O.м [2].
Один из самых распространённых языков веб-разработки – JavaScript (а значит, и созданные на его основе CoffeeScript и TypeScript) легко вписывается в систему типа Node. Это один из немногих языков, в которые не встроена система I/O. Поэтому JavaScript легко встраивается в довольно эксцентричный подход к I/O в Node и в результате не порождает две разных системы ввода и вывода. В 2009 году при разработке Node люди уже использовали I/O в браузере, основанный на обратных вызовах, поэтому сообщество вокруг языка было привычно к асинхронному стилю программирования.
Базовым языком для backend разработки в интернет-сфере принято считать PHP [5], однако, по-первых, с 2016 года JavaScript лидирует в опросе Stack Overflow во всех трёх веб-областях: full stack, frontend и backend, а в 2017 году стал самым популярным языком программирования [6].
Кроме того, был проведён анализ целесообразности использования PHP и Node.js, который показал наличие у Node.js пусть и незначительного, но преимущества. Были обнаружены следующие его недостатки: более сложный запуск на локальной машине, сравнительная молодость технологии и как следствие менее развитое общество разработчиков и меньшее количество адаптированных хостингов [7]. Целью создания Node. js была замена PHP [8] в серверной части, и многие разработчики признают, что платформа близка к достижению поставленной цели.
Данную платформу не рекомендуют для начинающих разработчиков, однако, как и CoffeeScript [3, с. 905], он доступен для освоения разработчикам, являющимся сторонниками JavaScript, в достаточно короткие сроки.
Список литературы Использование программной платформы Node.js для разработки серверной стороны системы управления контентом интернет-ресурса
- Программная платформа Node.js//Ubuntu. URL: http://help.ubuntu.ru/wiki/javascript (дата обращения: 15.06.2018).
- Выразительный JavaScript: Node.js//Habr. URL: https://habr.com/post/245775/(дата обращения: 15.06.2018).
- Проаспэт, А.Г. Использование языка CoffeeScript для разработки системы управления контентом интернет-ресурса/А.Г. Проаспэт//сборник статей Международной научно-практической конференции 15 января 2018 г. г. Москва. -М.: Импульс, 2018. -932 с.
- Могу ли я использовать CoffeeScript вместо JS для node.js?//qa.ru. Поиск вопросов и ответов по программированию. URL: http://qaru.site/questions/34463/can-i-use-coffeescript-instead-of-js-for-nodejs (дата обращения: 15.06.2018).
- Выбираем язык для веб-разработки//GeekBrains. URL: https://geekbrains.ru/posts/road_to_web_development (дата обращения: 15.06.2018).
- Developer Survey Results//Stack Overflow. URL: https://insights.stackoverflow.com/survey/2017#most-popular-technologies (дата обращения: 15.06.2018).
- PHP vs Node.js//Habr. URL: https://habr.com/post/273259/(дата обращения: 15.06.2018).
- Node.js как замена PHP?//Тостер. URL: https://toster.ru/q/294477 (дата обращения: 15.06.2018).