Event Loop NodeJS: Part 1

Event Loop NodeJS NodeJS отличается от других платформ тем, как обрабатываются события ввода/вывода, или проще I/O. NodeJS рекламируют как “Не блокирующая, событийно управляемая платформа на базе движка JavaScript V8” (да, именно от V-образного 8-цилиндрового двигателя название и было взято). Что все это значит? Что значит “не блокирующий” и “событийно управляемый”? Ответы на все эти вопросы лежат в основе ядра NodeJS - цикле событий (Event Loop). Это первая статья из серии где будет объяснено что такое Event Loop, как он работает и как это влияет на разработка.

LAMP сервер для разработки (без PHP на хосте)

В этой статье я расскажу как можно быстро поднять связку PHP + MySql используя Docker на компьютере без установки чего-либо на хост (docker, конечно, уже должен быть установлен) Требования легкость в использовании возможность запуска нескольких сайтов легкость развертывания нового сайта общий сервер базы данных для всех сайтов запуск одной строкой доступ к исходному коду сайта возможность использования разных версий PHP В результате потребуется запустить общие для всех сайтов сервисы (это можно поставить в автозапуск)

Монорепозиторий с Lerna для Angular

Последовательность действий Создаем приложение для ng new monorepo --createApplication=false npx lerna init ng g lib first Изменим путь где lerna будет искать пакеты на путь где angular хранит свои проекты 1 2 3 4 5 6 { "packages": [ "projects/*" ], ... } Теперь папку packages, автоматически созданную lerna, можно удалить rm -r packages И создадим пару библиотек ng g lib first ng g lib second Если требуется, меняем имена пакетов в библиотеках

Паттерны проектирования

Паттерны проектирования или шаблоны проектирования — это типичные способы решения некоторых типичных проблем. Википедия описывает их следующим образом: Шаблон проектирования, или паттерн, в разработке программного обеспечения — повторяемая архитектурная конструкция, представляющая собой решение проблемы проектирования, в рамках некоторого часто возникающего контекста. Не стоит преувеличивать значение паттернов и применять везде и в обязательном порядке. Однако и приуменьшать их значение тоже не стоит. Это методы решение частых задач и эти методы являются опытом других разработчиков.

Установка скрытой reCaptcha от Google

Google предоставляет замечательное средство для борьбы со спамом — reCaptcha Обычно это просто галочка «Я не робот» Однако есть возможность не делать даже этого — Invisible reCAPTCHA проверяет пользователя в фоне и только если возникли сомнения отображает окно с дополнительным подтверждением Подключить невидимую рекапчу очень просто: Создаем контейнер и подключаем скрипт 1 2 3 <div id="recaptcha"></div> <script src="https://www.google.com/recaptcha/api.js?onload=onloadReCaptchaInvisible&render=explicit" async defer></script> Настраиваем и пару функций для удобной работы