monster1
Организатор
- #1
[Patreon] Node.js 2022-2023. План Expert на 1 год [Тимур Шемсединов]
- Ссылка на картинку
Node.js, 2022-2023
Новый курс - это максимально сконцентрированная информация и практические задачи по разработке на чистой ноде но с хорошей архитектурой и использованием всех современных возможностей Node.js
Чем это курс не является:
- это не чтение документации;
- не курс по фреймворкам;
- не курс по Metarhia;
- не повторение старого курса;
- не лайвкодинг и не мастеркласс;
- не стрим.
Содержание:
- Node.js Введение в технологию, обзор API, основные идеи: за счет чего реализована экономия памяти, cpu, I/O;
- Системы модулей CJS (CommonJS) and ESM (ECMAScrip modules), особенности в Node.js, зависимости и пакеты npm;
- Асинхронное программирование: event loop, async hooks, race condition, callbacks, async/await, thenable, promises;
- Параллельное программирование: threads, semaphore, mutex, spin locks, Atomics, SharedArrayBuffer, Web Locks API;
- Реактивное программирование: Observer, EventEmitter, RxJS, асинхронные и конкурентные очереди, async collectors;
- Изоляция кода и данных в Node.js: vm, v8, защита global, контекстов, модулей и прототипов от патчинга;
- Работа с файлами: fs, Buffer, Stream, pipe, backpressure, Web streams API, наблюдение за файловой системой;
- Структура и архитектура проекта, слои, DDD, Clean architecture, связанность и связность кода, протекание абстракций;
- Принципы GRASP и SOLID в JavaScript с адаптацией для Node.js, IoC (инверсия управления) и DI (внедрение зависимостей);
- Сетевые протоколы: HTTP(S), HTTP2, TCP, UDP, TLS, Websocket, SSE, HTTP/3 (QUIC);
- Принципы взаимодействия систем: REST, RPC, Pipeline, Event-bus, Event-broker, клиент-сервер, peer-to-peer;
- API на принципах транспорт-агностик и фреймворк-агностик, контракты, реализация сессий и сервиса аутентификации;
- Приложения, приближенные к реальному времени, интерактивность и коллаборативные приложения на вебсокетах;
- Распространенные паттерны и антипаттерны в приложениях на Node.js;
- Распределенные системы, высоконагруженные системы, балансировка нагрузки, кластеризация и масштабирование, IP sticky;
- Вопросы безопасности: DoS, XSS, Path traversal, CSRF, SQL-инъекции;
- Работа с базами данных, слой доступа к данным, описание структуры данных, доступ к данным, postgres, redis, in-memory;
- Сравнение подходов domain in the middle, ORM, active record, repository, data mapper, схемы данных, query builder;
- Утечки памяти и ресурсов, количественная оценка надежности, устойчивости, доступности, гибкости, качества;
- Инфраструктура и инструментарий: логирование, тестирование, линтеры, отладка, CI/CD, встроенный testing framework;
- Performance hooks, телеметрия ресурсов и оптимизация: I/O bound, CPU bound, memory bound, профилирование;
- Graceful shutdown в Node.js, работа с ошибками и исключениями, unhandled exceptions, stack trace;
- Встроенная криптография в Node.js (openssl), addons, plugins, Node-API (ранее N-API), WASI (Webassembly);
- Serverless и облачные FaaS решения на базе Node.js;
- Практическое использование интроспекции, рефлекcии и скаффолдинга.
Объем материала: 20 часов лекций, еженедельно 2 часа семинары в течении года, репозитории с примерами кода.
Новый курс - это максимально сконцентрированная информация и практические задачи по разработке на чистой ноде но с хорошей архитектурой и использованием всех современных возможностей Node.js
Чем это курс не является:
- это не чтение документации;
- не курс по фреймворкам;
- не курс по Metarhia;
- не повторение старого курса;
- не лайвкодинг и не мастеркласс;
- не стрим.
Содержание:
- Node.js Введение в технологию, обзор API, основные идеи: за счет чего реализована экономия памяти, cpu, I/O;
- Системы модулей CJS (CommonJS) and ESM (ECMAScrip modules), особенности в Node.js, зависимости и пакеты npm;
- Асинхронное программирование: event loop, async hooks, race condition, callbacks, async/await, thenable, promises;
- Параллельное программирование: threads, semaphore, mutex, spin locks, Atomics, SharedArrayBuffer, Web Locks API;
- Реактивное программирование: Observer, EventEmitter, RxJS, асинхронные и конкурентные очереди, async collectors;
- Изоляция кода и данных в Node.js: vm, v8, защита global, контекстов, модулей и прототипов от патчинга;
- Работа с файлами: fs, Buffer, Stream, pipe, backpressure, Web streams API, наблюдение за файловой системой;
- Структура и архитектура проекта, слои, DDD, Clean architecture, связанность и связность кода, протекание абстракций;
- Принципы GRASP и SOLID в JavaScript с адаптацией для Node.js, IoC (инверсия управления) и DI (внедрение зависимостей);
- Сетевые протоколы: HTTP(S), HTTP2, TCP, UDP, TLS, Websocket, SSE, HTTP/3 (QUIC);
- Принципы взаимодействия систем: REST, RPC, Pipeline, Event-bus, Event-broker, клиент-сервер, peer-to-peer;
- API на принципах транспорт-агностик и фреймворк-агностик, контракты, реализация сессий и сервиса аутентификации;
- Приложения, приближенные к реальному времени, интерактивность и коллаборативные приложения на вебсокетах;
- Распространенные паттерны и антипаттерны в приложениях на Node.js;
- Распределенные системы, высоконагруженные системы, балансировка нагрузки, кластеризация и масштабирование, IP sticky;
- Вопросы безопасности: DoS, XSS, Path traversal, CSRF, SQL-инъекции;
- Работа с базами данных, слой доступа к данным, описание структуры данных, доступ к данным, postgres, redis, in-memory;
- Сравнение подходов domain in the middle, ORM, active record, repository, data mapper, схемы данных, query builder;
- Утечки памяти и ресурсов, количественная оценка надежности, устойчивости, доступности, гибкости, качества;
- Инфраструктура и инструментарий: логирование, тестирование, линтеры, отладка, CI/CD, встроенный testing framework;
- Performance hooks, телеметрия ресурсов и оптимизация: I/O bound, CPU bound, memory bound, профилирование;
- Graceful shutdown в Node.js, работа с ошибками и исключениями, unhandled exceptions, stack trace;
- Встроенная криптография в Node.js (openssl), addons, plugins, Node-API (ранее N-API), WASI (Webassembly);
- Serverless и облачные FaaS решения на базе Node.js;
- Практическое использование интроспекции, рефлекcии и скаффолдинга.
Объем материала: 20 часов лекций, еженедельно 2 часа семинары в течении года, репозитории с примерами кода.
Зарегистрируйтесь
, чтобы посмотреть скрытый авторский контент.