Цикли for..in и for..of в JS

Цикл for является самым базовым методом итерирование массивов в JS. Он принимает три выражения: инициализация счетчика проверка условия остановки и изменения индекса. Например, нам нужно вывести значение элементов массива Но в ES6 было добавлено два новых способа обойти массив с использованием цикла for. Эти методы называется for of и for in. Цикл for…in for…in используется … 

 

Firebase транзакции

Поддержка транзакций является одной из основных причин выбрать реляционную базу даных вместо NoSQl. В особенности если для вашего приложение очень важна точность и корректность даных. Firebase хотя и не поддерживает ACID, дает возможность атомарного изменения даных. В этой статье рассмотрим механизм транзакций firebase realtime database. Транзакционное обновление даных Если вы работаете с данными которые могут … 

 

ES6 модули (ECMAScript 6 modules)

В этой статье сделан обзор системы модулей в ES6. Старая система модулей JavaScript В JavaScript нет встроенной поддержки модулей, но сообщество создало несколько прекрасных решений этой проблемы. Среди самых популярных можно выделить два таких: Система модулей CommonJS: предпочтительно для использования в Node.js Особенности: — компактный синтаксис — спроектировано для синхронной загрузки зависимостей — главная среда … 

 

Метод 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 выражения. Первое выражение …