Ajax! Ajax Programming Ajax! Ajax Programming
Ajax! Ajax Programming Take a look at a typical desktop application (Spreadsheet app, etc.) The program responses intuitively and quickly The program gives a user meaningful feedback's instantly Things happen naturally Take A Scenario
Ajax! Ajax Programming “Click, wait, and refresh” user interaction Synchronous “request/response” communication model Page-driven: Workflow is based on pages Conventional Web Apps
Ajax! Ajax Programming Conventional Web Apps
Ajax! Ajax Programming Interruption of user operation Loss of operational context during refresh No instant feedback's to user activities Constrained by HTML These are the reasons why Rich Internet Application (RIA) technologies were born. Conventional Web Apps Issues
Ajax! Ajax Programming Applet (Swing) Macromedia Flash Java WebStart AJAX RIA Technology
Ajax! Ajax Programming Pros: Can use full Java APIs Custom data streaming, graphic manipulation, threading, and GUIs Cons: Code downloading time Reliability concern - a mal functioning applet can crash a browser Applet
Ajax! Ajax Programming Designed for playing interactive movies originally Pros: Good for displaying vector graphics Cons: Browser needs a Flash plug-in ActionScript is proprietary Macromedia Flash
Ajax! Ajax Programming Pros Desktop experience once loaded Leverages Java technology to its fullest extent Disconnected operation is possible Application can be digitally signed Incremental redeployment Java Webstart
Ajax! Ajax Programming Cons Old JRE-based system do not work First-time download time could be still significant Java Webstart
Ajax! Ajax Programming Asynchronous Javascript and XML. Not a stand-alone language or technology. It is a technique that combines a set of known technologies in order to create faster and more user friendly web pages. It is a client side technology. AJAX
Ajax! Ajax Programming No plugin for AJAX Flash development tools cost money Flash typically has slower page load time Flash can work on older browsers AJAX vs Flash
Ajax! Ajax Programming ActionScript doesn't have a cross browser issues Flash can access other domains if there is a crossdomain.xml file AJAX vs Flash
Ajax! Ajax Programming Pros Most viable RIA technology so far Tremendous industry momentum Several toolkits and frameworks are emerging No need to download code & no plug-in required Cons Still browser incompatibility JavaScript is hard to maintain and debug AJAX
Ajax! Ajax Programming Prevents unnecessary reloading of a page. When we submit a form, although most of the page remains the same, whole page is reloaded from the server. AJAX Purpose
Ajax! Ajax Programming This causes very long waiting times and waste of bandwidth. AJAX aims at loading only the necessary innformation, and making only the necessary changes on the current page without reloading the whole page. AJAX Purpose
Ajax! Ajax Programming Intuitive and natural user interaction No clicking required Mouse movement is a sufficient event trigger "Partial screen update" replaces the "click, wait, and refresh" user interaction model Only user interface elements that contain new information are updated (fast response) Why AJAX?
Ajax! Ajax Programming Data-driven (as opposed to page- driven) UI is handled in the client while the server provides data Asynchronous communication replaces "synchronous request/response model." A user can continue to use the application while the client program requests information from the server Why AJAX?
Ajax! Ajax Programming AJAX
Ajax! Ajax Programming AJAX
Ajax! Ajax Programming Google helped popularize Increase Usability of Web Applications Rich Internet Applications without Flash Save Bandwidth Download only data you need Faster interfaces (sometimes) Why AJAX is Popular
Ajax! Ajax Programming JavaScript/PHP HTML CSS XML JSP Technology of AJAX
Ajax! Ajax Programming AJAX Achi
Ajax! Ajax Programming Classic vs AJAX
Ajax! Ajax Programming Google Map Gmail NetFlix.com Flickr Worklife Survey (old tooltip) MUSE Calendar (Ajax tooltip) (Ajax) And many other popping anywhere Real Life AJAX Example
Ajax! Ajax Programming “To better understand the concepts of AJAX we need to ==activate== your creativity” End
Ajax! Ajax Programming In a creative role playing, think of REAL LIFE good scenarios that will show the concepts of AJAX such: the interaction of different components comparison to classic web Etc…… Note: It’s your cooperation matters; collaborate. Group Activity: