Научная статья на тему 'ИСПОЛЬЗОВАНИЕ ПРОГРАММНОЙ ПЛАТФОРМЫ NODE.JS ДЛЯ РАЗРАБОТКИ СЕРВЕРНОЙ СТОРОНЫ СИСТЕМЫ УПРАВЛЕНИЯ КОНТЕНТОМ ИНТЕРНЕТ-РЕСУРСА'

ИСПОЛЬЗОВАНИЕ ПРОГРАММНОЙ ПЛАТФОРМЫ NODE.JS ДЛЯ РАЗРАБОТКИ СЕРВЕРНОЙ СТОРОНЫ СИСТЕМЫ УПРАВЛЕНИЯ КОНТЕНТОМ ИНТЕРНЕТ-РЕСУРСА Текст научной статьи по специальности «Компьютерные и информационные науки»

CC BY
33
7
i Надоели баннеры? Вы всегда можете отключить рекламу.
Ключевые слова
JAVASCRIPT / NODE.JS / ИНТЕРНЕТ-РЕСУРС / СЕРВЕРНАЯ РАЗРАБОТКА / BACK-END / СИСТЕМА УПРАВЛЕНИЯ КОНТЕНТОМ ИНТЕРНЕТ-РЕСУРСА / INTERNET RESOURCE / SERVER DEVELOPMENT / CONTENT MANAGEMENT SYSTEM OF INTERNET RESOURCE

Аннотация научной статьи по компьютерным и информационным наукам, автор научной работы — Проаспэт А.Г.

Интернет-ресурсы, созданные с использованием системы управления контентом, поддерживаются разработчиками, которые не являются авторами данной системы, в связи с этим необходимо повышать читабельность исходного кода для расширения возможностей модификации. Способом повысить лапидарность кода является использование платформы Node.js для разработки серверной части. Технология Node.js довольно молода и не сможет в обозримом будущем вытеснить аналоги, однако обладает рядом преимуществ перед ними и даёт более широкие возможности для интеграции с клиентской частью веб-проекта.

i Надоели баннеры? Вы всегда можете отключить рекламу.

Похожие темы научных работ по компьютерным и информационным наукам , автор научной работы — Проаспэт А.Г.

iНе можете найти то, что вам нужно? Попробуйте сервис подбора литературы.
i Надоели баннеры? Вы всегда можете отключить рекламу.

Текст научной работы на тему «ИСПОЛЬЗОВАНИЕ ПРОГРАММНОЙ ПЛАТФОРМЫ NODE.JS ДЛЯ РАЗРАБОТКИ СЕРВЕРНОЙ СТОРОНЫ СИСТЕМЫ УПРАВЛЕНИЯ КОНТЕНТОМ ИНТЕРНЕТ-РЕСУРСА»

УДК: 004.432.2

Проаспэт А. Г. студент магистрант 1 курса Технологический университет (прикладная информатика)

Россия, г. Королёв ИСПОЛЬЗОВАНИЕ ПРОГРАММНОЙ ПЛАТФОРМЫ NODE.JS ДЛЯ РАЗРАБОТКИ СЕРВЕРНОЙ СТОРОНЫ СИСТЕМЫ УПРАВЛЕНИЯ КОНТЕНТОМ ИНТЕРНЕТ-РЕСУРСА

Аннотация: Интернет-ресурсы, созданные с использованием системы управления контентом, поддерживаются разработчиками, которые не являются авторами данной системы, в связи с этим необходимо повышать читабельность исходного кода для расширения возможностей модификации. Способом повысить лапидарность кода является использование платформы Node.js для разработки серверной части.

Технология Node.js довольно молода и не сможет в обозримом будущем вытеснить аналоги, однако обладает рядом преимуществ перед ними и даёт более широкие возможности для интеграции с клиентской частью веб-проекта.

Ключевые слова: JavaScript, Node.js, интернет-ресурс, серверная разработка, backend, система управления контентом интернет-ресурса.

Proaspat A. G., master student 1 course, University of Technology (applied computer science)

Russia, Korolev

Abstract: Internet resources created using the content management system are supported by developers who are not the authors of this system, in this regard, it is necessary to increase the readability of the source code to enhance the capabilities of modification. A way to increase the sparseness of the code is to use the platform of the Node.js for server-side development.

The Technology Node.js is quite young and will not be able to displace analogues in the foreseeable future, but it has several advantages over them and gives more opportunities for integration with the client part of the web project.

Keywords: JavaScript, Node.js, Internet resource, server development, backend, content management system of Internet resource.

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/О.м [2].

Один из самых распространённых языков веб-разработки - JavaScript (а значит, и созданные на его основе CoffeeScript и TypeScript) легко вписывается в систему типа Node. Это один из немногих языков, в которые не встроена система I/O. Поэтому JavaScript легко встраивается в довольно эксцентричный подход к I/O в Node и в результате не порождает две разных системы ввода и вывода. В 2009 году при разработке Node люди уже использовали I/O в браузере, основанный на обратных вызовах, поэтому сообщество вокруг языка было привычно к асинхронному стилю программирования.

Совместное использование Node.js и JavaScript и/или созданных на его основе языков в рамках одного веб-проекта не только повышает лапидарность кода [3, с. 902], но и в целом значительно облегчить стыковку клиентской и серверной части: на Node.js возможно использование в том числе CoffeeScript.

Базовым языком для 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 будет способствовать достижению этой цели.

Использованные источники:

1. Программная платформа Node.js // Ubuntu. URL: http://help.ubuntu.ru/wiki/javascript (дата обращения: 15.06.2018).

2. Выразительный JavaScript: Node.js // Habr. URL: https://habr.com/post/245775/ (дата обращения: 15.06.2018).

3. Проаспэт, А.Г. Использование языка CoffeeScript для разработки системы управления контентом интернет-ресурса / А.Г. Проаспэт // сборник статей Международной научно-практической конференции 15 января 2018 г. г. Москва. [Электронный ресурс]- М.: Импульс, 2018. - 932 с.

4. Могу ли я использовать CoffeeScript вместо JS для node.js? // qa.ru. Поиск вопросов и ответов по программированию. URL: http://qaru.site/questions/34463/can-i-use-coffeescript-instead-of-js-for-nodejs (дата обращения: 15.06.2018).

5. Выбираем язык для веб-разработки // GeekBrains. URL: https: //geekbrains .ru/posts/road_to_web_development (дата обращения: 15.06.2018).

6. Developer Survey Results // Stack Overflow. URL: https://insights.stackoverflow.com/survey/2017#most-popular-technologies (дата обращения: 15.06.2018).

7. PHP vs Node.js // Habr. URL: https://habr.com/post/273259/ (дата обращения: 15.06.2018).

8. Node.js как замена PHP? // Тостер. URL: https://toster.ru/q/294477 (дата обращения: 15.06.2018).

i Надоели баннеры? Вы всегда можете отключить рекламу.