Как стать автором
Обновить
14.75

Angular *

JavaScript-фреймворк

Сначала показывать
Порог рейтинга
Уровень сложности

Опыт разработки и проектирования на AngularJS

Время на прочтение8 мин
Количество просмотров28K
Всем привет!

В нашей компании, помимо разработки собственной СУБД, также занимаются заказными разработками по самым разным направлениям, от суровых java-энтерпрайз приложений до небольших мобильных приложений. Наши команды стараются использовать передовые технологии и фреймворки. И как раз я являюсь представителем одной из таких команд. Сегодня хочу поделится опытом разработки на AngularJS и парой мыслей о проектировании веб приложения с использованием этого фреймворка.


Читать дальше →
Всего голосов 17: ↑15 и ↓2+13
Комментарии24

5 причин для Angular-разработчиков в пользу использования Meteor

Время на прочтение3 мин
Количество просмотров31K
image

Если вы еще не слышали о Meteor, то как раз пришло время для знакомства. Meteor обеспечит вас поддержкой real-time режима в ваших приложениях, а также предоставит full-stack среду разработки под javascript/nodejs. Эта платформа является наиболее «звездной» в числе nodejs-фрейворков(а также входит в 10-ку самых «звездных» репозитариев на Github). Так что же, все эти людей просто ошибаются?
Читать дальше →
Всего голосов 16: ↑12 и ↓4+8
Комментарии15

7 шагов к запуску gh-pages для AngularJS-проектов, созданных с помощью Yeoman

Время на прочтение2 мин
Количество просмотров9.4K
В этой публикации я расскажу о том, как создать GitHub Pages для AngularJS-проектов, которые были созданы с помощью генераторов Yeoman. gh-pages удобен тем, что позволяет наглядно увидеть веб-страницу, а не ее исходный код. Как написано в описании gh-pages, они используются для статических HTML-страниц [1]. Однако, и в случае AngularJS-фреймворка, gh-pages могут быть полезны.
Читать дальше →
Всего голосов 18: ↑14 и ↓4+10
Комментарии1

Адаптивная карусель на AngularJS

Время на прочтение9 мин
Количество просмотров12K
       Наверное, каждый начинающий web-разработчик должен написать кривую, с кучей костылей, но свою карусель. Данный материал поможет разобраться с некоторыми тонкостями фреймворка и покажет читателю как сделать карусель «angular way».
       Карусель — элемент web-интерфейса, который поочередно показывает пользователю заранее подготовленные слайды с информацией.

пример карусели

       Готовый проект можно посмотреть тут.
Читать дальше →
Всего голосов 13: ↑8 и ↓5+3
Комментарии5

Истории

Директива AngularJS для запоминания e-mail

Время на прочтение3 мин
Количество просмотров8K
Всем привет. Совсем недавно, в одном проекте понадобилось сделать «запоминание e-mail».

Требования простые: после того, как пользователь ввел e-mail, его нужно запомнить в cookie и автоматически заполнять при следующих обращениях к сайту.

AngularJS, не подвел! Решение получилось компактным и надеюсь, наглядным.

  1. В Javascript определяем директиву
  2. В html используем директиву чтобы указать что нужно «запомнить»

Для работы с cookie использовался jquery и плагин jquery-cookie.

Вот собственно демонстрация http://jsfiddle.net/dzb5rcsw/

Подробности
Всего голосов 14: ↑9 и ↓5+4
Комментарии15

Angular обертка для Apache Cordova плагина для работы с серсивисом Card.IO

Время на прочтение3 мин
Количество просмотров4.9K

Всем доброго времени суток


Последние несколько месяцев занимаюсь разработкой гибридных мобильных приложений, с использованием Ionic фраемворка и Cordova плагинов. Поскольку сам Ionic использует AngularJs, то использование библиотеки ngCordova было очень удобным из-за Angular обертки.

Но возникла необходимость внедрить в проект поддержку сервиса CardIO. CardIO предоставляет функционал для сканирования фронтальной части кредитной карты. Информация о cvv вводится вручную.

Поискав на сайте Cordova плагин для этого сервиса, и выбрав среди нескольких существующих вариантов, остановился на этом — Plugin. Использовать его в чистом виде не хотелось, потому решил написать Angular обертку для этого плагина, для его дальнейшего использования.
В итоге получилось следующее angular-cordova-cardio
Читать дальше →
Всего голосов 13: ↑11 и ↓2+9
Комментарии4

Так ли быстр ReactJS?

Время на прочтение3 мин
Количество просмотров36K
Предлагаю читателям «Хабрахабра» перевод публикации «Is ReactJS really fast?» из блога компании 500Tech.

tl;dr; Нет.

Большинство разработчиков считают само собой разумеющимся, что ReactJS — это супер быстрый движок по сравнению
с другими более тяжеловесными фреймворками, такими как AngularJS и EmberJS.

И даже публикация фэйковых результатов не вызывает подозрений, а ведь если копнуть глубже и проанализировать код тестов, то вы будете сильно удивлены.

image
феноменально ускорить AngularJS...
Всего голосов 40: ↑33 и ↓7+26
Комментарии43

Адаптивное многоуровневое меню сайта с саморегистрируемыми пунктами на основе директивы AngularJS

Время на прочтение24 мин
Количество просмотров15K
        Существует вполне обоснованное мнение, что найденный в Интернете чужой код намного лучше собственноручно написанного, т.к. его уже оттестировали тысячи ленивых разработчиков. Собственно поэтому, когда передо мной возникла задача, описанная в названии статьи, я решил не изобретать велосипед, а найти готовое решение. К моему удивлению, ни на англоязычных, ни на русскоязычных ресурсах ничего подходящего под мои запросы на основе ангуляра я не нашел. Поэтому было принято решение написать код самостоятельно и поделиться им с общественностью.

        Возможности меню, реализованные в данной статье:
  1. Вся начинка меню спрятана под капотом директивы. При верстке html страницы указывается лишь DOM-элемент с директивой, что повышает читабельность кода.
  2. У меню есть возможность создавать пункты с бесконечным уровнем вложенностей.
  3. Подсветка активной страницы в меню осуществляется не только на первом уровне, но и на любом уровне вложенности.
  4. Возможность зарегистрировать пункт меню на этапе конфигурации приложения.
  5. Возможность отображения/сокрытия конкретных пунктов меню в зависимости от прав доступа текущего пользователя.

        Исходный код директивы можно посмотреть тут.
Подробности смотри ниже
Всего голосов 8: ↑6 и ↓2+4
Комментарии0

AngularJS против Backbone.js против Ember.js

Время на прочтение6 мин
Количество просмотров50K
image

1 Введение


В статье мы сравним три популярных MV* фреймворка для веб-разработки: AngularJS, Backbone и Ember. Выбор подходящего фреймворка для проекта кардинально влияет на вашу возможность выполнять задачи вовремя и поддерживать ваш код в будущем. Вам нужен надёжный, проверенный фреймворк, но вы не хотите, чтобы он вас ограничивал. Веб быстро развивается, и старые методики уходят в прошлое. Займёмся же подробным их сравнением.

2 Познакомьтесь с фреймворками


У всех рассматриваемых фреймворков есть общие черты: их код открыт, выпущен под лицензией MIT, и они решают задачу создания одностраничного приложения через шаблон проектирования MV*. У всех есть концепции видов, событий, моделей данных и путей.

AngularJS родился в 2009 как часть большего коммерческого продукта GetAngular. Вскоре после этого Миско Хевери, один из инженеров-основателей GetAngular, сумел воссоздать при помощи этого продукта веб-приложение, состоявшее из 17 тысяч строк кода и делавшееся в течение 6 месяцев, всего за 3 недели, и уложиться при этом в тысячу строк кода. В Google впечатлились таким фактом и стали спонсировать проект с открытым кодом AngularJS. Среди его возможностей – двустороннее связывание данных, инъекции зависимостей, простой для тестирования код и расширение возможностей HTML при помощи директив.

Backbone.js – легковесный MVC-фреймворк, родившийся в 2010. Популярность набрал в качестве альтернативы тяжёлым фреймворкам вроде ExtJS.

Ember родом из 2007 года. Он начинался как SproutCore MVC фреймворк, и сначала его разрабатывали SproutIt, затем – Apple. В 2011 году его форкнул Иехуда Кац, один из главных программистов в проектах jQuery и Ruby on Rails.
Читать дальше →
Всего голосов 33: ↑19 и ↓14+5
Комментарии21

В поисках идеального фреймворка для JavaScript

Время на прочтение11 мин
Количество просмотров20K
В наше время для разработки фронтенда существует много фреймворков и библиотек. Есть хорошие, есть не очень. Часто нам нравится только какая-то концепция, модуль или синтакс. Универсальных инструментов не существует. В статье я описываю фреймворк будущего – такой, которого ещё нет. Я собрал достоинства и недостатки известных фреймворков и мечтаю об идеальном решении.

Абстракция опасна


Всем нравится простота. Сложность убивает. Она усложняет работу и приводит к крутой кривой обучения. Программистом нужно понимать, что как работает – иначе они чувствуют себя неуверенно. При работе со сложной системой есть большое расстояние между «я её использую» и «я знаю, как это работает». К примеру, следующий код прячет сложность:

var page = Framework.createPage({
	'type': 'home',
	'visible': true
});


Допустим, это реальный фреймворк. createPage где-то создаёт новый класс Вида, загружающий html-шаблон home. Основываясь на параметре visible мы добавляем созданный DOM-элемент к дереву. С точки зрения разработчика мы не знаем, как это всё работает в деталях, потому, что это – абстракция.

У некоторых фреймворков есть не один, а много уровней абстракции. Иногда нам нужно знать детали его работы. Абстракция – инструмент мощный, поскольку она делает обёртки для функциональностей, инкапсулирует решения по поводу дизайна. Но её надо использовать с умом, потому что она приводит к процессам, которые трудно отслеживать.

Если мы поменяем пример на следующий:
Читать дальше →
Всего голосов 19: ↑13 и ↓6+7
Комментарии12

Как сделать JSON Vulnerability Protection в ответе сервера под Yii2

Время на прочтение2 мин
Количество просмотров5.7K
В AngularJS реализована поддержка JSON Vulnerability Protection, направленная на то, чтобы противодействовать ситуациям, когда злоумышленник может, при определённых условиях, превратить JSON в JSONP и выполнить какой-то код. В качестве меры противодействия на серверной стороне предлагается добавлять к JSON-данным такой префикс: )]}',

Под катом — моя короткая история генерации JSON-данных с префиксом. Но, я думаю, эта история так же хорошо иллюстрирует и более общий вопрос — как можно добавлять свои собственные форматы ответов сервера. В Yii Framework это делается довольно-таки просто — для этого достаточно описать в конфигурации, какой класс будет отвечать за генерацию ответа определённого формата.
Читать дальше →
Всего голосов 12: ↑11 и ↓1+10
Комментарии0

Разработка кроссплатформенного приложения с помощью Ionic Framework

Время на прочтение12 мин
Количество просмотров83K
image

Всем привет! Не так давно в одном из комментариев я пообещал написать вводную статью для быстрого знакомства с возможностями Ionic Framework (далее IF). Стараюсь сдерживать свои обещания. Для начала мне хотелось бы выложить список ссылок, которыми часто пользуюсь при разработке с помощью IF:


Читать дальше →
Всего голосов 23: ↑21 и ↓2+19
Комментарии17

Анонсирована превью-версия WinJS 4.0: универсальный UX, интеграция с AngularJS, обновленный ListView

Время на прочтение8 мин
Количество просмотров13K
Мы рады представить вам превью-версию Windows-библиотеки для JavaScript 4.0 (WinJS 4.0). В нашем предыдущем релизе (WinJS 3.0) мы фокусировались на том, чтобы обеспечить кросс-браузерную совместимость. С WinJS 4.0 мы начали добавлять новые возможности, чтобы библиотека продолжала быть хорошим фреймворком для разработки как Windows-приложений, так и приложений для веба.



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

  • Универсальный опыт взаимодействия – люди хотят, чтобы их приложения работали там же, где и они: на телефонах, планшетах, компьютерах и даже на телевизоре в комнате. Форм-фактор устройств постоянно развивается, чтобы лучше соответствовать потребностям человека: где-то это клавиатура, подключаемая к планшету, с тем, чтобы сделать работу более продуктивной, где-то это подключение телефона к телевизору, чтобы можно было откинуться назад на диване и исследовать контент, и так далее. Элементы управления WinJS облегчают создание отзывчивых приложений, которые не только могут работать на экранах разного размера, но и учитывать разные способы ввода. Мы хотим помочь вам заточить опыт взаимодействия под каждое устройство и форм-фактор, так чтобы вы могли сфокусироваться на создании самих приложений.
  • Отличное взаимодействие с другими – WinJS спроектирован с прицелом на совместимость. Мы верим, что у вас должна быть возможность легко использовать вместе WinJS и ваши любимые фреймфорки на JS. Например, WinJS-обертка для AngularJS позволит вам прозрачно использовать WinJS в ваших проектах на AngularJS.
  • Мощный ListView – WinJS должен поддерживать вашу разработку приложений, предоставляя лучшие элементы управления. Наша реализация ListView была существенно оптимизирована с точки зрения производительности и поддерживает широкий спектр сценариев. Мы добавили новые возможности, например, поддержку чередования стилей, заголовки и подвалы для списков и улучшенное выделение элементов.


Мы счастливы, поделиться с вами этой предварительной версией. Если у вас будут какие-либо сложности, пожалуйста, отправьте нам запрос на включение или сообщите о проблеме через GitHub.

Вы можете начать использовать превью WinJS 4.0 сегодня через ваш любимый пакетный менеджер (Bower, npm или NuGet), ссылку на CDN, скачав Zip-архив с нашего сайта или клонировав репозитарий для сборки собственной копии на GitHub.

Далее в статье мы расскажем подробнее об фокусных областях, названных выше. Надеемся, вам тоже понравятся новые возможности WinJS 4.0.

Читать дальше →
Всего голосов 26: ↑19 и ↓7+12
Комментарии2

Ближайшие события

Weekend Offer в AliExpress
Дата20 – 21 апреля
Время10:00 – 20:00
Место
Онлайн
Конференция «Я.Железо»
Дата18 мая
Время14:00 – 23:59
Место
МоскваОнлайн

Ionic framework. Обзор экосистемы

Время на прочтение6 мин
Количество просмотров117K

Ionic framework — один из самых широко обсуждаемых фреймворков. Как гласит официальный сайт, Ionic — это SDK для создания гибридных мобильных приложений, набор CSS и JS компонент, созданный на основе AngularJS, SASS, Apache Cordova.

На момент написания статьи репозиторий Ionic насчитывает 15300 звездочек, а сумма инвестиций в компанию Drifty, чьим продуктом является Ionic, уже достигла $3.7 миллиона.

Посмотрим, что интересного предлагает Ionic для разработчика.
Читать дальше →
Всего голосов 21: ↑19 и ↓2+17
Комментарии28

Конструктор интерактивных упражнений для online-обучения

Время на прочтение6 мин
Количество просмотров14K
Введение

Жизнь в современном мире развивается динамично, технологии появляются и умирают, а вместе с ними устаревают и наши навыки. 20 лет назад нужно было помнить функции Windows API, сейчас многие специалисты даже не знают, что это такое, и это не мешает им работать. На первый план вышли другие технологии, требующие совершенно другого опыта. Например, Java Script, HTML 5, CSS. Через 10 лет на смену, скорее всего, придут другие технологии и инструменты, другой способ мышления. Поэтому процесс обучения в современном меняющемся мире становится непрерывным и все более интенсивным. Это must have любого современного специалиста.



Читать дальше →
Всего голосов 13: ↑12 и ↓1+11
Комментарии7

Еще одна статья про индексацию ajax-сайтов поисковиками

Время на прочтение4 мин
Количество просмотров43K
image

Стильно, модно, молодежно сегодня делать сайт на AJAX, с точки зрения пользователя — это быстро и удобно, а у поисковых роботов с такими сайтами могут быть проблемы.
Читать дальше →
Всего голосов 26: ↑24 и ↓2+22
Комментарии60

Angular 2.0.0-alpha для тех, кто не в силах ждать

Время на прочтение9 мин
Количество просмотров54K

Совсем недавно (5-6 марта) прошла конференция ng-conf, и много докладов на ней было посвящено грядущему релизу Angular 2, на нескольких из них даже показали альфа версию. Конечно же после прослушивания очень захотелось опробовать его лично. Если вам тоже не терпится — прошу под кат.

В этой статье мы разберёмся, где взять билд альфа версии Angular 2.0, создадим на нём небольшое приложение — To-do list, и запустим его в браузере без полной поддержки ECMAScript 6.
Читать дальше →
Всего голосов 29: ↑25 и ↓4+21
Комментарии53

SummaryJS, выпуск 5

Время на прочтение3 мин
Количество просмотров12K
С очередной пятницей 13 вас, дорогие любители и профессионалы JavaScript.

Вот уже месяц я веду этот еженедельник. И каждую неделю вижу всё меньшее количество плюсов и приличное количество минусов. В связи с чем, у меня возник вопрос: “А стоит ли продолжать?”. К статье прикреплен опрос, в котором можно указать ваше мнение на этот счет. И если вам что-то не нравится – не стесняйтесь писать в комментариях или мне в личку.

Вот. Всем приятных выходных. И интересного изучения JavaScript.

Видео


EmberConf 2015
ng-conf 2015
ng-wat
3 Reasons to Love React
Advancing JavaScript without breaking the web
Flux Tutorial — Writing a Simple App in Flux and React
Читать дальше →
Всего голосов 23: ↑20 и ↓3+17
Комментарии9

REST сервис на C++: POCO+Angular TODO

Время на прочтение8 мин
Количество просмотров31K
POCO — кроссплатформенная open-source библиотека на С++ под Boost Software License: ru.wikipedia.org/wiki/POCO.
POCO имеет в своем составе средства для создания веб-сервисов c RESTful API.
В данной статье рассмотрено создание такого сервиса на примере TODO.

Читать дальше →
Всего голосов 21: ↑15 и ↓6+9
Комментарии4

Angular 2: Построенный на TypeScript

Время на прочтение2 мин
Количество просмотров51K
Мы рады представить результат долгомесячного партнерства с командой Angular.

Это партнерство было очень продуктивным и одарило нас полезным опытом, а так же в рамках этого сотрудничества, мы рады объявить что Angular 2 с сего момента будет построен на TypeScript. Мы с нетерпением ожидаем того что-бы увидеть, что будут способны делать люди с этими новыми инструментами и продолжать работу с командой Angular для того что бы улучшить аспекты использования продукта, разработчиками Angular.
Подробности
Всего голосов 41: ↑34 и ↓7+27
Комментарии52