Рубрика «AngularJS» - 8

Недавно команда Qwintry начала активную миграцию на Vue.js во всех наших старых и новых проектах:

  • в legacy системе, работающей на Drupal (qwintry.com)
  • в нашей новой, полностью переписанной ветке qwintry.com (бекэнд на Yii2 / Node.js)
  • в наших B2B-системах (работающих на Yii2) (logistics.qwintry.com)
  • во всех наших мелких внутренних и публичных проектах (в основном использующих PHP и Node.js на бэкенде)

Почему наши программисты остановили выбор на Vue.js, рассказывает руководитель департамента разработки Qwintry LLC. Антон Сидашин ➔
Читать полностью »

image

Всем привет! Эта статья о том как связать клиентское приложение Angular2 с Rails 5 сервером используя Websocket.
Читать полностью »

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

Почему я решил использовать Ionic 2

Полистав upwork я пришел к выводу, что мой горячо любимый angularjs стремительно уступает позиции своему преемнику. Довольно странное ощущение: еще вчера angular 2 был в бете и буквально за пару месяцев после релиза почти догнал своего монолитного предшественника в количетсве объявлений о разработке веб-приложений! В 22 года я почувствовал себя довольно старым и решил потратить время на то, чтобы снова догнать моду.

И тут начинается: webpack или system.js? Typescript или ES6? Promises или Observables? Что-то не так. Почитал, окончательно запутался. Но понял, что в 2016 про gulp уже лучше вслух не вспоминать — застыдят.

Собравшись с мыслями вспомнил о своем опыте работы с гибридными приложениями. Да, там было много боли и слез, но все же я с улыбкой вспоминал Ionic. А тут как раз вторая версия вроде как вполне стабильна. Ребята из ionic core team уже позаботились обо мне, выбрав за меня почти весь стек, настроив конфиги и предложив готовую структуру проекта. Это счастье — просто брать и писать код, а потом видеть результаты, держа в руках свой телефон. Загорелся и решил написать небольшое приложение и выложить его на github.
Читать полностью »

image

Автоматизированные тесты – это хорошо. Проект, который на 100% покрыт тестами, преподносит покрытие как преимущество. Но…
Думаю, что в этом процессе нет осознанности. А она сильно облегчает жизнь. Возможно, что половина тестов в вашем проекте не только бесполезна, более того — несет вред. Ниже расскажу о том, какие тесты писать не нужно.
Читать полностью »

Представляем библиотеку right-angled, конструктор гридов для angular2 - 1

Сегодня хотим рассказать о том, как мы решили отдать долг open source сообществу и создали библиотеку right-angled. Только вчера мы перевели ее в статус beta и решили поделиться этой отличной новостью с читателим c самым первым.
Читать полностью »

image

Управление состоянием своего приложения — интересная и весьма важная задача для многих приложений. Ведь от этого зависит то, насколько внятно и вменяемо будет построен пользовательский интерфейс и насколько успешным будет само приложение.

Сегодня я хотел бы рассказать об одном интересном open-source проекте, который может облегчить работу с состояниями для тех, кто решил написать или переписать свое приложение на Angular2 и думает о том, переписывать ли ему логику управления состояниями заново или стоит что-либо поискать на просторах этих ваших интернетов.
Читать полностью »

[Прошедшему Году литературы посвящается]

Это была очередная пятница в тихом, уютном баре с лучшими друзьями… Разговор шел как обычно: новости, работа, шутки и опять по кругу. В поисках темы для разговора, потягивая из пивных кружек, почему-то вспомнили о стихах :) И тут каждый стал припоминать, что он еще помнит с тех далеких школьных лет. Если спотыкался, остальные подсказывали, ежели кто помнил, было довольно весело и интересно. Возвращаясь домой в тот вечер, я подумал: а что если сделать простое веб-приложение, чтобы каждый мог вспомнить эти прекрасные произведения русской поэтической мысли? Дизайн приложения уже крутился в голове, и я засел за разработку…

Ты помнишь чудное мгновенье? - 1

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

Сергей Аверин (
XEK )

Сергей Аверин

Изначально я хотел сделать доклад про сравнение фреймворков, но потом подумал, что закидают помидорами, поэтому доклад — просто адский троллинг, как водится у меня. И он, скорее, не про HighLoad, а про менеджерскую задачу, которая стоит над всем этим делом, включая фронтенд.

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

Zone.js или как Dart спас Angular - 1

Я фронтенд-разработчик в компании Wrike, пишу на JavaScript и на Dart, который компилируется в JavaScript. Сегодня я хочу рассказать о библиотеке Zone.js, лежащей в основе Angular 2.

Изначально Zone.js была придумана разработчиками Google для языка программирования Dart и утилиты Dart2JS. С помощью этой библиотеки «гугловцы» решили проблему с дайджест-циклом, которая была характерна для первого Angular’а.
Чтобы понять, где эта библиотека используется и для чего нужна, прошу под кат.
Читать полностью »

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

Написание хорошего кода

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

function add(numA, numB) {
  return numA + numB
}

Полезным свойством чистых функций является то, что их легко тестировать.

test.equals(add(2, 2), 4)

Компонуемость тоже является их сильной стороной.

test.equals(multiply(add(4, 4), 2), 16)

К тому же их очень легко использовать декларативно.

const totalPoints = users
  .map(takePoints)
  .reduce(sum, 0)

Но давайте взглянем на ваше приложение. Какая его часть действительно может быть выражена чистыми функциями? Насколько часто речь идёт о преобразовании значений, которые традиционно выполняют чистые функции? Могу предположить, что большая часть вашего кода работает с побочными эффектами. Вы выполняете сетевые запросы, DOM манипуляции, используете вебсокеты, локальные хранилища, изменяете состояние приложения и так далее. Это всё описывает разработку приложения, по крайней мере в Интернете.Читать полностью »


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