Enviar búsqueda
Cargar
Филипп Ковалев — Путь в npm
•
0 recomendaciones
•
1,350 vistas
Yandex
Seguir
Denunciar
Compartir
Denunciar
Compartir
1 de 37
Descargar ahora
Descargar para leer sin conexión
Recomendados
Оптимизация трассирования с использованием Expression templates
Оптимизация трассирования с использованием Expression templates
Platonov Sergey
Аскетичная разработка браузера
Аскетичная разработка браузера
Platonov Sergey
сценарии использования статического анализатора
сценарии использования статического анализатора
Mikhail Shcherbakov
По колено в Си++ г... коде
По колено в Си++ г... коде
Tatyanazaxarova
Григорий Демченко, Асинхронность и неблокирующая синхронизация
Григорий Демченко, Асинхронность и неблокирующая синхронизация
Sergey Platonov
Практичне профілювання продуктивності
Практичне профілювання продуктивності
Shtrih Sruleg
Архитектура. Доступноять программных систем.
Архитектура. Доступноять программных систем.
Dima Dzuba
Обработка ошибок и исключений
Обработка ошибок и исключений
itclub_kz
Recomendados
Оптимизация трассирования с использованием Expression templates
Оптимизация трассирования с использованием Expression templates
Platonov Sergey
Аскетичная разработка браузера
Аскетичная разработка браузера
Platonov Sergey
сценарии использования статического анализатора
сценарии использования статического анализатора
Mikhail Shcherbakov
По колено в Си++ г... коде
По колено в Си++ г... коде
Tatyanazaxarova
Григорий Демченко, Асинхронность и неблокирующая синхронизация
Григорий Демченко, Асинхронность и неблокирующая синхронизация
Sergey Platonov
Практичне профілювання продуктивності
Практичне профілювання продуктивності
Shtrih Sruleg
Архитектура. Доступноять программных систем.
Архитектура. Доступноять программных систем.
Dima Dzuba
Обработка ошибок и исключений
Обработка ошибок и исключений
itclub_kz
лабораторная работа №8
лабораторная работа №8
Zhanna Kazakova
Особенности создания XS-модулей на языке C++. Владимир Тимофеев. Moscow.pm 4 ...
Особенности создания XS-модулей на языке C++. Владимир Тимофеев. Moscow.pm 4 ...
Moscow.pm
176023
176023
whitepawn2012
Суперсилы Chrome developer tools
Суперсилы Chrome developer tools
2ГИС Технологии
Dmitrii Dolzhenko «С++ Problems and How Test Frameworks Actually Work»
Dmitrii Dolzhenko «С++ Problems and How Test Frameworks Actually Work»
LogeekNightUkraine
Белов наиболее часто уязвимые места в веб приложениях
Белов наиболее часто уязвимые места в веб приложениях
qasib
СУБД 2013 Лекция №9 "Безопасность баз данных"
СУБД 2013 Лекция №9 "Безопасность баз данных"
Technopark
Павел Беликов, Как избежать ошибок, используя современный C++
Павел Беликов, Как избежать ошибок, используя современный C++
Sergey Platonov
Объектно-ориентированное программирование. Лекция 5 и 6
Объектно-ориентированное программирование. Лекция 5 и 6
Dima Dzuba
СУБД 2013 Лекция №4 "Расширенные возможности работы с базами данных. Триггеры...
СУБД 2013 Лекция №4 "Расширенные возможности работы с базами данных. Триггеры...
Technopark
Приемы, затрудняющие обнаружение и анализ вредоносного кода в PHP скриптах
Приемы, затрудняющие обнаружение и анализ вредоносного кода в PHP скриптах
revisium
TARS: Сделай уровень frontend-рутины 0% — Артём Малко, 2ГИС
TARS: Сделай уровень frontend-рутины 0% — Артём Малко, 2ГИС
2ГИС Технологии
Профилирование Go приложений, Стас Макаров, 220 Вольт
Профилирование Go приложений, Стас Макаров, 220 Вольт
Mail.ru Group
"Истории из жизни опытного iOS разработчика"— Игорь Чертенков
"Истории из жизни опытного iOS разработчика"— Игорь Чертенков
Improve Group
Приемы, затрудняющие обнаружение и анализ вредоносного кода в PHP-сценариях
Приемы, затрудняющие обнаружение и анализ вредоносного кода в PHP-сценариях
Positive Hack Days
PHP basic
PHP basic
Noveo
Александр Кошелев: Препарирование работы асинхронного кода
Александр Кошелев: Препарирование работы асинхронного кода
it-people
Как мы уменьшили количество ошибок в Unreal Engine с помощью статического ана...
Как мы уменьшили количество ошибок в Unreal Engine с помощью статического ана...
Platonov Sergey
ES6. Генераторы
ES6. Генераторы
oelifantiev
Филипп Торчинский «Анализ производительности и отладка приложений с помощью D...
Филипп Торчинский «Анализ производительности и отладка приложений с помощью D...
Yandex
npm: Modularizing your JavaScript development
npm: Modularizing your JavaScript development
Ruy Adorno
Nodeconf npm 2011
Nodeconf npm 2011
Florent Jaby ヅ
Más contenido relacionado
La actualidad más candente
лабораторная работа №8
лабораторная работа №8
Zhanna Kazakova
Особенности создания XS-модулей на языке C++. Владимир Тимофеев. Moscow.pm 4 ...
Особенности создания XS-модулей на языке C++. Владимир Тимофеев. Moscow.pm 4 ...
Moscow.pm
176023
176023
whitepawn2012
Суперсилы Chrome developer tools
Суперсилы Chrome developer tools
2ГИС Технологии
Dmitrii Dolzhenko «С++ Problems and How Test Frameworks Actually Work»
Dmitrii Dolzhenko «С++ Problems and How Test Frameworks Actually Work»
LogeekNightUkraine
Белов наиболее часто уязвимые места в веб приложениях
Белов наиболее часто уязвимые места в веб приложениях
qasib
СУБД 2013 Лекция №9 "Безопасность баз данных"
СУБД 2013 Лекция №9 "Безопасность баз данных"
Technopark
Павел Беликов, Как избежать ошибок, используя современный C++
Павел Беликов, Как избежать ошибок, используя современный C++
Sergey Platonov
Объектно-ориентированное программирование. Лекция 5 и 6
Объектно-ориентированное программирование. Лекция 5 и 6
Dima Dzuba
СУБД 2013 Лекция №4 "Расширенные возможности работы с базами данных. Триггеры...
СУБД 2013 Лекция №4 "Расширенные возможности работы с базами данных. Триггеры...
Technopark
Приемы, затрудняющие обнаружение и анализ вредоносного кода в PHP скриптах
Приемы, затрудняющие обнаружение и анализ вредоносного кода в PHP скриптах
revisium
TARS: Сделай уровень frontend-рутины 0% — Артём Малко, 2ГИС
TARS: Сделай уровень frontend-рутины 0% — Артём Малко, 2ГИС
2ГИС Технологии
Профилирование Go приложений, Стас Макаров, 220 Вольт
Профилирование Go приложений, Стас Макаров, 220 Вольт
Mail.ru Group
"Истории из жизни опытного iOS разработчика"— Игорь Чертенков
"Истории из жизни опытного iOS разработчика"— Игорь Чертенков
Improve Group
Приемы, затрудняющие обнаружение и анализ вредоносного кода в PHP-сценариях
Приемы, затрудняющие обнаружение и анализ вредоносного кода в PHP-сценариях
Positive Hack Days
PHP basic
PHP basic
Noveo
Александр Кошелев: Препарирование работы асинхронного кода
Александр Кошелев: Препарирование работы асинхронного кода
it-people
Как мы уменьшили количество ошибок в Unreal Engine с помощью статического ана...
Как мы уменьшили количество ошибок в Unreal Engine с помощью статического ана...
Platonov Sergey
ES6. Генераторы
ES6. Генераторы
oelifantiev
Филипп Торчинский «Анализ производительности и отладка приложений с помощью D...
Филипп Торчинский «Анализ производительности и отладка приложений с помощью D...
Yandex
La actualidad más candente
(20)
лабораторная работа №8
лабораторная работа №8
Особенности создания XS-модулей на языке C++. Владимир Тимофеев. Moscow.pm 4 ...
Особенности создания XS-модулей на языке C++. Владимир Тимофеев. Moscow.pm 4 ...
176023
176023
Суперсилы Chrome developer tools
Суперсилы Chrome developer tools
Dmitrii Dolzhenko «С++ Problems and How Test Frameworks Actually Work»
Dmitrii Dolzhenko «С++ Problems and How Test Frameworks Actually Work»
Белов наиболее часто уязвимые места в веб приложениях
Белов наиболее часто уязвимые места в веб приложениях
СУБД 2013 Лекция №9 "Безопасность баз данных"
СУБД 2013 Лекция №9 "Безопасность баз данных"
Павел Беликов, Как избежать ошибок, используя современный C++
Павел Беликов, Как избежать ошибок, используя современный C++
Объектно-ориентированное программирование. Лекция 5 и 6
Объектно-ориентированное программирование. Лекция 5 и 6
СУБД 2013 Лекция №4 "Расширенные возможности работы с базами данных. Триггеры...
СУБД 2013 Лекция №4 "Расширенные возможности работы с базами данных. Триггеры...
Приемы, затрудняющие обнаружение и анализ вредоносного кода в PHP скриптах
Приемы, затрудняющие обнаружение и анализ вредоносного кода в PHP скриптах
TARS: Сделай уровень frontend-рутины 0% — Артём Малко, 2ГИС
TARS: Сделай уровень frontend-рутины 0% — Артём Малко, 2ГИС
Профилирование Go приложений, Стас Макаров, 220 Вольт
Профилирование Go приложений, Стас Макаров, 220 Вольт
"Истории из жизни опытного iOS разработчика"— Игорь Чертенков
"Истории из жизни опытного iOS разработчика"— Игорь Чертенков
Приемы, затрудняющие обнаружение и анализ вредоносного кода в PHP-сценариях
Приемы, затрудняющие обнаружение и анализ вредоносного кода в PHP-сценариях
PHP basic
PHP basic
Александр Кошелев: Препарирование работы асинхронного кода
Александр Кошелев: Препарирование работы асинхронного кода
Как мы уменьшили количество ошибок в Unreal Engine с помощью статического ана...
Как мы уменьшили количество ошибок в Unreal Engine с помощью статического ана...
ES6. Генераторы
ES6. Генераторы
Филипп Торчинский «Анализ производительности и отладка приложений с помощью D...
Филипп Торчинский «Анализ производительности и отладка приложений с помощью D...
Destacado
npm: Modularizing your JavaScript development
npm: Modularizing your JavaScript development
Ruy Adorno
Nodeconf npm 2011
Nodeconf npm 2011
Florent Jaby ヅ
NPM THE GUIDE
NPM THE GUIDE
Kameron Tanseli
Структурированные данные, Юлия Тихоход, лекция в Школе вебмастеров Яндекса
Структурированные данные, Юлия Тихоход, лекция в Школе вебмастеров Яндекса
Yandex
Как принять/организовать работу по поисковой оптимизации сайта, Сергей Царик,...
Как принять/организовать работу по поисковой оптимизации сайта, Сергей Царик,...
Yandex
Introduction to NPM and building CLI Tools with Node.js
Introduction to NPM and building CLI Tools with Node.js
Suroor Wijdan
Предсказание оттока игроков из World of Tanks
Предсказание оттока игроков из World of Tanks
Yandex
Destacado
(7)
npm: Modularizing your JavaScript development
npm: Modularizing your JavaScript development
Nodeconf npm 2011
Nodeconf npm 2011
NPM THE GUIDE
NPM THE GUIDE
Структурированные данные, Юлия Тихоход, лекция в Школе вебмастеров Яндекса
Структурированные данные, Юлия Тихоход, лекция в Школе вебмастеров Яндекса
Как принять/организовать работу по поисковой оптимизации сайта, Сергей Царик,...
Как принять/организовать работу по поисковой оптимизации сайта, Сергей Царик,...
Introduction to NPM and building CLI Tools with Node.js
Introduction to NPM and building CLI Tools with Node.js
Предсказание оттока игроков из World of Tanks
Предсказание оттока игроков из World of Tanks
Similar a Филипп Ковалев — Путь в npm
Алексей Андросов - Debugger: Отладка кода
Алексей Андросов - Debugger: Отладка кода
Yandex
Нетривиальная обработка ошибок
Нетривиальная обработка ошибок
oelifantiev
2014-10-04 02 Владислав Безверхий. Mocha - покрой frontend по полной
2014-10-04 02 Владислав Безверхий. Mocha - покрой frontend по полной
Омские ИТ-субботники
Статический анализ исходного кода на примере WinMerge
Статический анализ исходного кода на примере WinMerge
Tatyanazaxarova
FrontTalks: Алексей Андросов (Яндекс), «Ошибки, которые мы любим»
FrontTalks: Алексей Андросов (Яндекс), «Ошибки, которые мы любим»
Yandex
#2 "Распространённые ошибки в JavaScript" Денис Речкунов
#2 "Распространённые ошибки в JavaScript" Денис Речкунов
JSib
Цена ошибки
Цена ошибки
Platonov Sergey
Цена ошибки
Цена ошибки
Andrey Karpov
Waf.js: как защищать веб-приложения с использованием JavaScript
Waf.js: как защищать веб-приложения с использованием JavaScript
Positive Hack Days
Оптимизация трассирования с использованием Expression templates
Оптимизация трассирования с использованием Expression templates
Platonov Sergey
обработка исключений в Java
обработка исключений в Java
metaform
Alexei Sintsov - "Between error and vulerability - one step"
Alexei Sintsov - "Between error and vulerability - one step"
Andrew Mayorov
тестирование защищенности веб приложений
тестирование защищенности веб приложений
Zestranec
Тестирование защищенности веб-приложений
Тестирование защищенности веб-приложений
SQALab
статический анализ кода
статический анализ кода
Andrey Karpov
Статический анализ кода
Статический анализ кода
Pavel Tsukanov
PVS-Studio. Статический анализатор кода. Windows/Linux, C/C++/C#
PVS-Studio. Статический анализатор кода. Windows/Linux, C/C++/C#
Andrey Karpov
Принципы работы статического анализатора кода PVS-Studio
Принципы работы статического анализатора кода PVS-Studio
Andrey Karpov
Bytecode
Bytecode
Alex Tumanoff
Поиск уязвимостей с использованием статического анализа кода
Поиск уязвимостей с использованием статического анализа кода
Andrey Karpov
Similar a Филипп Ковалев — Путь в npm
(20)
Алексей Андросов - Debugger: Отладка кода
Алексей Андросов - Debugger: Отладка кода
Нетривиальная обработка ошибок
Нетривиальная обработка ошибок
2014-10-04 02 Владислав Безверхий. Mocha - покрой frontend по полной
2014-10-04 02 Владислав Безверхий. Mocha - покрой frontend по полной
Статический анализ исходного кода на примере WinMerge
Статический анализ исходного кода на примере WinMerge
FrontTalks: Алексей Андросов (Яндекс), «Ошибки, которые мы любим»
FrontTalks: Алексей Андросов (Яндекс), «Ошибки, которые мы любим»
#2 "Распространённые ошибки в JavaScript" Денис Речкунов
#2 "Распространённые ошибки в JavaScript" Денис Речкунов
Цена ошибки
Цена ошибки
Цена ошибки
Цена ошибки
Waf.js: как защищать веб-приложения с использованием JavaScript
Waf.js: как защищать веб-приложения с использованием JavaScript
Оптимизация трассирования с использованием Expression templates
Оптимизация трассирования с использованием Expression templates
обработка исключений в Java
обработка исключений в Java
Alexei Sintsov - "Between error and vulerability - one step"
Alexei Sintsov - "Between error and vulerability - one step"
тестирование защищенности веб приложений
тестирование защищенности веб приложений
Тестирование защищенности веб-приложений
Тестирование защищенности веб-приложений
статический анализ кода
статический анализ кода
Статический анализ кода
Статический анализ кода
PVS-Studio. Статический анализатор кода. Windows/Linux, C/C++/C#
PVS-Studio. Статический анализатор кода. Windows/Linux, C/C++/C#
Принципы работы статического анализатора кода PVS-Studio
Принципы работы статического анализатора кода PVS-Studio
Bytecode
Bytecode
Поиск уязвимостей с использованием статического анализа кода
Поиск уязвимостей с использованием статического анализа кода
Más de Yandex
Представление сайта в поиске, Сергей Лысенко, лекция в Школе вебмастеров Яндекса
Представление сайта в поиске, Сергей Лысенко, лекция в Школе вебмастеров Яндекса
Yandex
Плохие методы продвижения сайта, Екатерины Гладких, лекция в Школе вебмастеро...
Плохие методы продвижения сайта, Екатерины Гладких, лекция в Школе вебмастеро...
Yandex
Основные принципы ранжирования, Сергей Царик и Антон Роменский, лекция в Школ...
Основные принципы ранжирования, Сергей Царик и Антон Роменский, лекция в Школ...
Yandex
Основные принципы индексирования сайта, Александр Смирнов, лекция в Школе веб...
Основные принципы индексирования сайта, Александр Смирнов, лекция в Школе веб...
Yandex
Мобильное приложение: как и зачем, Александр Лукин, лекция в Школе вебмастеро...
Мобильное приложение: как и зачем, Александр Лукин, лекция в Школе вебмастеро...
Yandex
Сайты на мобильных устройствах, Олег Ножичкин, лекция в Школе вебмастеров Янд...
Сайты на мобильных устройствах, Олег Ножичкин, лекция в Школе вебмастеров Янд...
Yandex
Качественная аналитика сайта, Юрий Батиевский, лекция в Школе вебмастеров Янд...
Качественная аналитика сайта, Юрий Батиевский, лекция в Школе вебмастеров Янд...
Yandex
Что можно и что нужно измерять на сайте, Петр Аброськин, лекция в Школе вебма...
Что можно и что нужно измерять на сайте, Петр Аброськин, лекция в Школе вебма...
Yandex
Как правильно поставить ТЗ на создание сайта, Алексей Бородкин, лекция в Школ...
Как правильно поставить ТЗ на создание сайта, Алексей Бородкин, лекция в Школ...
Yandex
Как защитить свой сайт, Пётр Волков, лекция в Школе вебмастеров
Как защитить свой сайт, Пётр Волков, лекция в Школе вебмастеров
Yandex
Как правильно составить структуру сайта, Дмитрий Сатин, лекция в Школе вебмас...
Как правильно составить структуру сайта, Дмитрий Сатин, лекция в Школе вебмас...
Yandex
Технические особенности создания сайта, Дмитрий Васильева, лекция в Школе веб...
Технические особенности создания сайта, Дмитрий Васильева, лекция в Школе веб...
Yandex
Конструкторы для отдельных элементов сайта, Елена Першина, лекция в Школе веб...
Конструкторы для отдельных элементов сайта, Елена Першина, лекция в Школе веб...
Yandex
Контент для интернет-магазинов, Катерина Ерошина, лекция в Школе вебмастеров ...
Контент для интернет-магазинов, Катерина Ерошина, лекция в Школе вебмастеров ...
Yandex
Как написать хороший текст для сайта, Катерина Ерошина, лекция в Школе вебмас...
Как написать хороший текст для сайта, Катерина Ерошина, лекция в Школе вебмас...
Yandex
Usability и дизайн - как не помешать пользователю, Алексей Иванов, лекция в Ш...
Usability и дизайн - как не помешать пользователю, Алексей Иванов, лекция в Ш...
Yandex
Cайт. Зачем он и каким должен быть, Алексей Иванов, лекция в Школе вебмастеро...
Cайт. Зачем он и каким должен быть, Алексей Иванов, лекция в Школе вебмастеро...
Yandex
Эталонное описание фильма на основе десятков дубликатов
Эталонное описание фильма на основе десятков дубликатов
Yandex
Поиск списков в неструктурированных данных
Поиск списков в неструктурированных данных
Yandex
Производительность параметрического поиска на основе опенсорс-платформы
Производительность параметрического поиска на основе опенсорс-платформы
Yandex
Más de Yandex
(20)
Представление сайта в поиске, Сергей Лысенко, лекция в Школе вебмастеров Яндекса
Представление сайта в поиске, Сергей Лысенко, лекция в Школе вебмастеров Яндекса
Плохие методы продвижения сайта, Екатерины Гладких, лекция в Школе вебмастеро...
Плохие методы продвижения сайта, Екатерины Гладких, лекция в Школе вебмастеро...
Основные принципы ранжирования, Сергей Царик и Антон Роменский, лекция в Школ...
Основные принципы ранжирования, Сергей Царик и Антон Роменский, лекция в Школ...
Основные принципы индексирования сайта, Александр Смирнов, лекция в Школе веб...
Основные принципы индексирования сайта, Александр Смирнов, лекция в Школе веб...
Мобильное приложение: как и зачем, Александр Лукин, лекция в Школе вебмастеро...
Мобильное приложение: как и зачем, Александр Лукин, лекция в Школе вебмастеро...
Сайты на мобильных устройствах, Олег Ножичкин, лекция в Школе вебмастеров Янд...
Сайты на мобильных устройствах, Олег Ножичкин, лекция в Школе вебмастеров Янд...
Качественная аналитика сайта, Юрий Батиевский, лекция в Школе вебмастеров Янд...
Качественная аналитика сайта, Юрий Батиевский, лекция в Школе вебмастеров Янд...
Что можно и что нужно измерять на сайте, Петр Аброськин, лекция в Школе вебма...
Что можно и что нужно измерять на сайте, Петр Аброськин, лекция в Школе вебма...
Как правильно поставить ТЗ на создание сайта, Алексей Бородкин, лекция в Школ...
Как правильно поставить ТЗ на создание сайта, Алексей Бородкин, лекция в Школ...
Как защитить свой сайт, Пётр Волков, лекция в Школе вебмастеров
Как защитить свой сайт, Пётр Волков, лекция в Школе вебмастеров
Как правильно составить структуру сайта, Дмитрий Сатин, лекция в Школе вебмас...
Как правильно составить структуру сайта, Дмитрий Сатин, лекция в Школе вебмас...
Технические особенности создания сайта, Дмитрий Васильева, лекция в Школе веб...
Технические особенности создания сайта, Дмитрий Васильева, лекция в Школе веб...
Конструкторы для отдельных элементов сайта, Елена Першина, лекция в Школе веб...
Конструкторы для отдельных элементов сайта, Елена Першина, лекция в Школе веб...
Контент для интернет-магазинов, Катерина Ерошина, лекция в Школе вебмастеров ...
Контент для интернет-магазинов, Катерина Ерошина, лекция в Школе вебмастеров ...
Как написать хороший текст для сайта, Катерина Ерошина, лекция в Школе вебмас...
Как написать хороший текст для сайта, Катерина Ерошина, лекция в Школе вебмас...
Usability и дизайн - как не помешать пользователю, Алексей Иванов, лекция в Ш...
Usability и дизайн - как не помешать пользователю, Алексей Иванов, лекция в Ш...
Cайт. Зачем он и каким должен быть, Алексей Иванов, лекция в Школе вебмастеро...
Cайт. Зачем он и каким должен быть, Алексей Иванов, лекция в Школе вебмастеро...
Эталонное описание фильма на основе десятков дубликатов
Эталонное описание фильма на основе десятков дубликатов
Поиск списков в неструктурированных данных
Поиск списков в неструктурированных данных
Производительность параметрического поиска на основе опенсорс-платформы
Производительность параметрического поиска на основе опенсорс-платформы
Филипп Ковалев — Путь в npm
1.
Яндекс Филипп Ковалев разработчик интерфейсов
2.
Зачем модули? 1. Делимся
решениями с другими командами 2. Уменьшаем кодовую базу приложения 3. Повышаем качество кода 2
3.
Почему показываем «наружу» 1.
Тесты, документация, дисциплина 2. Фидбек: фич-реквесты, баги, критика 3. Соискатели могут ознакомиться с предметом 3
4.
Путь 1: xamel Open
source at start
5.
Сразу разрабатывался публично 5
6.
npm install xamel xamel
.parse(xmlString, function( err , xml ) { if ( ! err ) { console.log( JSON.stringify( xml ) ); } }); 01. 02. 03. 04. 05. 6
7.
<text> м <fix> о
</fix> сква </text> { text: { _: 'мсква' , fix: 'о' } } Порядок узлов: пример 01. 02. 03. 01. 02. 03. 04. 7
8.
Порядок узлов: issues 8
9.
API для доступа
к узлам xml .$( 'banner/title/text()' ) xml .$( 'menu/item' ).eq( 0 ).attr( 'link' ) xml .$( 'list/*' ).eq( 0 ).name 01. 02. 03. 9
10.
Array#map/reduce var result =
xml .$( 'text/node()' ) .map(function( el ) { return ( el instanceof xamel.Tag ) ? { fix : el .text() } : el ; }); 01. 02. 03. 04. 05. 06. 10
11.
Умеет разбирать часть
дерева xamel .parse( xml, { buildPath : 'path/to/node' } , function( error , nodeset ) { // ... }); 01. 02. 03. 04. 05. 06. 11
12.
Тестируем производительность process.env.NODE_XAMEL_PERF_FACTOR =
.75 12
13.
Travis CI process.env.TRAVIS ===
'true' 13
14.
Путь 2: nodules Отчуждаем части приложения
15.
nodules / susanin роутер
16.
npm install susanin —
Заточен под ЧПУ — Парсинг запроса и формирование ссылок — Гибкое определение параметров в URL — Связывание URL с данными 16
17.
nodules / terror обработка
и логирование ошибок
18.
npm install terror var
Terror = require( 'terror' ), MyError = Terror .create( 'MyError' , { STRANGE_THING_HAPPENS : [ 2001 , 'Something strange happens' ] }); 01. 02. 03. 04. 05. 18
19.
Бросаем исключение throw MyError
.create( MyError .CODES.STRANGE_THING_HAPPENS); throw new MyError ( MyError .CODES.STRANGE_THING_HAPPENS); 01. 02. 01. 02. 19
20.
Нормализуем «чужие» ошибки try
{ // ... } catch( error ) { MyError .ensureError( error ).log(); } 01. 02. 03. 04. 05. 20
21.
Readable and parsable 21
22.
Кастомизация 22
23.
nodules / asker http.request wrapper
24.
npm install asker —
gzip — Кастомная обработка HTTP кодов ответа — Перезапросы — Тонкая настройка http.Agent — Интеграция с Terror — Promise обертка vow-asker 24
25.
OM-NOM-NOM 25
26.
Пример вызова var ask
= require( 'asker' ); ask ({ host : 'ya.ru' }, function( err , response ) { if ( ! err ) { console.log( response .data); } }); 01. 02. 03. 04. 05. 06. 26
27.
NO PROMISES
28.
Объект response.meta { options :
Object , time : { network : Number , total : Number }, retries : { total : Number , used : Number } } 01. 02. 03. 04. 05. 28
29.
nodules / luster cluster
wrapper
30.
luster { "app" : "worker.js" } luster
-c ./path/to/luster.conf.json 01. 02. 03. 30
31.
Костыли — Запуск воркера
без кластера — Отладка воркеров на разных портах — Двухуровневая балансировка 31
32.
Джентельменский набор — pid–файлы —
Логирование — Поддержание пула воркеров живыми — Перезапуск без простоя — Watcher файловой системы — Плагины 32
33.
34.
Печальная история overclocked / mc
35.
36.
Чек лист — Тесты
и jshint конфиг — Документация для людей — «Чистота» API — CI и контроль за зависисмостями — Взаимодействие с пользователями 36
37.
Вопросы? 37 github.com/nodules
Descargar ahora