Присоединяюсь, клевая штука. Уже пошел у меня в продакшен, ну я рассказывал ...
Форум → Программирование → JavaScript → AngularJS → Кто пользовался Angular Light? Выбираю между ним, React.js, Mithril
Кто пользовался Angular Light? Выбираю между ним, React.js, Mithril
Страницы: ← Предыдущая страница • Следующая страница →
-
-
Дек. 25, 2015, 6:07 п.п., спустя 34 дня 23 часа 31 минуту
Angular Light стал ещё быстрее, тест "список 10к" тут:
Ещё есть такой тест:
И тест скорости todo-приложения:В последнем тесте AL в 2 раза быстрее чем Angularjs 1, и Mithril
"Angular Light: Example": 407.1650000000009, "AngularJS: Example": 868.9300000000076, "AngularJS: AngularJS Optimized": 818.4749999999985, "AngularJS: TypeScript & AngularJS": 942.830000000009, "$jin2_view: Example": 598.4300000000003, "Mithril: Architecture Example": 849.4199999999983, "React: Example": 1226.619999999988, "React: React + Backbone.js": 3274.5050000000047, "React: Scala.js + React": 2424.179999999993, "React: TypeScript + React": 1082.600000000013, "React: React + Alt": 1248.7699999999968Хотя скорость - это не главная "задача" AL, простота разработки важнее.
JTT
lega911.github.io
dbmon
mathieuancelin.github.io
DoYouEvenBench
nin-jin.github.io
-
Дек. 26, 2015, 12:04 д.п., спустя 5 часов 57 минут 26 секунд
Не подскажите ребята для каких характеристик проекта какого уровня и какие фреймворки лучше выбрать. Типа, например, если то-то то-то, то достаточно будет jQuery и тд. ?
-
Дек. 26, 2015, 11:26 д.п., спустя 11 часов 21 минуту 55 секунд
@kostyl, приложения с двумя кнопками уже удобней делать с Angular Light, а вообще зачем выбирать используйте jQuery и Angular Light вместе (брать преимущества обоих), см. статью:
Angular Light для jQuery/JS разработчиков
Я на Тостере периодический вижу вопросы типа «как скрыть блок по клику» или «как раскрасить по условию», поэтому я хочу вам показать 4 «приема» которы
habrahabr.ru
-
Дек. 26, 2015, 11:40 д.п., спустя 13 минут 41 секунду
Если у вас задача где много зависимостей друг от друга, типа excel - таблица, где одна ячейка зависит от другой, тогда по хорошему нужно взять FRP библиотеку и прикрутить к фреймворку.
Если вам кажется что React (react-подобный) подход проще в разработке, то можете его попробовать, только из-за скорости или серверного рендеринга его брать нет смысла.
А в основном большинство фреймворков конкурируют - "любые задачи можно сделать на любом фреймворке", там уже выбираете по факторам: простота использования, скорость работы, вес файлов, способ отслеживания изменений, инструментарий, популярность и т.п. -
Дек. 26, 2015, 11:42 д.п., спустя 2 минуты 10 секунд
1 runs average:
{
"Angular Light: Example": 199.29999999999563,
"AngularJS: Example": 498.67000000000553,
"AngularJS: AngularJS Optimized": 483.3349999999955,
"AngularJS: TypeScript & AngularJS": 534.75,
"Aria Templates: Example": 712.1949999999961,
"Backbone.js: Example": 365.6850000000013,
"Backbone.js: Enyo & Backbone.js": 14428.01999999999,
"Backbone.js: TypeScript & Backbone.js": 628.0699999999997,
"CanJS: Example": 4951.855000000003,
"CanJS: Require.js & CanJS": 4944.705000000009,
"Chaplin: Example": 299.320000000007,
"ComponentJS: Example": 4681.684999999998,
"Dijon: Example": 1349.7149999999965,
"Dojo: Example": 849.035000000018,
"DUEL: Example": 2146.3899999999994,
"Ember.js: Example": 1194.339999999982,
"Enyo: Example": 14952.13500000001,
"JavaScript: Vanilla JavaScript Example": 335.24499999999534,
"js_of_ocaml: Example": 2796.665000000008,
"jQuery: Example": 1431.020000000004,
"$jin2_view: Example": 301.0200000000041,
"Mithril: Architecture Example": 426.3300000000163,
"Olives.js: Example": 478.1450000000041,
"Polymer: Example": 443.36000000001513,
"PureMVC: Example": 1418.2799999999988,
"rAppid.js: Example": 662.2050000000017,
"React: Example": 864.9050000000134,
"React: React + Backbone.js": 2977.0150000000285,
"React: Scala.js + React": 1906.8750000000146,
"React: TypeScript + React": 765.6749999999884,
"React: React + Alt": 907.695000000007,
"scalajs-react: Example": 2018.6700000000128,
"scalajs-react: React": 847.3849999999802,
"scalajs-react: React & Backbone.js": 2811.7150000000547,
"Spine.js: Example": 4903.514999999985,
"Thorax: Thorax & Lumbar": 99.71999999997206,
"TypeScript: TypeScript & AngularJS": 498.14500000004773,
"TypeScript: TypeScript & Backbone.js": 732.9849999999569,
"TypeScript: TypeScript & React": 847.5699999999488,
"Vue.js: Example": 243.25500000003376,
"WebRx: Example": 478.33499999999185
}не всё полезно, что в swap полезло -
-
Дек. 28, 2015, 10:50 п.п., спустя 1 день 23 часа 15 минут
А кто то юзал ReactJS? У меня пару вопросов:
- что не нравится?
- что использовать с ним лучше для Ajax и Store? -
Дек. 29, 2015, 12:05 д.п., спустя 1 час 15 минут 22 секунды
@kostyl, У реакта идея хорошая, но с ним тоже не все гладко, тоже куча проблем и сложностей, судя по SO и тостеру.
Если вы используете jQuery, а он почти в каждом серьезном веб проекте, то у вас серверного рендеринга не будет.
Он медленней чем Ангуляр, судя по тестам.Но больше всего мне интересно, как реакт разработчики работают с дизайнерами? С ангуляром - понятно, дизайнер дал мне пачку html файлов, я вставил "метки" где нужно - все заработало. А с реактом что? мне нужно все дербанить на куски, конвертировать в jsx, впихивать логику/js и т.п. Что потом делать когда дизайнер поправит или доработает дизайн? Наверно реакт разработчик должен быть и верстальщиком в одном лице.
Кстати у реакта уже появилось ~20 конкурентов (vdom реализаций).
-
Дек. 29, 2015, 12:43 п.п., спустя 12 часов 38 минут 1 секунду
то у вас серверного рендеринга не будет
@Oleg, а можешь пояснить почему, а то я не шарю?
Спустя 77 сек.@CTAPbIu_MABP можешь рассказать почему ты проголосовал за реакт плиз?
-
Дек. 29, 2015, 1:27 п.п., спустя 43 минуты 42 секунды
дарова
мне не очень нравиться постановка вопроса в голосовании
я бы не ставил angular и react рядом с остальными
то есть я бы поставил их в ряд с extjs
a knockout я бы сравнивал с ember
но это сказкиреальный вопрос: кто сильнее кит или слон.
и ответ на него зависит от среды на которой ты кодишьесли ты пишешь бэкенд на php, то наверное все равно или ангуляр, потому что там говнокодить проще
не то, что бы я говорил, что ангуляр гавно, но он весь и полностью построен на рефлексии
и все эти передачи скоупов и прочих контекстов настолько неявны что в них можно потеряться
а если до кучи использовать лайвскрипт то получиться, такая хуйня, от которой @vasa_c будет плакать.service 'modalService', [ '$modal' ($modal) -> modalDefaults = backdrop: true keyboard: true modalFade: true templateUrl: 'templates/modal.html' modalOptions = closeButtonText: 'Close' actionButtonText: 'OK' headerText: 'Proceed?' bodyText: 'Perform this action?' @showModal = (customModalDefaults, customModalOptions) -> if !customModalDefaults customModalDefaults = {} customModalDefaults.backdrop = 'static' @show customModalDefaults, customModalOptions @show = (customModalDefaults, customModalOptions) -> #Create temp objects to work with since we're in a singleton service tempModalDefaults = {} tempModalOptions = {} #Map angular-ui modal custom defaults to modal defaults defined in service angular.extend tempModalDefaults, modalDefaults, customModalDefaults #Map modal.html $scope custom properties to defaults defined in service angular.extend tempModalOptions, modalOptions, customModalOptions if !tempModalDefaults.controller tempModalDefaults.controller = ($scope, $modalInstance) -> $scope.modalOptions = tempModalOptions $scope.modalOptions.ok = (result) -> $modalInstance.close 'ok' return $scope.modalOptions.close = (result) -> $modalInstance.close 'cancel' return return $modal.open(tempModalDefaults).result return ]плюс дебаг/тесты это отдельный адочек - из-за всей этой рефлексии и депенденси инжекшн, естественно
нужно использовать жасмин с кармой и ангулярной приблудой для моков
опять же против этих тулзей ничего не имею, но все в сумме мне не нравитсяи еще один факт в копилку: ангуляровское добро цепляется за готовый html
и надо следить, что бы они друг другу соответствовалитеперь немного про реакт
сам по себе реакт это просто описания жизненного цикла компонентов типа как backbone
фреймворком он становиться после спаивания с react-route (history), bootstrap (react-route-bootstrap, react-bootstrap) flux и прочими либами
и вроде как модульность это хорошо, но, сука, они там со своими модулями заебали - это с этим работает, а с другим нет и в версиях полный бардак.большое преимущество дает поддержка es6/7 чувствуешь себя на пике горы,
он восторга спасают тормоза бабеля, которым это все собирается
плюс eslint имеет модуль для работы c jsx - тоже удобно для чистоты кода
flow, правда, прикрутить так и не удалось - не хватило терпения"use strict"; import React from "react"; export default class DeleteDialog extends React.Component { render() { return ( <div className="modal fade" id="confirmDeletionModal" tabIndex="-1" role="dialog" aria-labelledby="myModalLabel" aria-hidden="true"> <div className="modal-dialog"> <div className="modal-content"> <div className="modal-header"> <button type="button" className="close" data-dismiss="modal" aria-label="Close"><span aria-hidden="true">×</span></button> <h4 className="modal-title" id="myModalLabel">Confirm delete</h4> </div> <div className="modal-body"> <p>Are you sure?</p> </div> <div className="modal-footer"> <button type="button" data-dismiss="modal" id="buttonConfirmCancel" className="btn btn-primary">Cancel</button> <button type="button" data-dismiss="modal" id="buttonConfirmDelete" className="btn btn-danger">Delete</button> </div> </div> </div> </div> ); } }очень удобно ложится на серверную часть на js
можно использовать одни и те же пакеты на клиенте и на сервере
горячая перезагрузка при помощи webpack - вообще сказка
дебаг простой, сорсмап - рулиттесты можно писать на чем угодно, мои на mocha
там еще говорили про серверный рендеринг, удобно, чо!
но если бы увидел jxs который бросает sql запросы вырвал бы руки -
-
Дек. 29, 2015, 6:04 п.п., спустя 1 час 28 минут 23 секунды
Если вы используете jQuery, а он почти в каждом серьезном веб проекте, то у вас серверного рендеринга не будет.
@Oleg, это кстати неправда
реакт вполне себе жизнеспособен без жуквери в отличии от ангуляра
то есть конечно жуквери делает жизнь намного проще
но react-bootstrap написан без жуквери и не уступает оригиналу по функциональности -
Дек. 29, 2015, 6:58 п.п., спустя 54 минуты 22 секунды
но react-bootstrap написан без жуквери и не уступает оригиналу по функциональности
@CTAPbIu_MABP, так а Ajax использовать с помощью чего?
-
Страницы: ← Предыдущая страница • Следующая страница →
Пожалуйста, авторизуйтесь, чтобы написать комментарий!