SowingSadness
@SowingSadness
web-разработчик

Какие преимущества у AngularJS vs KnockoutJS?

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

Подскажите, пожалуйста, примеры приложений, где AngularJS раскрывает свои преимущества. Пока что всё, что я видел, говорит не в пользу AngularJS.
  • Вопрос задан
  • 8892 просмотра
Решения вопроса 1
@lega
Да и по производительности он уступает:

Есть ещё такой тест который показывает обратное: plnkr.co/edit/leZaT043Yffz4LfG8Ykq?p=preview

Я перешел от Knockout.js к Angular.js (а потом и к Angular Light), вот некоторые минусы первого:
1) В ng есть декларативный биндинг, в ko нет (раньше не было), хотя недавно натыкался на какие-то решения.
2) Из-за того что в angular dirty check - не нужно заворачивать данные в observable, это очень удобно.
3) В ng можно без проблем оперировать с данными (большие вычисления), в ko для этого нужно достать данные из observable, провести операции, потом положить обратно.
4) Так же в ko происходит "мгновенное" обновление, что несет 2 неприятности: 1) нагрузка, возможно не нужно обновлять именно сейчас 2) иногда нужно учитывать порядок обновления данных, т.к. зависимые расчеты могут сломаться.
5) Есть ещё не маленькая неприятность, когда в большом проекте нужно сделать доработку - и нужно сделать обычную переменную как observable - заставляет рефакторить, или наоборот перевести из observable в обычную для оптимизации, этой проблемы в angular нет.

Можете так же посмотреть Angular Light, он попроще, + есть некоторые полезные фичи которых нет в Angular.js
Ответ написан
Пригласить эксперта
Ответы на вопрос 1
Различия в том, что KO по своей философии не годится для больших SPA приложений. Почему ? Потому что делается там всё через eval. Из этого следует большая вероятность утечек памяти. У него гораздо меньше возможностей "из коробки".
Angular работает несколько иначе. Он больше подходит для больших SPA приложений, больше возможностей из коробки, больше вероятности сделать качественное приложение.
И всё таки гуглите больше, и найдете ответы на все вопросы :-)
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы