29
  • Which one is easy to use?
  • What are the features of preference in both?
  • What is the percent of usage of both?
  • What should we know before using both or anyone?
Community
  • 1
  • 1
Muhammad Raheel
  • 341
  • 1
  • 5
  • 9
  • 2
    Definitely I can google it, but the purpose to ask here is to seek some expert's opinion (expert here in sense who has worked on both and have done some R&D) on the said topic, In future it may help some other person as well who may encounter similar situation – Muhammad Raheel Sep 29 '15 at 07:32
  • i appreciate your intention but it was against the SO rules . anyways you got some answer down . – super cool Sep 29 '15 at 08:46
  • It might be against the rules but I think the rules should be changed. I know the answers are not objective but a subjective answer may highlight issues it would take me weeks or months to identify. That's the point of asking questions. – strattonn Apr 19 '18 at 22:39

1 Answers1

34

That is based on your need.

For data driven app. Choose Angular. With it's nice data binding


The fundamental difference between the two solutions is that AngularJS manages the whole application and defines guidelines on how the application code should be structured, whereas with KnockoutJS the application structure is entirely up to you.


Knockout has a low barrier of entry, but is also harder to manage when code base and complexity grows. It is not easy to build the necessary infrastructure correctly, and poor decisions made in structuring code may cost a lot to fix in the future.


Angular’s ability to bind directly to plain objects, modular structure, and strict development guidelines prevent many issues right from the start, and provide a strong architectural foundation for the application.


Knockout is primarily used to control UI representation in lower complexity applications, whereas Angular is a JavaScript framework that is much better suited for large, complex enterprise applications. It provides not only UI binding, but also best practices for application structure, development and testing.


Few more added to this:

  1. Knockout is like light weight Angular
  2. Knockout doesn't have routing, Angular have it. But if you want to use routing in Knockout you may use Sammy.js / A Small Web Framework with Class / RESTFul Evented JavaScript
  3. Knockout and Angular have automatic data binding
  4. Knockout is popular in .net development, while Angular is backed up by Google Angular has service, directives, Knockout doesn't have

References :

https://www.devbridge.com/articles/angular-vs-knockout-similarities-and-fundamental-differences/

https://www.codementor.io/reactjs/tutorial/reactjs-vs-angular-js-performance-comparison-knockout

Angular.js vs Knockout.js vs Backbone.js

https://www.quora.com/How-do-Angular-js-and-Knockout-compare

Community
  • 1
  • 1
  • 1
    Vue.js Is Better. Easy to learn. Check this link for comparison and more info. http://www.valuecoders.com/blog/technology-and-apps/vue-js-comparision-angular-react/ – Hilario Goes Jan 31 '17 at 19:14
  • "Knockout doesn't have routing" Durandal uses it. Providing MVVM features. – MrYellow Apr 06 '17 at 22:34
  • If your good with software architecture, I'd go with KnockoutJS. You have more control over how things are done. Its light weight so you can just add things when you actually need them. i.e: I was able to switch my app from MVC to Flux while using KnockoutJS without much issue. – kiwicomb123 Oct 22 '19 at 04:54