Это пост про небольшую игру «Крестики-нолики», которая была написана в целях пополнения опыта программирования на JS. Здесь применяются canvas и DojoBase. Библиотека используется для работы с событиями и для нахождения элементов по id(это очень удобно). Сanvas используется для отрисовки игрового поля.
И сами «Крестики-нолики».
Читать полностью »
Метка «javascript» - 13
Небольшая игра «Крестики-нолики» на JavaScript
2014-01-18 в 19:20, admin, рубрики: html5 canvas, javascript, Алгоритмы, крестики-нолики, метки: html5 canvas, javascript, крестики-ноликиСоздание 3D-иллюстраций — прототип системы
2014-01-18 в 11:30, admin, рубрики: 3d графика, drupal, javascript, php, WebGL, геометрия, стереоизображение, метки: 3d графика, drupal, javascript, PHP, геометрия, стереоизображение
Привет! В институте на моей специальности был курс 'Начертательная геометрия'. Дисциплина мне понравилась с самого начала. А когда к концу курса я узнал, какие страшные штуки можно вытворять, имея за душой всего линейку и циркуль, начертательная геометрия навсегда покорила мое сердце. С тех пор меня не покидала навязчивая идея сделать что-нибудь на компьютере в духе объемных чертежных построений.
Не так давно, я с удивлением обнаружил, что даже мой ноутбук (далеко не самый новый и мощный) поддерживает стандарт WebGL. Стало понятно, что подходящий момент пришел. В результате некоторых усилий получился прототип системы создания и публикации 3D-иллюстраций.
Интересная возможность, которую удалось реализовать — просмотр иллюстраций на 3D-телевизорах в стереорежиме без каких-либо драйверов и плагинов. Вывод осуществляется прямо из браузера в формате Side-By-Side. В общем-то ради этого все и затевалось.
Вполне возможно, что увидеть систему в работе удастся совсем немногим. Прошу простить за возможные хабра-эффекты и торчащие уши – это лишь прототип. Кто хочет узнать о системе подробнее – прошу под кат.
Перевод книги Эдди Османи «Паттерны для масштабируемых JavaScript-приложений»
2014-01-17 в 9:59, admin, рубрики: javascript, архитектура, книга, книга на русском, проектирование, Проектирование и рефакторинг, метки: javascript, архитектура, книга, книга на русском, проектированиеВ какой-то момент меня очень удивило что потрясающая и понятная книга о проектировании JavaScript приложений от известного автора до сих пор не переведена на русский язык. Вместе с единомышленниками мы перевели все главы. Сейчас мы внимательно вычитали 5 из них и хотим их показать всем, кто интересуется JS. Каждую неделю мы обещаем публиковать по 2 главы.
Прочитать книгу можно на сайте, который мы специально для нее создали, следить за обновлениями можно по RSS и в твиттереЧитать полностью »
Видеозаписи докладов потока «JavaScript на бекенде» конференции FOSS Sea
2014-01-16 в 17:40, admin, рубрики: FOSS Sea, GeeksLab, javascript, node.js, Блог компании RootUA Media, видео, конференция, метки: FOSS Sea, GeeksLab, javascript, node.js, видео, конференция
Команда проекта GeeksLab 30 ноября 2013 года в Одессе провела VI специализированную конференцию FOSS Sea: back-end на базе свободных и открытых технологий. Один из потоков мероприятия был посвящен разработке бекенда на JavaScript. В данном потоке с докладами выступили представители таких компаний как: DataArt, Lohika, GlobalLogic, GradSoft, IT Adapter Corp и другие. Презентации и видеозаписи докладов под катом.
Читать полностью »
HuGu — коллективный плейер музыки Вконтакте на node.js
2014-01-16 в 8:53, admin, рубрики: javascript, music, node.js, метки: javascript, music, node.js, vkontakte apiЗачем это надо? А вспомним ситуацию: в офисе работают несколько человек, и у одного к компьютеру подключены музыкальные колонки. — «Вась, смени LoveRadio! Поставь Рамштайна!» И Вася, отвлекаясь от отчета/игры/мысли: «Надоел Рамштайн, давайте лучше „Поющие трусы“ поставлю? Мегазачотные песни!»
А может ли каждый добавлять свои любимые музыкальные композиции в общий плейлист? Через браузер? Из плейлиста Вконтакте? Да, может.
Создание клиентского MVC приложения с помощью RequireJS
2014-01-15 в 15:33, admin, рубрики: javascript, mvc, requirejs, перевод, метки: javascript, mvc, requirejs, переводКак веб-разработчик, вы, наверное, часто писали код JavaScript в одном файле, и, когда количество кода становится все больше и больше, его трудно поддерживать. Для решения этой проблемы вы можете разделить свой код на несколько файлов, добавить дополнительные теги script и использовать глобальные переменные для доступа к функциям, объявленным в других файлах. Но это загрязняет глобальное пространство имен и для каждого файла дополнительный запрос HTTP снижает пропускную способность, что увеличивает время загрузки страницы.
Если это знакомо вам, наверное вы осознали необходимость в реорганизации вашего фронтенд кода, особенно если вы создаете крупно-масштабируемое web-приложение с тысячами строк кода JavaScript. Мы должны по-новому организовать всю эту неразбериху, чтобы код стало легче поддерживать. Новый метод заключается в использовании загрузчиков скриптов. В интернете можно найти много реализаций, но мы возьмем один из лучших, под названием RequireJS.
В этой пошаговой инструкции вы узнаете, как построить простое MVC (Model — View — Controller) приложение с помощью RequireJS. Вам не потребуются какие-либо предварительные знания в загрузке скриптов, основы мы рассмотрим в этой статье.
Читать полностью »
Сегодня последний день, когда вы можете воспользоваться бесплатными купонами на COLT
2014-01-15 в 15:06, admin, рубрики: COLT, javascript, Блог компании CodeOrchestra, метки: COLT, javascript Остались считанные часы до завершения нашей акции по раздаче бесплатных полугодовых лицензий COLT.
Если вы не воспользовались купоном и не купили подписку COLT со 100 процентной скидкой, то завтра вы это сделать уже не сможете. Поторопитесь. Акция закончится в полночь по Москве.
Для того чтобы воспользоваться купоном вам нужно зайти на страницу покупки COLT и купить лицензию COLT со 100 процентной скидкой. Чтобы воспользоваться скидкой вам нужно добавить в поле «Coupon Code» ваш код и нажать кнопку «Recalculate». При покупке COLT с купоном деньги с карты сниматься не будут.
Читать полностью »
Первые шаги к вселенной MeteorJS
2014-01-14 в 10:48, admin, рубрики: fullstack development, javascript, javascript framework, Meteor, Meteor.JS, Meteorjs, node.js, метки: fullstack development, javascript, javascript framework, Meteor, meteorjs
Если вы интересуетесь клиентским программированием, то как и я, вероятно, могли слышать о Meteor, уже не новом веб-фреймворке, который относится к набирающим популярность, так называемым «фулл-стек» фреймворкам. О нем уже писали на Хабре, чтобы не дублировать информацию, можно почитать здесь или тут. Я довольно давно слышал о метеоре, но все никак не решался его пощупать. И вот, пришли очередные выходные, и я снова наткнулся на него. В этот раз я решил честно попробовать, что это такое. Может быть, этот пост даст кому-то небольшой толчок к началу изучения или хотя бы знакомства с этим инструментом. Тогда это было бы не зря.
Disclaimer: может вызвать зависимость.
Давайте же сделаем первые шаги к освоению meteorjs, добро пожаловать под кат.
Читать полностью »
GulpJS — фантастически быстрый сборщик проектов
2014-01-13 в 9:42, admin, рубрики: grunt, gulp, javascript, node.js, nodejs, Веб-разработка, метки: grunt, gulp, javascript, nodejsGulp.js это потоковый сборщик проектов на JS. Он использует Stream и действительно является очень быстрым. Для примера у меня есть проект где около тысячи stylus файлов, GruntJS нужно примерно 2.5 секунды на сборку и 2 секунды на обработку autoprefixer'ом. Gulp все это делает за 0.5 секунды выигрывая у GruntJS минимум в 4 раза.
Вас может отпугнуть молодость проекта, отсутствие плагинов и небольшое сообщество. Но это не так, на данный момент ведется активная разработка проекта, написано достаточное количество плагинов под задачи для популярных инструментов. На данный момент существует 165 плагинов, посмотреть их вы можете тут.
В этой статье будет больше практики, мы соберем среду разработки фронтенда используя Jade и Stylus, запустим локальный сервер и подключим Livereload. Проект я выложил на Github, экспериментируйте.
Новая функциональность Impress Application Server для Node.js
2014-01-13 в 2:12, admin, рубрики: api, application server, cluster, framework, Impress, javascript, node.js, RPC, statefull, Веб-разработка, метки: api, application server, cluster, framework, Impress, javascript, node.js, RPC, statefull, СОАПредоставляю вам краткий отчет об изменениях в Impress AS за последние несколько месяцев. Во-первых мы не пошли путем фреймворков, а ринулись в сферу серверов приложений, обеспечивая масштабирование в двух направлениях: (1) много приложений на одном сервере и (2) много серверов для одного приложения. Первое направление требовало развивать сендбоксинг (экранирования приложений друг от друга и от среды запуска), а второе направление предусматривало переход от кластера к многосерверному клауду. Тут нужно уточнить терминологию, в ноде кластером (cluster) принято называть способ многопоточного запуска приложений в режиме master/worker, поэтому, многосерверную инфраструктуру (с кластером на каждом сервере) мы будем нанывать клаудом (или прикладным облаком). Это облако ни как не связано с виртуализацией операционной системы, как это обычно ложно связывается в понимании широких масс. Облачные технологии совсем не обязаны быть организованы на базе технологий виртуализации, просто другого простого способа масштабирования сейчас для массового потребления нет. Облачная виртуализация не гарантирует бесконечной виртуализации прикладных приложений, и всем разработчикам крупных высоконагруженных систем известно, что для сотен тысяч и десятков миллионов пользователей нужно создавать специальные прикладные решения, обеспечивающие прикладную виртуализацию, размазывающую задачи по серверам и объединяю их в одну, распределенно функционирующую, но централизовано управляемую систему. Именно эту задачу мы и взялись решать в Impress, надеюсь я отстоял терминологию и могу переходить к подробностям.Читать полностью »