Файловых менеджеров много, но есть один, о котором, думаю, будет многим интересно узнать. Ведь он двухпанельный, работает в браузере, оснащён редактором (с подсветкой синтаксиса) и консолью, состоит из клиента и сервера, а написан на JavaScript/Node.js.
Рубрика «node.js» - 79
Двухпанельный веб-файл менеджер Cloud Commander
2014-06-16 в 8:16, admin, рубрики: javascript, node.js, Веб-разработка, файловый менеджер для webМеханизм фильтров Collection
2014-06-11 в 12:11, admin, рубрики: javascript, node.js, Веб-разработка, итераторы, коллекции, функциональное программирование, метки: javascript, node.js, итераторы, коллекции, функциональное программированиеЭта статья является продолжением "Итерируем всё вместе с Collection" и здесь я расскажу о встроенном механизме Collection — фильтрах.
Итерируем всё вместе с Collection
2014-06-10 в 10:03, admin, рубрики: javascript, node.js, Веб-разработка, итераторы, коллекции, функциональное программирование, метки: javascript, node.js, итераторы, коллекции, функциональное программированиеВ современном JavaScript существует целый пласт различных видов итерируемых структур данных:
- Array
- TypedArrays
- Object
- Map
- Set
- String
А также появились генераторы и универсальный протокол , который позволят итерировать что угодно и как угодно. И в тоже время для некоторых типов данных (в основном для массивов) определены различные методы для удобной функциональной работы и простого итерирования, например, forEach, map или reduce, и всё было бы хорошо, однако:
- Большинство методов определены только для массивов;
- Определяемое API слишком примитивно и не покрывает целый ряд задач;
- До сих пор скорость выполнения нативных итераторов далека от идеала и существенно уступает реализации на циклах.
О чём речь?
О JS модулях, которые можно использовать в браузере и на сервере. Об их взаимодействии и внешних зависимостях. Меньше теории, больше практики. В рамках курса молодого бойца мы реализуем простое и весьма оригинальное приложение на базе Node.JS: ToDo-лист. Для этого нам предстоит:
- «Завести» кроссплатформенные модули на базе фреймворка Express;
- Научить их работать с платформозависимыми коллегами;
- Создать транспортный уровень между клиентом и сервером;
- Таки сделать ToDo-лист;
- Осмыслить результат.
Разработка REST API на Express, Restify, hapi и LoopBack
2014-05-08 в 15:08, admin, рубрики: node.jsЕсли вы работаете над Node.js приложением, то есть все шансы, что у него появится некое API, которое будет использовано вами или кем-то другим. Наверняка это будет REST API и перед вами возникнет дилемма — какие инструменты и подходы использовать. Ведь выбор так широк…
Благодаря невероятно активному сообществу Node.js, количество результатов на NPM по запросу «rest» зашкаливает. У каждого есть свои реализации и подходы, но у некоторых есть что-то общее в создании REST API на Node.js.
Читать полностью »
Наследование HTML файлов в xslt-стиле
2014-04-29 в 4:53, admin, рубрики: grunt, html, node.js, nodejs, npm, наследование, шаблонизация, метки: grunt, html, nodejs, npm, наследование, шаблонизацияПроблема
Однажды, в ходе переписывания большого проекта, возникла необходимость улучшить механизм кастомизации html шаблонов под разные версии нашего web-приложения. В старой версии кастомизация выглядела подобным образом:
{{if app.version==versions.main}}
<!--один html код-->
{{else if app.version==versions.custom1}}
<!--другой html код-->
{{else if app.version==versions.custom2}}
<!--и ещё html код-->
{{endif}}
И подобной лапшой был пронизан весь проект. Такой код сложно поддерживать и изменять, при активном использовании шаблоны превращаются в непонятную кашу, где бизнес логика отображения отдельных блоков переплетается с кастомизацией под разные версии.
Привыкнув к удобным методам управления версиями приложения с помощью инъекции зависимостей, когда в зависимости от версии используются разные реализации интерфейсов, я решил изобрести свой велосипед для XSLT-подобного управления версиями html файлов: grunt-html-inheritance. Он позволяет подменять кусочки базового html-файла с помощью маленьких патчей.
Читать полностью »
Каждый программист, написавший свое MMORPG очень быстро сталкивается с одной распространенной проблемой. Наиболее прохоженый путь для организации сети в клиент-серверных играх — это звезда, где центральный узел является сервером, а листы — это клиенты.
Такая организация имеет свои неоспоримые достоинства, например синхронизация игровых состояний клиентов на сервере, простота в реализации и почти фиксированные задержки до пользователя. Там где есть плюсы, обычно обитают и минусы — это ограниченная пропускная способность сервера и довольно большие задержки, если клиент находится далеко от вашего сервера. Как с ними бороться подробно написано в блоге 0fps.net и есть возможность эти проблемы довольно эффективно решать оставаясь в любимой «звездочке» — купить больше серверов, но что делать если вы студент вы ограничены в финансах и горизонтальное/вертикальное масштабирование для вас не вариант?
Читать полностью »
Статья написана для ювелиров, которым в силу роста популярности бижутерии пришлось оставить свою работу и заняться другим делом немного смежным с их предыдущим.Читать полностью »
Небольшой рассказ о начальном погружении в Node.js и опыте работы с Rails-like фреймворком Sails.js
Эта статья не претендует на внимание искушенных разработчиков, поскольку является лишь описанием некоторых впечатлений начинающего Rails-разработчика о Node.js. Надеюсь, кому-нибудь будет полезно.
Читать полностью »
Привет, это новый 2ГИС, о котором говорят твои друзья
2014-04-07 в 4:49, admin, рубрики: 2GIS, 2gis API, node.js, Блог компании 2ГИС, Геоинформационные сервисы, метки: 2gis, 2gis API, 2ГИС, node.js2ГИС полностью обновился. Впервые мы его показали 19 ноября с урезанным функционалом и, пусть и не критичными, но ошибками — всё-таки это была стадия публичного бета-тестирования.
За пять месяцев мы, конечно, многое исправили и допилили. О результатах уже разосланы пресс-релизы. Например, про то, что у нас 400 000 фотографий и 500 000 отзывов или, что мы знаем входы в почти один миллион организаций страны.
К сожалению (а может и к счастью), формат пресс-релиза не позволяет рассказать чуть больше подробностей, немного погордиться или признать свои ошибки. Попробуем сделать это под катом.