Глоссарий
Термин | Значение |
---|---|
NPM(Node Package Manager) | Это стандартный менеджер пакетов, автоматически устанавливающийся вместе с Node.js. Он используется для скачивания пакетов из облачного сервера npm, либо для загрузки пакетов на эти сервера. |
ОС(Операционная система) | Комплекс взаимосвязанных программ, предназначенных для управления ресурсами компьютера и организации взаимодействия с пользователем. |
Приложение с открытым исходным кодом | Код приложения доступен для просмотра и изменения. |
API(программный интерфейс приложения, интерфейс прикладного программирования) | Набор готовых классов, процедур, функций, структур и констант, предоставляемых приложением (библиотекой, сервисом) или операционной системой для использования во внешних программных продуктах. Используется программистами при написании всевозможных приложений. |
Устройства ввода-вывода | Компонент типовой архитектуры ЭВМ, предоставляющий компьютеру возможность взаимодействия с внешним миром и, в частности, с пользователями. |
Неблокирующий ввод/вывод(неблокирующая синхронизация) | Подход в параллельном программировании на симметрично-многопроцессорных системах, в котором принят отказ от традиционных примитивов блокировки, таких, как семафоры, мьютексы и события. Разделение доступа между потоками идёт за счёт атомарных операций и специальных, разработанных под конкретную задачу, механизмов блокировки. |
Событийно-ориентированное программирование | Парадигма программирования, в которой выполнение программы определяется событиями — действиями пользователя (клавиатура, мышь), сообщениями других программ и потоков, событиями операционной системы (например, поступлением сетевого пакета). |
Пакет | В Node.js называется один или несколько JavaScript-файлов, представляющих собой какую-то библиотеку или инструмент |
Установочный пакет | Это заархивированные в специфический архив компоненты всей программы, требуемые для установки программы. |
Консоль (Интерфейс командной строки) | Pазновидность текстового интерфейса (CUI) между человеком и компьютером, в котором инструкции компьютеру даются в основном путём ввода с клавиатуры текстовых строк (команд), в UNIX-системах возможно применение мыши. |
Машина(Компьютер) | Устройство или система, способная выполнять заданную, чётко определённую, изменяемую последовательность операций. Это чаще всего операции численных расчётов и манипулирования данными, однако сюда относятся и операции ввода-вывода |
PATH | Переменная окружения Unix-подобных операционных систем, DOS, OS/2 и Microsoft Windows, представляющая собой набор каталогов, в которых расположены исполняемые файлы. В основном, каждый выполняемый процесс или сеанс пользователя имеет собственную переменную PATH. |
Репозиторий | Место, где хранятся и поддерживаются какие-либо данные. Чаще всего данные в репозитории хранятся в виде файлов, доступных для дальнейшего распространения по сети. |
Дирректория | Каталог файловой системы |
---|---|
Фреймворк | Программная платформа, определяющая структуру программной системы; программное обеспечение, облегчающее разработку и объединение разных компонентов большого программного проекта. |
Экспорт | Предоставление программным модулем некоторой части описанных в нём типов, констант, переменных, классов, процедур или функций в пользование другим модулям, входящим в состав той же программы. |
---|---|
Импорт | Добавление данных, вставка данных из внешних источников в текущий файл/документ/базу данных. |
Подключение модуля | Импорт модуля в файл |
Абсолютный путь | Абсолютный (или полный) путь начинается с буквы диска, за которой следует двоеточие, например, D:. |
---|---|
Расширение файла | Последовательность символов, добавляемых к имени файла и предназначенных для идентификации типа (формата) файла. |
Поток данных | Абстракция, используемая для чтения или записи файлов, сокетов и т. п. в единой манере. |
---|---|
Интерфейс | Общая граница между двумя функциональными объектами, требования к которой определяются стандартом; совокупность средств, методов и правил взаимодействия (управления, контроля и т.д.) между элементами системы. |
Заголовок ответа | Список поддерживаемых методов всего сервера или конкретного ресурса. |
Тело ответа | Данные, которые отправляются на клиенскую часть |
Сервер (Веб-сервер) | Это сервер, принимающий HTTP-запросы от клиентов, обычно веб-браузеров, и выдающий им HTTP-ответы, как правило, вместе с HTML-страницей, изображением, файлом, медиа-потоком или другими данными. |
Архитектура, управляемая событиями (англ. event-driven architecture) | Шаблон архитектуры программного обеспечения, позволяющим создание, определение, потребление и реакцию на события. |
---|---|
Поток данных | Абстракция, используемая для чтения или записи файлов, сокетов и т. п. в единой манере. |
---|---|
Интерфейс | Общая граница между двумя функциональными объектами, требования к которой определяются стандартом; совокупность средств, методов и правил взаимодействия (управления, контроля и т.д.) между элементами системы. |
Заголовок ответа | Список поддерживаемых методов всего сервера или конкретного ресурса. |
Тело ответа | Данные, которые отправляются на клиенскую часть |
Сервер (Веб-сервер) | Это сервер, принимающий HTTP-запросы от клиентов, обычно веб-браузеров, и выдающий им HTTP-ответы, как правило, вместе с HTML-страницей, изображением, файлом, медиа-потоком или другими данными. |
Буферизация | Метод организации обмена, в частности, ввода и вывода данных в компьютерах и других вычислительных устройствах, который подразумевает использование буфера для временного хранения данных. |
---|---|
Стандартный системный поток ввода/вывода | Потоки ввода-вывода с заранее оговоренным смыслом и направлением; также заранее оговорены (стандартизованы) их метки (номера). Иногда их еще называют «терминалы» (terminal) или «консоли» (console) |
Движок V8 | Движок JavaScript с открытым программным кодом, распространяемый по лицензии BSD. Разработан датским отделением компании Google. |
---|---|
Big-endian | Порядок от старшего к младшему (англ. big-endian — большим концом) соответствует привычному порядку записи арабских цифр, например, число сто двадцать три было бы записано при таком порядке как 123. В этом же порядке принято записывать байты в технической и учебной литературе, если другой порядок явно не обозначен. Этот порядок является стандартным для протоколов TCP/IP, он используется в заголовках пакетов данных и во многих протоколах более высокого уровня, разработанных для использования поверх TCP/IP. Поэтому порядок байтов от старшего к младшему часто называют «сетевым порядком байтов» (англ. network byte order). |
Little-endian | Порядок от младшего к старшему (англ. little-endian — малым концом) - Это обратный порядок по отношению к привычному порядку записи арабских цифр, например, число сто двадцать три было бы записано при таком порядке как 321. Этот порядок записи принят в памяти персональных компьютеров с процессорами архитектуры x86, в связи с чем иногда его называют интеловский порядок байтов. |
Токены-заполнители | Специальные символы, используемые в строке для определения формата данных, которыми они в последствии будут заменены. Некоторые из них: %s - cтрока, %d - число, %j - JSON |
---|---|
IPC | Обмен данными между потоками одного или разных процессов. Реализуется посредством механизмов, предоставляемых ядром ОС или процессом, использующим механизмы ОС и реализующим новые возможности IPC. Может осуществляться как на одном компьютере, так и между несколькими компьютерами сети. |
TCP | Один из основных протоколов передачи данных интернета, предназначенный для управления передачей данных. Сети и подсети, в которых совместно используются протоколы TCP и IP, называются сетями TCP/IP. |
Сокет | Название программного интерфейса для обеспечения обмена данными между процессами. Процессы при таком обмене могут исполняться как на одной ЭВМ, так и на различных ЭВМ, связанных между собой сетью. Сокет — абстрактный объект, представляющий конечную точку соединения. |
Дуплексные потоки | Это потоки, которые реализуют как читаемые, так и записываемые интерфейсы |
application (приложение) | В общем смысле, одна или несколько программ, предназначенных для выполнения операций с определенной целью. В контексте Express - программа, использующая API Express, запущенный на платформе Node.js. Также называется объектом приложения. |
---|---|
API | Интерфейс программирования приложений. Рекомендуется расшифровывать данную аббревиатуру при первомупоминании. |
request (запрос) | Запрос HTTP. Клиент передает на сервер сообщение-запрос по протоколу HTTP, а сервер возвращает ответ. В запросе должен использоваться один из нескольких методов запроса, например, GET, POST и т.д. |
response (ответ) | Ответ HTTP. Сервер возвращает клиенту сообщение-ответ по протоколу HTTP. Ответ содержит информацию о состоянии выполнения запроса, а также в теле сообщения может быть включено запрашиваемое содержимое. |
route (маршрут) | Часть URL, идентифицирующая ресурс. Например, в http://foo.com/products/id, “/products/id” является маршрутом. |
CORS (Cross-Origin Resource Sharing) | Механизм, использующий дополнительные HTTP-заголовки, чтобы дать возможность агенту пользователя получать разрешения на доступ к выбранным ресурсам с сервера на источнике (домене), отличном от того, что сайт использует в данный момент. |
---|---|
GZIP (сокращение от GNU Zip) | Утилита сжатия и восстановления (декомпрессии) файлов, использующая алгоритм Deflate. Применяется в основном в UNIX-системах, в ряде которых является стандартом де-факто для сжатия данных. |
SSL (Secure Sockets Layer — уровень защищённых cокетов) | Криптографический протокол, который подразумевает более безопасную связь. Он использует асимметричную криптографию для аутентификации ключей обмена, симметричное шифрование для сохранения конфиденциальности, коды аутентификации сообщений для целостности сообщений. |
HTTP Public Key Pinning | Механизм безопасности в Интернете, предоставляемый через HTTP-заголовок, который позволяет веб-сайтам HTTPS противостоять персонализации злоумышленников с использованием ошибочных или иных мошеннических сертификатов. Для этого он предоставляет набор открытых ключей клиенту (браузеру), который должен быть единственным, которому доверяют подключения к этому домену. |
HTTP Strict Transport Security | Механизм, принудительно активирующий защищённое соединение через протокол HTTPS. Данная политика безопасности позволяет сразу же устанавливать безопасное соединение вместо использования HTTP-протокола. |
Сниффинг (sniffing) | Вид атаки, предусматривающий просмотр всех сетевых пакетов специальным приложением (сниффером) с целью получения различной информации |
Clickjacking | Механизм обмана пользователей интернета, при котором злоумышленник может получить доступ к конфиденциальной информации или даже получить доступ к компьютеру пользователя, заманив его на внешне безобидную страницу или внедрив вредоносный код на безопасную страницу. |
XSS (Cross-Site Scripting) | Тип атаки на веб-системы, заключающийся во внедрении в выдаваемую веб-системой страницу вредоносного кода (который будет выполнен на компьютере пользователя при открытии им этой страницы) и взаимодействии этого кода с веб-сервером злоумышленника |
CRUD | Create + Read + Update + Delete: объединенное понятия для элементарных операций с данными в базе данных. |
---|---|
Документная база данных | база данныхбаза данных, специально предназначенная для хранения иерархических структур данных (документов) и обычно реализуемая с помощью подхода NoSQL |
Реляционная база данных | база данных, основанная на реляционной модели данных. Понятие «реляционный» основано на англ. relation («отношение», «зависимость», «связь»). |
NoSQL | термин, обозначающий ряд подходов, направленных на реализацию хранилищ баз данных, имеющих существенные отличия от моделей, используемых в традиционных реляционных СУБД с доступом к данным средствами языка SQL. |