In this chapter, we will briefly discuss the history of ambitious web applications. We will be introducing the Ember.js MVC framework, followed by a detailed guide to setting up your first Ember.js application.
This chapter covers:
Ambitious web applications have had different meanings at different times in the past. With the evolution of Internet applications and frameworks, today's ambitious web applications are getting closer and closer to desktop applications, giving really immersive user experience.
Web applications started with a simple client server model wherein the server used to send all the static content written in HTML markup language to the browser. The browser used to render the content on the client side to display the necessary information. It was possible to collect user data using <form>
tags that submitted the input field details to the server, which responded with the complete HTML.
In 1995, Netscape introduced a client side scripting language called JavaScript. It was intended to run inside a browser to handle things such as form validations, thus giving users an interactive experience. Following that, Java by Sun Microsystems introduced the concept of web applications in 1999 with their "Servlet" specification, thereby enabling a big community of Java developers to write web applications.
10 years later, in 2005, the term AJAX (asynchronous JavaScript and XML) started to come into play wherein, instead of sending and receiving the entire HTML content from the server, the client could ask for specific information from the server. This was one of the first steps taken to optimize browser-server communication. This also greatly improved the user experience, as the user, instead of going to multiple pages, got everything on one page.
In 2007, a JavaScript library called SproutCore was launched. The library became popular when Apple announced in 2008 that its MobileMe application was using the framework. In December 2011, the SproutCore 2 framework was renamed Ember.js to distinguish itself from SproutCore 1.x, which was a widget-centric library. Thus, Ember.js introduced the MVC (Model View Controller) design pattern to build modern single page web applications.
18.189.186.167