Рубрика «Веб-разработка» - 193

Одной из ключевых составляющих практически любого веб-приложения является взаимодействие с сервером. В больших приложениях это далеко не один запрос. При этом запросы часто необходимо объединять для последовательного или параллельного выполнения, а часто сочетать и то и другое. Кроме того, большие приложения обычно имеют многослойную архитектуру — обертка над RESTFul API => бизнес-сущности => более комплексная бизнес-логика (разбиение условно для примера). И на каждом слое необходимо принять данные в одном формате и передать на следующий слой уже в другом.

Вот со всеми этими задачами могут помочь справиться Promise-ы.

За подробностями добро пожаловать под кат.
Читать полностью »

Всем доброго времени суток. Как-то так получилось, за последнее время я увидел много интересных и полезных инструментов/библиотек/событий, которыми я хотел поделиться на Хабре. Все эти темы по отдельности, на мой взгляд, не заслуживали целой статьи. Но каждая из них достойна внимания и может кому нибудь пригодиться. В итоге получился небольшой дайджест:

Prepros

9 интересностей и полезностей для веб разработчика
Великолепное приложение препроцессор для CSS, JS. Компилирует файлы следующих типов: LESS, Sass, SCSS, Stylus, Jade, Slim, Coffeescript, LiveScript, Haml. Минифицирует JS на лету, при каждом изменении файла. Оптимизирует изображения. Доступен для Windows и Mac, а также как расширение для Chrome. Плюс ко всему создает HTTP сервер, для тестирования сайта на разный устройствах. Бесплатная замена CodeKit'у и Ghostlab'у вместе взятых, что в сумме позволит Вам сэкономить $75.

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

У многих рано или поздно возникает необходимость в обеспечении мультиязычности своих веб-приложений. Не будем сегодня прибегать к обзору всего разнообразия возможных решений, а остановимся на довольно узконаправленном сравнении обеспечения мультиязычности при помощи пакета Zend_Translate и библиотеки Gettext.

Итак проведем мини-эксперимент, чтобы сравнить в этих двух реализациях быстродействие и количество занимаемой памяти при выполнении скриптов.
Читать полностью »

В AngularJS, как известно, нет возможности штатными средствами сделать многоуровневую маршрутизацию, в которой перезагрузка нижних уровней маршрутов бы не приводила к пересозданию элементов верхнего уровня. Стандартный сервис $route инициализирует вид, контроллер и его scope целиком каждый раз, когда изменяется URL страницы.

Для решения этой проблемы написано несколько сторонних решений, включая известный ui-router. По ряду причин ни одно из решений для некоторых моих проектов не подошло, и я написал собственную библиотеку, которую здесь и представляю: angular-route-segment.

Что она позволяет делать?
Читать полностью »

Интерактивные геометрические среды

Одной из задач, которые необходимо решать при преподавании геометрии, это обеспечение наглядности, в частности, наглядности геометрических чертежей. Двумя современными способами обеспечения наглядности геометрических чертежей являются динамичность и интерактивность:

Удачная возможность для веб-разработчиков выучить язык программирования Си — HTML5-парсер Gumbo, реализованный в виде небольшой библиотеки C99 без внешних зависимостей. Парсер создан как строительный блок для создания других инструментов и библиотек, таких как валидаторы, языки шаблонов, инструменты рефакторинга и анализа кода.

Особенности:

  • Полная совместимость со спецификациями HTML5.
  • Устойчивость к некачественным входным данным.
  • Простые API, которые могут быть легко обработаны программами на других ЯП.
  • Поддержка исходных позиций и указателей в оригинальном коде, при навигации по дереву зависимостей.
  • Проходит все тесты html5lib-0.95.
  • Проверен на более чем 2,5 млрд страниц в индексе Google.

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

Разработка «Больше чем Ридер» захватила нас полностью, отняв у семей и читателей. А реакция на опрос в публикации на Хабре (спасибо!) привела к изменению этапности: кроме мобильного решения мы будем разрабатывать и web-версию. В первую очередь :-)

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

За прошедшие три недели была завершена разработка инфраструктуры нового продукта — сервиса для чтения контент-потоков сайтов (включая RSS), сводных тематических лент и материалов соцсетей: закуплено и настроено много «железа», закончен монтаж серверов в стойки, реализована базовая часть недостающей части API к Платформе, и вплотную подошли к утверждению функционального дизайна нашего продукта.

Публичная разработка «Больше чем ридер»: функциональный дизайн

Краткий экскурс в историю: что планируется в «Больше чем ридер»:

1. Контент-потоки (включая привычные RSS) по различным тематикам — от новостей до «котиков»;
2. Тематические потоки, созданные пользователем с помощью простых поисковых запросов. Например, для получения всех материалов (вне зависимости от источников) по зимней Олимпиаде можно создать поток задав фразу «Олимпиада -Лондон, Сочи 2014»;
3. Настраиваемые пользователем потоки из соцсетей (свои и чужие аккаунты персон и групп), с просмотром новых поступлений и возможностью постинга и расшаривания, of course.
Читать полностью »

Хочу поделиться методом определения «похожих» записей. Думаю, будет полезно для блогов или новостных ресурсов.
Цель данного поста показать принцип, имплементация может быть не совсем комильфо, так как автор не проф. программист, а любитель.
«Новости по теме» с помощью PHP, phpmorphy и MySQL
Читать полностью »

    Наворотили моделей, конфигурацию, и еще кучу завязанной на фреймворк бизнес-логики на вашем сайте, а потом вдруг оказалось, что нужно добавить несколько скриптов, которые бы запускались по крону для решения тяжелых задач? Давайте попробуем сделать так чтобы весь этот функционал, в т.ч. контроллеры, можно было запускать из консольного скрипта. Данный способ представляет из себя компромисс между практичностью и гипертрофированным чувством прекрасного, свойственным архитектуре Symfony в целом.Читать полностью »

Этат статья является переводом статьи «Developing JSF applications» с официальной вики jetbrains (http://wiki.jetbrains.net/intellij/Developing_JSF_applications) только вместо сервера приложений Tomcat будет использоваться GlassFish.

Мы начнем с подготовки к разработке JSF приложений. Она включает в себя активацию необходимых плагинов, регистрацию GlassFish в IntelliJ Idea и создание Java модуля, подходящего для разработки JSF приложений.

Далее мы разработаем небольшое JSF приложение, в котором будут продемонстрированы некоторые техники программирования и возможности среды разработки. Приложение будет разрабатываться поэтапно: функции в него будут добавляться порциями, необходимые проверки будут осуществляться в конце каждого этапа.
Читать полностью »


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