Метка «Node»

Набор выживания для веб разработчика под win*

Привет!

Давно собирался написать статью на Хабр, и вот наконец-то собрался.

Расскажу про одну сборку, сильно облегчающую жизнь вебмастеру под Windows.

История такова — во время очередных «плясок с бубном» по поднятию web-окружения под win у заказчика, я понял что меня достало вся эта магия.

Надоел поиск и вызов элементалей 50 уровня ради того чтобы найти модуль mod_wsgi под Python и Апач, скомпиленный под win, инициализация данных Postge SQL, маета с тем, что Апач не стартует, потому что скайпик уже висит на 80 порту…

Хотелось чего-то простого, гибкого и главное — портабельного.
Читать полностью »

Медленно, но верно, я продолжаю делать серию туториалов о WxPython, где я хочу рассмотреть разработку ферймворка для создания нодового интерфейса с нуля и до чего-то вполне функционального и рабочего. В прошлых частях уже рассказано как добавлять ноды, в этой же части, мы их будем соединять, а на этой картинке показан результат, который мы в этой статье получим:
Пример использования WxPython для создания нодового интерфейса. Часть 5: Соединяем ноды
Еще не идеально, но уже вырисовывается что-то вполне полезное и рабочее.

Прошлые части живут тут:
Часть 1: Учимся рисовать
Часть 2: Обработка событий мыши
Часть 3: Продолжаем добавлять фичи + обработка клавиатуры
Часть 4: Реализуем Drag&Drop

Читать полностью »

В небольшом цикле статей будет описано использование WxPython для решения вполне конкретной задачи по разработке пользовательского интерфейса, да еще и то, как сделать это решение универсальным. Туториал этот расчитан на тех, кто уже начал изучать эту библиотеку и хочет увидеть что-то более сложное и целостное, чем простейшие примеры (хотя начнется все с относительно простых вещей).

В прошлой части я рассказал о задаче и начал описывать процесс реализации, а точнее рендеринг объектов. Теперь же пришла пора реализовать взаимодействие с пользователем.

Часть 1: Учимся рисовать

Кому интересно, добро пожаловать под кат…
Читать полностью »

Разработка проекта AppJS прекращена, в дальнейшем пользуйтеся node webkitЧуть больше года назад (1 октября 2012 года) я выложил на Хабрахабре блогозапись «Node.js + Chromium = AppJS: один из перспективных вариантов второго шага эволюции веборазработчика», в которой привёл AppJS в качестве примера такого объединения движков Node.js и Chromium, которое позволяет каждому веборазработчику, употребляя привычные ему по работе технологии (JavaScript, HTML, CSS), сделаться разработчиком приложений с GUI (графическим интерфейсом пользователя), объединяющих в себе выразительные способности браузера Chromium и мощь API Node.

На следующий же день (2 октября 2012 года) во блогозаписи «Node.js + Chromium = node-webkit: ещё более перспективный вариант второго шага эволюции веборазработчика» я указал, что AppJS — не единственный и даже не лучший вариант: node-webkit отличается удобством и бóльшими возможностями API, более обширной документацией, а также обеспечивает запуск ZIP-упакованных приложений.

И что же? — не прошло и тринадцати месяцев, как успех node-webkit сделался очевидным и для разработчиков AppJS. Сегодня во твиттере у AppJS вы можете прочесть о том, что разработка проекта AppJS прекращена, поскольку node-webkit достиг его цели:

[скриншот Twitter]

Читать полностью »

Отказ от jParser (в пользу работы напрямую с буферами Node.js) ускоряет скрипт на порядокПерелистнём несколько страниц недавнего прошлого.

16 мая 2012 года RReverser во блогозаписи «Javascript BMP Parser» рассказал об употреблении модуля jParser для анализа двоичных данных, на движке Node.js совершаемого.

На следующий же день (17 мая 2012 года) во блогозаписи «jParser: анализ двоичных файлов работает просто» я перевёл документацию по jParser, а чуть позже (22 мая 2012 года во блогозаписи «Node.js на узле Фидонета: читаем джаваскриптом заголовки эхопочты, хранимой в формате JAM») поделился собственным опытом употребления этого модуля.

Прошло ≈1⅓ года…

12 сентября нынешнего (2013) года во блогозаписи «Недоволен скоростью джаваскриптов? — Подожди год-полтора, и это пройдёт!» я выразил неудовольствие от скорости работы модуля, прежде мною сочинённого, и указал на один только повод для оптимизма: поступательное развитие Node.js от версии 0.6 до версии 0.10 привело к росту скорости моего кода в три раза.

А сегодня события совершили полный круг — я напрочь отказался от употребления jParser. И достигнутый результат (как неприятная, так и радостная сторона его) оказался заслуживающим внимания.

Позвольте же поделиться с вами как впечатлениями, так и исходниками.

Читать полностью »

Недоволен скоростью джаваскриптов? — Подожди год полтора, и это пройдёт!Напоминаю (потому что это наверняка подзабылось), что 22 мая 2012 года я экспериментировал с чтением заголовков фидонетовской эхопочты (хранимой в формате JAM) при помощи собственного модуля, сочинённого для Node.js (на основе подвернувшегося движка jParser, документацию по которому перевёл чуть раньше).

Тогда, прогоняя тестовое чтение на одноядерном Pentium IV (2,2 ГГц), я остался недовольным скоростью: требовалось три-четыре секунды на то, чтобы считать 8222 заголовков из архива всего одной эхоконференции, ведущегося с марта 2007 года.

На нынешней неделе у меня снова дошли руки до исходного кода того модуля; и я начал с того, что перенёс прежний тест на движок Mocha и передал тестирование на сервер Travis CI, указав в файле .travis.yml такие настройки, которые обеспечивали бы тестирование на трёх последовательных версиях движка Node.js — на 0.6, на 0.8 и на 0.10.

Оказалось, что разница в скорости видна невооружённым глазом:

Читать полностью »

[фото]Большинству программистов на языке JavaScript, успевших ознакомиться с Node.js, хорошо известен модуль fs, который в API Node служит для доступа к файловой системе.

Matthew Phillips (на фото справа) предпринял успешную попытку создания во браузерном (клиентском) джаваскрипте частичного аналога этого нодовского модуля. Исходный код, опубликованный им на ГитхабеЧитать полностью »

Приход Node на Android: первые шагиПозавчера на Гитхабе в репозиторий Node.js был принят тот код, посредством которого Linus Mårtensson учёл небольшие, но важные различия в поддержке Android и стандартных POSIX-систем. Также появился автоконфигуратор, позволяющий собрать Node для Android за два шага:

  1. source ./android-configure ~/android-ndk-r8d (второй параметр — это путь к NDK)
     
  2. make -j8 (сборка андроидосовместимых бинарников)

С этим достижением не всё ещё гладко (вон там, например, поступило предложение получше подстраиваться под шестидесятичетырёхбитные системы). Однако новость ужé такова, что можно подпрыгнуть от радости! Со времён начала прямой (а не под cygwin) поддержки Windows-версии Node (а это было давным-давно — в 2011 году) не случалось ещё ни одного столь же заметного шага в направлении совместимости между Node и новыми (ранее не поддерживавшимися) операционными системами.

Сразу скажу, впрочем, что у меня эта новинка пока что оставляет больше вопросов, чем ответов.

Читать полностью »

Между регулярными выражениями в JavaScript и регулярными выражениями PCRE (употребляющимися в Perl и в PHP) есть ряд различий, главнейшим из которых, вероятно, является отсутствие lookbehind (ретроспективной проверки) в JavaScript.

Естественной задачею программистов, раздражённых этими различиями, является внедрение PCRE в JavaScript.

На движке Node к концу нынешнего января Брайан Уайт (Brian White) решил эту задачу, создав модуль node-pcre, служащий обёрткою вокруг движка PCRE.

Этому можно порадоваться, и порадуемся.

Однако node-pcre,Читать полностью »

TL;DR
Эта обзорная статья. Такое себе "краткое содержание предыдущих серий". Она будет полезна для новичков, или тех, кто не следил за отраслью в последнее время. Для новичков это будет первый шаг во "Вселенную JavaScript", бывалые смогут освежить свои знания.

JavaScript: от начала до концаУ JavaScript очень удивительная судьба. Он преодолел путь от самого не понимаемого до самого удивительного языка. У него было тяжелое детство:
Изначально Автор хотел написать функциональный язык. Но менеджеры хотели получить, «обычный» объектно-ориентированный. И чтобы было легко искать разработчиков для новоиспеченного языка синтаксис решили сделать похожим на Java и даже название сделали похожим.
Но на этом история не заканчивается. Java, JavaScript это торговые марки Sun (а теперь Oracle). Microsoft не мог воспользоваться именем JavaScript (Netcape и Sun дружили против Microsoft). В результате Microsoft решил сделать реверс инжиниринг JavaScript и назвал его JScript. Сделали реверс инжиниринг, и сделали его настолько хорошо, что даже содрали все баги в реализации. Позже решили сделать стандарт и назвали его ECMAScript.
Читать полностью »


https://ajax.googleapis.com/ajax/libs/jquery/3.4.1/jquery.min.js