Как написать Virtual Dom

Есть 2 вещи, которые необходимо знать. Вам не нужно погружаться в исходный код React’а или других библиотек, они довольно большие и сложные, на самом деле Virtual DOM может быть написан в меньше чем 50 строк кода.

  1. Virtual DOM это аналог настоящего DOM
  2. Когда мы меняем что-то в дереве Virtual DOM , мы создаем новый Virtual DOM. Алгоритм сравнения двух деревьев вычисляет разницу и вносит только необходимые, минимальные правки в  настоящий DOM.

Читать далее Как написать Virtual Dom

html5 notification VS web push api

В чем разница между html5 notification и web push API?

html5 notification используется для отображения уведомлений с веб-страницы, в то время как Push API, используется для отправки уведомлений удаленно, даже если веб-страница неактивна.

Koa vs Express

Философия koa направлена на «исправление и замену узлов», в то время как express — «расширяет узел». Koa использует co, чтобы избавить приложение от callback-hell’а и упростить обработку ошибок. Он выставляет собственные this.request и this.response вместо аргументов функции, объектов req и res.

С другой стороны, express расширяет объекты req и res дополнительными методами и свойствами, включает в себя много других «фишек» таких как: маршрутизация и шаблонизация. В koa этого нет.

Таким образом, koa можно рассматривать как абстрактный http модуль для node.js, а express это полноценный фреймворк.

Как распаковать ахрив в linux

Для сжатия файла есть GNU zip.
Для запуска команды выполните — gzip, для декомпрессии gunzip

Для того, чтобы сложить несколько файлов в архив нужно использовать tar.

#c - режим создания.
#v - отобразит размер файла, права доступа.
#f - файл параметр.
tar cvf archive.tar file1 file2

Для того, чтобы распаковать файл:

# - режим распаковки.
tar xvf archive.tar

Для чего нужно ядро linux

Практически все, что выполняет ядро, касается оперативной памяти. Ядро отвечает за управление задачами в четырех основных областях системы.

Процессы. Ядро отвечает за то, каким процессам разрешен доступ к центральному процессору.

Память. Ядру необходимо отслеживать состояние всей памяти: какая часть в данный момент отведена под определенные процессы, что можно выделить для совместного использования процессами и какая часть свободна.

Драйверы устройств. Ядро выступает интерфейсом между «железом» и процессами. И как правило, управляет «железом».

Системные вызовы и поддержка. Обычно процессы используют системные вызовы для взаимодействия с ядром.

Добавление директории в $PATH

PATH — переменная окружения, которая сообщает shell интерпретатору — в какой директории искать исполняемые файлы, в ответ на команды, введённые пользователем.

Для того, чтобы добавить путь, отредактируйте .bashrc файл в домашней директории и добавьте следующую строку:

export PATH=/path/to/dir:$PATH

Пауза в bash

Для того, чтобы поставить исполнение команды на паузу и запустить другую, можно нажать комбинацию клавиш — CTRL+Z. Для того, чтобы восстановить процесс нужно набрать команду fg.

Redis API — основные возможности

Для взаимодействия между node.js и nosql базой данных — redis, можно воспользоваться модулем node_redis (npm install redis).

Структуры данных поддерживаемые redis’ом:

  • Хеш-таблицы
  • Списки
  • Пары ключ/значение
  • Множества (set)

Читать далее Redis API — основные возможности