Подводные камни при разработке крупных приложений на Node.js

Уже стало понятно, что Node.js — яркий тренд в сообществе web-разработчиков. В данной статье мы попытаемся затронуть следующие вопросы: какие подводные камни могут ожидать разработчика, и стоит ли вообще переходить на нее.

В основном Node.js ассоциируется у разработчиков с небольшими сервисами народе чата. (подробнее в статье «Разработка высокопроизводительных сервисов на Node.js»). На то есть веские причины. Нода отлично подходит для сервисов, которые поддерживают постоянное подключение к клиенту, либо долгое время ожидают ответа от него. Отсутствие блокировки ввода/вывода позволит читать большие файлы, оставляя при этом ваш сервис готовым к обработке новых запросов. Continue reading

Workflow и инструменты frontend-разработки

Рано или поздно любой разработчик сталкивается с вопросом, какие инструменты лучше всего подходят для его работы. Выбор хороших инструментов позволит существенно увеличить производительность разработки и повысить качество кода. В данной статье мы рассмотрим используемые нами средства при разработке frontend-части наших проектов, также организации самого процесса. Continue reading

Разработка высокопроизводительных сервисов на Node.js


В данной статье речь пойдет о разработке с использованием сравнительно молодой технологии Node.js. Она стремительно набирает популярность — и не безосновательно. Эта технология позволяет реализовывать быстрые веб-сервисы, способные выдерживать колоссальные нагрузки, что крайне важно для видеосервисов. Например, на Node.js удобно делать сборщики статистики в реальном времени, масштабные чаты и т.п. Конечно, сервисы, написанные на C++, обладают большим потенциалом производительности, но стоимость их реализации слишком высока. Нода же позволяет быстро создавать сложные системы. В данной статье мы рассмотрим использование Node.js для создания простого приложения, способного выдерживать очень высокую нагрузку. Continue reading

Тесты JavaScript и их автоматизация

Создание эффективных тест-кейсов может  быть крайне важным для крупных проектов, в случае, если поведение частей приложения может меняться по различным причинам. Пожалуй, наиболее частой является проблема, когда большая группа разработчиков работают над одним и тем же, либо смежными модулями. Это может приводить к незапланированному изменению поведения функций, написанных другими программистами. Либо  работа в сжатые сроки приводит к нечаянному изменению критичных частей приложения. Continue reading

Оптимизация HTML5 приложений

Данная статья содержит в себе советы о том, как оптимизировать клиентскую часть крупных вэб-проектов (для небольших проектов  большинство рекомендаций также применимы). Буквально за несколько лет сайты совершили эволюционный скачок, превратившись  из простых статичных страниц в сложные приложения.  Существенно увеличившийся в размерах и логике фронтэнд теперь требует не меньшего внимания при оптимизации, чем бэк, ведь именно он и взаимодействует с пользователями. Continue reading

Разработка крупных JavaScript приложений

Создание интерактивных Интернет сервисов http://tutrostov.ru/  подразумевает широкое применение JavaScript при их разработке. Если 10 лет назад этот язык имел скудным функционал, но в данный момент  JS существенно преобразился. Все больше логики сервисов переносится в клиентскую часть. В статье мы поделимся с вами нашим опытом проектирования и реализации крупных веб приложений. Continue reading

Разработка HTML5 плеера

HTML5 JS Player

С каждым годом медиа технологии все больше http://tutbelgorod.ru/  и больше входят в жизнь каждого человека. Глобальная сеть также подвержена данной тенденции, о чем свидетельствуют  успех и популярность таких сервисов как YouTube. Но работа подобных систем невозможна без технологий, позволяющих реализовать воспроизведение видео контента для пользователя.

Классическим подходом для реализации проигрывателя видео является использование технологии Flash.  Пожалуй, сложно найти более распространенный плагин для веб-браузера, чем Flash Player. Однако стоит заметить, что слабым местом подобного подхода является необходимость установки Flash plugin’а. А для многих устройств он вообще отсутствует. К примеру, настолько популярные iPhone и  iPad не имеют возможности запускать Flash-приложения в браузере. Выходом из подобной ситуации является использование HTML5. Continue reading