Рубрика «javascript» - 417

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

Ribs.js — вложенные атрибуты, вычисляемые поля и биндинги для Backbone.js

Привет! Меня зовут Валерий Зайцев, я клиентсайд-разработчик проекта Таргет Mail.ru. В нашем проекте мы используем небезызвестную библиотеку Backbone.js, и, конечно же, нам стало чего-то не хватать. Поразмыслив над возможными решениями наших проблем, я решил написать свое дополнение к Backbone.js, как говорится с блэкджеком и… О нем я и хочу рассказать в этой статье.

Ribs.js — библиотека, расширяющая возможности Backbone. И прелесть в том, что именно расширяет, а не изменяет. Вы можете использовать ваш любимый Backbone, как и прежде, но по необходимости задействовать новые возможности:

  • вложенные атрибуты: работа с атрибутами модели любой вложенности;
  • вычисляемые атрибуты: добавление в модель атрибутов, которые автоматически пересчитываются при изменении зависимостей (других атрибутов модели);
  • биндинги: динамическая связь между атрибутами модели и DOM-элементами.

Рассмотрим эти возможности подробнее.
Читать полностью »

CrowdCafe — мобильная краудсорсинг платформа

CrowdCafe.io — это краудсорсинг платформа, где люди на мобильном устройстве выполняют микро-задания в обмен на небольшие вознаграждения.

Введение

Краудсорсинг является темой моей работы в аспирантуре Университета Тренто (Италия). В настоящее время подобные термины: краудсорсинг, интернет вещей, нанотехнологии — стали означать одновременно все и ничего. Краудсорсинг включает в себя несколько отдельных направлений: микро-задачи, макро-задачи, конкурсы и краудфандинг. Есть и другие классификации: resultsfromcrowds, crowdsourcing landscape. Конкретно моя работа больше связана с микро-задачами (иногда называется crowd-labour).
Читать полностью »

Bower version

Astrobench

Речь пойдёт о Astrobench, библиотеке, которая поможет сделать ваш код лучше.

Без перформанс тестов зачастую невозможно сделать качественный проект, будь то библиотека, или полноценное веб приложение. Скорость выполнения нашего кода важна. В конечном счёте, именно она влияет на положительный опыт использования вашего продукта.
Читать полностью »

imageЗнаете, на aliexpress есть такие аукционы — Gaga Deals, сейчас там помойка, но когда-то были очень интересные предложения. Их идея заключалась в том, что:

  • Продажи стартуют каждый час
  • Число товаров ограничено
  • Кто первый встал того и тапки

Были очень вкусные лоты со скидкой 90%, топовые смартфоны этого года за 200-300 долларов, прошлогодние по 100 долларов. Разыгрывалось всего по 5 штук каждой позиции. Попробовал выиграть вручную, разумеется ничего не получилось. Ну и решил я написать бота…
Читать полностью »

Доброго времени суток уважаемые читатели. За последнее время я увидел несколько интересных и полезных инструментов/библиотек/событий, которыми хочу поделиться с Хабром.

Awesome Sysadmin

Мега популярный репозиторий на GitHub, который за несколько дней собрал более 4000 звезд. Это огромной живой список всех самых полезных инструментов с открытым исходным кодом для сисадмина по категориям: Backups, Cloning, Cloud Computing, Cloud Orchestration, Cloud Storage, Collaborative Software, Distributed Filesystems, DNS, VPN и др. Автор проекта упомянул также Awesome PHP, по образу и подобию которого он опубликовал свой список.

NodeBB

Несколько интересностей и полезностей для веб разработчика #20
Многие уже из названия поняли, что это форум-движок на NodeJS и на самом деле это очень крутой проект. Я бы даже сказал, что это в какой то мере переосмысление сложившегося представления о форумах. Ну сколько уже времени прошло с тех пор… Сколько социальных сетей появилось и «социальности» в целом, сколько рассуждений о дизайне с интуитивно понятным UI и продуманным UX, сколько стремления разработчиков превратить веб в «среду для приложений», где все быстро и асинхронно словно нативный софт. С виду NodeBB обычный форум, но современный веб-разработчик просто не в состоянии сделать по старому и поэтому это совершенно новый продукт, где присутствуют веяния всех этих сегодняшних тенденций. Простой в использовании и кастомизации, очень гибкий и модульный, адаптивный для различных типов устройств.

Еще несколько скринов

Несколько интересностей и полезностей для веб разработчика #20
Несколько интересностей и полезностей для веб разработчика #20
Несколько интересностей и полезностей для веб разработчика #20

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

Начинаем работать с browserify

Введение

Решения, написанные на JavaScript становятся сложнее из года в год. Это, несомненно, обусловлено разрастанием такого прекрасного зверя, как веб. Многие из нас сейчас работают с JavaScript модулями — независимыми функциональными компонентами, которые собираются вместе и работают как единое целое. Так же такой подход позволяет нам реализовать взаимозаменяемость компонентов, не прикончив попутно код. Многие из нас использовали для этого паттерн AMD и его реализацию в RequireJS.
Читать полностью »

OpenUI5 – новый javascript фреймворк от SAP

Недавно произошло событие, которое незаслуженно осталось без внимания на Хабре. Компания SAP прислушалась к просьбам разработчиков и открыла код своего коммерческого фреймворка для создания веб приложений. Хотелось бы исправить это досадное упущение.
Читать полностью »

Разработка мобильных Javascript MVC приложений с Framework7, RequireJS и HandlebarsНедавно передо мной стала задача разработки IPhone и Android приложения. Опыта разработки под IOS у меня ранее не было, да и хотелось написать один раз и запускать на обеих платформах. Соответственно был выбран был выбран Javascript и PhoneGap.

И если с языком я определился относительно быстро, то далее было много вопросов.
Хотелось сделать, что бы приложение максимально повторяло интерфейс IOS7 и было похоже на native по скорости работы. При этом с одной стороны не было желания использовать «монстров», на подобии dojo или jquery mobile. c другой стороны хотелось получить удобную модульную MVC структуру приложения.

В итоге в финал моего личного сравнения вышли:
Ionic framework: http://ionicframework.com/
Framework7: http://www.idangero.us/framework7/
Читать полностью »

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

Итак, у вас есть небольшой проект. Обычно у проекта есть некоторые характеристики, которые можно измерить. Помимо измерения часто бывает полезно посмотреть изменение характеристики за некоторое время. Это может помочь выявить проблемы на начальной стадии. Например, наблюдая за остатком свободного места на сервере можно прогрозировать аварийную остановку сервисов. Аналогично можно мониторить другие ресурсы — наличие свободной памяти, загрузку процессоров.

Простой сбор статистики используя Counter
(попробуйте догадаться, что это за график — ответ находится в конце статьи)

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


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