By Jason Tee
All frameworks serve different purposes
Backbone, the first major JS framework, has fallen out of favor recently. It might still be the best choice for developers in the enterprise, but Holt did mention that it allows more room for error. "It's more of a DIY approach; batteries are not included. You are going to determine the structure of your app and how it's going to run. Backbone will give you enough rope to hang yourself." For a large-scale client-side app, the freedom to perform deep levels of customization in the design phase might be worth the extra risk.
For many, AngularJS is the clear winner
Freelance Consultant and JS expert Mark Bates came out strongly in favor of Angular, the Google-backed framework that has the greatest mindshare in the development community right now. Bates claimed that this is the easiest, lightest and simplest framework on the market. He probably convinced many programmers to join this camp during his AngularJS fundamentals workshop, although he admitted that it comes down to opinion at the end of the day. He made several good arguments in favor of an Angular approach.
Which framework meshes best with the back end?
According to Holt, these frameworks are fairly agnostic. As long as the back-end APIs are sane (clean, simple and RESTful), they will work in well with any of these frameworks (although Backbone is geared slightly more toward Rails apps). "They don't really care what's on the back end. They just want to talk JSON. As long as you're giving JSON back and forth, they're pretty happy."
Mark disagreed. "Ember and Backbone are very opinionated about what your back end has to look like. It has to be formatted and presented in a particular way. Angular is a lot looser because it uses plain JS objects. When I make a request to an API, it's going to take back whatever that API gives me and convert it into a JS object. There's no need to write custom adapters." He did agree with Holt that working with clean, well-written APIs makes things easier with any framework.
25 Apr 2014
Disclaimer: Our Tips Exchange is a forum for you to share technical advice and expertise with your peers and to learn from other enterprise IT professionals. TechTarget provides the infrastructure to facilitate this sharing of information. However, we cannot guarantee the accuracy or validity of the material submitted. You agree that your use of the Ask The Expert services and your reliance on any questions, answers, information or other materials received through this Web site is at your own risk.