В этой статье я опишу создание нативного iOS модуля для Titanium. Целью статьи является показать базовые вещи при создании Titanium модуля, чтобы при необходимости вы не боялись расширить/ускорить базовый функционал Titanium.SDK. Основной задачей модуля будет сохранение pdf файла с наложением картинок поверх страниц.
Читать полностью »
Рубрика «javascript» - 453
Developing Titanium module for iOS
2013-11-12 в 15:59, admin, рубрики: javascript, mobile development, module, objective-c, titanium, метки: javascript, module, objective-c, titaniumКарта галактики на Three.js/WebGL
2013-11-12 в 14:12, admin, рубрики: game development, javascript, three.js, WebGL, Анимация и 3D графика, галактика, звезды, карта, космос, метки: javascript, three.js, WebGL, галактика, звезды, карта, космос
Доброго времени дня или ночи. В свободное время я занимаюсь разработкой игры на космическую тематику на Three.js/WebGL и задумал написать небольшую серию статей по некоторым компонентам игры, в этой статье мы поговорим о карте галактики. Рассказ пойдет уже привычным мне способом — по шагам.
Читать полностью »
Подробное руководство по разработке мобильных приложений AngularJS
2013-11-12 в 14:00, admin, рубрики: android development, AngularJS, ios development, javascript, Программирование Мобильные приложения, это не будущее разработки, это уже настоящее. В настоящее время пользователей мобильных приложений уже 1.2 млрд. человек, и это количество постоянно растет (Wikipedia). Вскоре количество мобильных устройств превзойдет количество людей на планете. Если скорость роста количества мобильных устройств останется неизменной, то к 2017 году ими будут пользоваться 5.1 млрд. человек.
Для нас, как для разработчиков приложений, важно разрабатывать свои приложение с учетом мобильных пользователей, если мы хотим чтобы они были востребованы. В AngularJS реализована поддержка мобильных устройств, написанная как командой AngularJS, так и сообществом.
В этой статье мы будем работать с двумя различными способами, чтобы дать читателям опыт в разработке мобильных приложений.
Читать полностью »
jor1k: Linux в браузере с поддержкой сети
2013-11-12 в 8:09, admin, рубрики: Asm.js, javascript, jslinux, linux, операционные системы, метки: Asm.js, jslinux То, что мы давно ждали, появилось.
Встречайте: jor1k: OpenRISC OR1K Javascript Emulator Running Linux With Network Support
- У каждой виртуалки есть общая сеть с доступом в интернет
- У каждой виртуалки есть telnetd с root без пароля
- У каждой виртуалки есть nmap ;)
- Виртуалка получает IP по DHCP
- Есть поддержка framebuffer
Сеть реализована на websockets со стороны сервера и эмулируемом OpenCores ethmac со стороны VM.
У меня на ноутбуке выдает 120 MIPS с ядром asm.js.
Более подробная информация в блоге автора.
Have fun!
Выпуск платформы Tizen версии 2.2.1
2013-11-12 в 5:11, admin, рубрики: html5, javascript, mobile development, tizen, tizen sdk, web-разработка, Блог компании Intel, мобильная разработка, операционные системы, метки: html5, javascript, mobile development, tizen, tizen sdk, web программирование, web-разработка, мобильная разработка, операционные системы
На официальном сайте Tizen появилось сообщение от Technical Steering Group о том, что выпущена новая версия Tizen - 2.2.1.
Читать полностью »
Vanilla JS vs jQuery 2.0
2013-11-11 в 14:56, admin, рубрики: javascript, jquery, web-разработка, фронтенд, метки: javascript, jquery, web программирование, web-разработка, фронтендСтатья навеяна фреймворком Vanilla.js.
Эпоха старых браузеров уходит в небытие, вряд ли сейчас найдется сознательный человек, использующий ie6,7,8, на зло разработчикам и вопреки техническому прогрессу. Возможно, только по необходимости, например корпоративная система написана под IE6, или лентяи админы издеваются над пользователями и не хотят обновлять/устанавливать новые версии. Тем не менее, статистика использования этих браузеров неумолимо стремится к нулю. Собственно и новая версия jQuery 2.0, отказалась поддерживать устаревшие браузеры(IE 6-8). И тут с релизом jQuery возник вопрос, а для чего же тогда нужен jQuery?
Читать полностью »
PubSub в браузере с помощью вебсокетов и протокола WAMP
2013-11-11 в 8:04, admin, рубрики: javascript, php, Pubsub, ratchet, wamp, WebSocket, метки: ratchet, wamp, WebSocket Изучая методы реализации real-time обновления данных в браузере, я обнаружил "WAMP" — протокол прикладного уровня для обмена сообщениями, основанный на вебсокетах.
Протокол реализует два распространенных высокоуровневых шаблона для обмена данными: PubSub и RPC (Remote Procedure Call).
Эти шаблоны многим известны и широко применяются в различных областях программирования и межпроцессного взаимодействия:
- RPC — удаленный вызов процедур. В процессе принимают участие клиент и сервер. Первый отправляет запросы на вызов процедуры на сервере, а второй их выполняет и отправляет результат клиенту. В типичном веб-приложении это может быть, например, запрос на создание комментария или на добавление поста в избранное
- Publish/Subscribe (PubSub) — метод обмена сообщениями, в котором клиенты «подписываются» на интересующие их события и могут сами генерировать подобные события. Рассылкой информации подписчикам занимается третья сторона — «брокер». В WAMP шаблон PubSub реализован на основе «топиков», или каналов. Например, на сайте такими каналами могут быть «комментарии», «новости», «личные сообщения».
В контексте веб-разработки наиболее интересным вариантом применения протокола WAMP является использование шаблона PubSub. С его помощью можно легко решить задачу обновления информации на открытой у пользователя странице сайта: например, чтобы отобразить только что добавленный комментарий или показать уведомление о получении нового сообщения.
Реализация WAMP существует в виде библиотек под множество языков и платформ, включая, конечно, javascript в виде проекта autobahn.
Читать полностью »
Еще раз об обфускации JavaScript или сказ о том, как я обфускатор писал. Часть 1
2013-11-11 в 8:00, admin, рубрики: Brainfuck, javascript, ненормальное программирование, обфускация, метки: brainfuck, javascript, ненормальное программирование, обфускацияВозникла тут задача, написать код на php, который принимает js-код и обфусцирует его по самое не балуй. После курения гугла и хабра я приступил к работе. Как и следовало, я начал того, что запустил консоль JS в хроме и начал пытаться получать строки из месива символов, вот что получилось (с пояснениями):
(![]+[])
«false»
[] — пустой массив
! — операция логическое НЕ, особенность js (и не только), в том, то при булевых операциях если операнд не является булевым типом и не равен 0 то он признается за true
То есть (![]) = false
+ — операция сложения и объединения строк, если оба операнда числа, то произойдет сложения, иначе это будет объединение строк с приведением типов. Кстати, тут есть особая магия типов, но это позже.
Читать полностью »
Итератор в шаблонизаторе doT.js по объектам с фильтрацией
2013-11-10 в 20:13, admin, рубрики: javascript, Проектирование и рефакторинг, шаблонизатор, метки: шаблонизаторКомпактный (3.5 Кб) и быстрый шаблонизатор doT.js для браузеров и nodeJS до сих пор (v.1.0.1) имеет итерацию только по массивам. Это не всегда удобно — подгонять управляющий объект под наличие в нём массивов. Лучше подогнать шаблонизатор под наличие в нём итератора по объектам c проверкой условия. Проверять условия в циклах по объектам приходится часто — это и hasOwnProperty(), и проверка на DOM-объект, и взятие части хеша по фильтрации индексов.
Как пишут в шаблоне итерацию по массиву? Примерно так:
{{~it.elemsArray:property:i}} ... {{~}}