Метод Array.includes в JS

В этой статье рассмотрим новый метод “Array.prototype.includes” добавленный в ECMAScript 2016 Обзор Метод для массива includes Метод includes имеет такую сигнатуру: Он возвращает истина если elem является элементом массива и ложь если в противном случае. includes похож на метод indexOf — выражение нижа практически идентичны Главным отличием является, то что includes() находит NaN, а indexOf() … 

 

Пример реализации патерна DAO и VO в Java

В этой статье рассмотрим один из вариантов абстрагирования работы с базой даных, который позволит менять источник данных только изменив конфигурацию. Способ доступа к данным зависит от источника, где они хранятся, а способ доступа к хранилищу данных сильно зависит от его типа, например доступ к реляционной базе данных и файловой имеет существенные отличия. Работа с реляционными … 

 

ES2017 async/await в Node.js

В этой статье разберемся что не так с промисами, как ключевое слово await поможет решить эту проблему, и как использовать это прямо сейчас. Одним из самых лучших нововведений в ES7 считается синтаксис async/await. Хотя это всего лишь синтаксический сахар поверх Promises, эти два ключевых слова помогут писать асинхронный код намного приятней, а также помогут решить … 

 

Базы данных NewSQL

Введение В последнее время нереляционные базы данных приобрели широкую популярность, из-за ряда преимуществ: отсутствие схемы, высокая производительность, возможность линейного масштабирования, уменьшения времени разработки. Но в свою очередь, такие базы данных имеют свои недостатки, например, отсутствие поддержки транзакций в большинстве из них. Возникла проблема: как достичь производительности NoSQL и сохранить поддержку принципов ACID? Еще одним преимуществом … 

 

Масштабирование графовой базы данных Neo4j

Все СУБД которые хотят отвечать современным требованиям должны хорошо масштабироваться. Neo4j поддерживает горизонтальное масштабирование master-slave. Каждый узел разбит на две части, непосредственно база данных и компонент управления кластером. Этот компонент постоянно держит связь с другими узлам и принимает соответствующие решения. Когда необходимо выбрать главный узел, этот компонент проверяет, правильно ли выбран главный узел. Это происходит … 

 

Neo4j как ядро рекомендательной системы

Бурное развитие электронной коммерции годами способствовало развитию рекомендательных систем (РС), поскольку это очень эффективный и дешевый способ увеличения количества продаж. С этим ростом также возросли требования к РС. Все больше и больше компаний сталкиваются с большими объемами данных, требует от них разработки масштабируемых решений. Также в эру социальных сетей важную роль играют связи между пользователями. … 

 

Цикл for vs forEach в JavaScript

Если ты новенький в JavaScript, то тебе может быть не понятна разница между использованием цикла for и метода Array.forEach. В этой статье я сделаю сравнительный анализ этих двух способов итерирование массива. Синтаксис Синтаксис цикла for довольно простой, и мало чем отличается от такого цикла в других языках програмирования. Цикл for принимает 3 выражения. Первое выражение … 

 

Аргументы командной строки в Node.js

Что такое аргументы командной строки (Command Line Arguments)? Аргументы командной строки — это строки которые используются для передачи дополнительной информации перед запуском программы из терминала (CLI) операционной системы. Аргументы командной строки как правило содержат параметры конфигурации приложения, например, адрес порта HTTP сервера. В большинстве случаев аргументы передаются после названия программы. Пример синтаксиса можно увидеть ниже: … 

 

Графовая база данных Neo4j

Хранение данных в реляционных СУБД имеет свои преимущества, но для определенных типов задач не подходит, особенно когда необходимо хранить много связей между данными. Для решения этих проблем можно применить графовую СУБД. Для начала стоит сделаем краткий обзор, Neo4j — графовая база данных с открытым исходным кодом разработана на языке Java, с поддержкой транзакции (ACID). Данные … 

 

Как отправить пуш сообщение в Node.js?

Сначалa нужно установить пакет firebase-admin: Далее импортироем библиотеку: Для отправки пуш сообщения будем использовать метод sendToDevice (). Он принимает параметром массив пуш токенов, вторим параметром данные сообщение.   Также FCM позволяет отправить сообщение группе устройств, для этого используэться механизм pub/sub.