{"id":359,"date":"2017-08-12T13:12:11","date_gmt":"2017-08-12T13:12:11","guid":{"rendered":"http:\/\/mansainfotech.com\/blog\/?p=359"},"modified":"2017-08-12T13:12:11","modified_gmt":"2017-08-12T13:12:11","slug":"javascript-frameworks-learning-curve-angular-backbone-ember-and-react","status":"publish","type":"post","link":"https:\/\/mansainfotech.com\/blog\/javascript-frameworks-learning-curve-angular-backbone-ember-and-react\/","title":{"rendered":"JavaScript frameworks learning curve &#8211; Angular, Backbone, Ember and React!"},"content":{"rendered":"<p>Frameworks! Heard before? Whether it\u2019s a yes or no, I\u2019d like to commence with its true definition \u2013 what is it and how it can be useful for us&#8230;<\/p>\n<blockquote><p><span style=\"color: #993300;\">| You just need a framework and an idea.<\/span><\/p><\/blockquote>\n<p>Frameworks are nothing but, basic structures which serve as a foundation for system, concept or text. These are a collection of programs which can help you develop your own applications. It tells you, &#8216;how to do something when everything is predefined&#8217;&#8230;like classes and functions which can be used to process input, manage h\/w devices or interact with system software.<\/p>\n<p>All in all, Frameworks provide you with the following:<\/p>\n<ul>\n<li>Easy-working with complex technologies,<\/li>\n<li>Promotes consistent coding and fewer bugs,<\/li>\n<li>Makes your app more scalable and flexible.<\/li>\n<\/ul>\n<p>There are a number of frameworks to choose from. But, Javascript frameworks are one of my favourites and ever since they have continued to evolve at a fever pitch.<\/p>\n<p>Now, If you are in a mood of making a Javascript-based website or application, it&#8217;s essential to choose the right framework that best fulfils your project&#8217;s needs. Angular.JS, Backbone.Js, Ember.JS, React.Js &#8211; are the frameworks that we&#8217;ll consider here.<\/p>\n<p><strong>Angular.JS<\/strong><br \/>\n<em>The frameworks champion<\/em><\/p>\n<hr \/>\n<p>AngularJS is a Superheroic Javacript Framework founded in 2009 by Misko Hevery. It is the oldest of all 4 frameworks mentioned above. It is meant for building high-end Single page applications (SPAs), thereby, extending the functionality of HTML with directives.<\/p>\n<p>Some of the most popular websites using Angular.JS includes Freelancer, Youtube, Vevo, weather, etc.<\/p>\n<p><span style=\"text-decoration: underline;\">Benefits:<\/span><\/p>\n<ul>\n<li>Straightforward design,<\/li>\n<li>Simple routing,<\/li>\n<li>Runs quickly,<\/li>\n<li>Easy-to-test code.<\/li>\n<\/ul>\n<p><span style=\"text-decoration: underline;\">Sick Points:<\/span><\/p>\n<ul>\n<li>Learning curve is steep,<\/li>\n<li>Third party integration is quite complex,<\/li>\n<li>Tends to be slow sometimes.<\/li>\n<\/ul>\n<p>For knowing more about Angular, you can check out its homepage at here \u2013 https:\/\/angularjs.org\/.<\/p>\n<p>Note: AngularJS uses Model-View-Controller architecture for Angular 1 and Model-View-ViewModel architecture for Angular 2. Their is drastic differences b\/w the two.<\/p>\n<p><strong>Backbone.JS<\/strong><br \/>\n<em>Very lightweight framework<\/em><\/p>\n<hr \/>\n<p>Backbone.JS is a javascript framework which uses Model-View-Presenter design approach. It is lightweight and ideal for making Single page web applications. Backbone framework was built by \u2018Jeremy Ashkenas\u2019 ( A famous developer who is well-known for developing CoffeeScript &amp; Underscore.JS. )<\/p>\n<p>It brings with itself, huge number of advantages:<\/p>\n<ul>\n<li>Easily sync with the back-end,<\/li>\n<li>Great support for Restful API\u2019s,<\/li>\n<li>Maintains clean code,<\/li>\n<li>Highly efficient with readable code,<\/li>\n<li>Provides extensibility and versatality.<\/li>\n<\/ul>\n<p>And, there are number of apps which have been developed using it. Some of them are \u2013 Airbnb, Foursquare, etc.<\/p>\n<p><strong>React.JS<\/strong><br \/>\n<em>A newbie on the block<\/em><\/p>\n<hr \/>\n<p>React.JS is used for building interfaces. It is highly focussed on \u2018V\u2019 in Model-View-Controller architecture. Created by Jordan Walke, react.js was open sourced in 2013.<\/p>\n<p>It is often used with other Javascript frameworks for large applications whose data-set change frequently. Number of popular websites built using React.js includes \u2013 Flipkart, Instagram, Facebook, New York Times, Airbnb, etc.<\/p>\n<p><span style=\"text-decoration: underline;\">Benefits:<\/span><\/p>\n<ul>\n<li>Good for javascript debugging,<\/li>\n<li>Provides faster updates,<\/li>\n<li>Significant performance gains.<\/li>\n<\/ul>\n<p><span style=\"text-decoration: underline;\">Sick Points:<\/span><\/p>\n<ul>\n<li>Not fully framework, but, more of a library,<\/li>\n<li>Has steep learning curve,<\/li>\n<li>View layers are very sophisticated.<\/li>\n<\/ul>\n<p>For more on React, check out its main website at here: https:\/\/reactjs.net\/.<\/p>\n<p><strong>Ember.JS<\/strong><br \/>\n<em>All focussed on scalability<\/em><\/p>\n<hr \/>\n<p>Ember.JS uses Model-view-controller design approach for developing client side SPA\u2019s (Single page applications). Originally, in 2007, Ember came into existence as \u2018SproutCore\u2019. In 2011, Facebook acquired and renamed it as Ember.<\/p>\n<p><span style=\"text-decoration: underline;\">Benefits:<\/span><\/p>\n<ul>\n<li>Proffer URL support,<\/li>\n<li>Scale web app beyond the view layer,<\/li>\n<li>Incorporates friendly docs and API,<\/li>\n<li>Provides faster boot time and stability.<\/li>\n<\/ul>\n<p><span style=\"text-decoration: underline;\">Sick Points:<\/span><\/p>\n<ul>\n<li>Has steep learning curve,<\/li>\n<li>Contains lot of outdated content,<\/li>\n<li>Cumbersome,<\/li>\n<li>Most heaviest of frameworks.<\/li>\n<\/ul>\n<p><strong>Wrapping Up: <\/strong>Angular is most popular of all four. It can be used as one-stop-shop for large enterprises. Ember has, in comparison to others, more learning curve. So, it is ideally suited for long-term projects. React is lightest of all frameworks, and thus, are responsible for doing one great thing \u2013 rendering UI components. And, it\u2019s pretty easier to create your SPA using Backbone.Js. Finally, it\u2019s all your decision of which Javacript Framework to pick.<\/p>\n<p><strong>Hope you liked my #same post. Provide <\/strong>me<strong> your valuable comments or let me know if <\/strong>their<strong> are any eyesores. I am eager to answer you!<\/strong><\/p>\n<p>&nbsp;<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Frameworks! Heard before? Whether it\u2019s a yes or no, I\u2019d like to commence with its true definition \u2013 what is it and how it can be useful for us&#8230; | You just need a framework and an idea. Frameworks are nothing but, basic structures which serve as a foundation for &hellip; <a href=\"https:\/\/mansainfotech.com\/blog\/javascript-frameworks-learning-curve-angular-backbone-ember-and-react\/\" class=\"more-link\">Continue reading <span class=\"screen-reader-text\">JavaScript frameworks learning curve &#8211; Angular, Backbone, Ember and React!<\/span><\/a><\/p>\n","protected":false},"author":1,"featured_media":360,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[33],"tags":[],"class_list":["post-359","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-web-design-and-development"],"_links":{"self":[{"href":"https:\/\/mansainfotech.com\/blog\/wp-json\/wp\/v2\/posts\/359","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/mansainfotech.com\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/mansainfotech.com\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/mansainfotech.com\/blog\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/mansainfotech.com\/blog\/wp-json\/wp\/v2\/comments?post=359"}],"version-history":[{"count":0,"href":"https:\/\/mansainfotech.com\/blog\/wp-json\/wp\/v2\/posts\/359\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/mansainfotech.com\/blog\/wp-json\/wp\/v2\/media\/360"}],"wp:attachment":[{"href":"https:\/\/mansainfotech.com\/blog\/wp-json\/wp\/v2\/media?parent=359"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/mansainfotech.com\/blog\/wp-json\/wp\/v2\/categories?post=359"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/mansainfotech.com\/blog\/wp-json\/wp\/v2\/tags?post=359"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}