ImageVerifierCode 换一换
格式:PPT , 页数:55 ,大小:2.31MB ,
资源ID:379279      下载积分:2000 积分
快捷下载
登录下载
邮箱/手机:
温馨提示:
如需开发票,请勿充值!快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。
如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝扫码支付 微信扫码支付   
注意:如需开发票,请勿充值!
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【http://www.mydoc123.com/d-379279.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(Can you write REALapplications with AJAX-.ppt)为本站会员(diecharacter305)主动上传,麦多课文库仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知麦多课文库(发送邮件至master@mydoc123.com或直接QQ联系客服),我们立即给予删除!

Can you write REALapplications with AJAX-.ppt

1、Can you write REAL applications with AJAX?,Phil Sarin Advanced UI Software April 15, 2009,Problem: Many web apps stink,Rich Internet Applications (RIAs),Easy deployment and maintenance “Desktop-like” interactivity Willing to sacrifice some “webness” (e.g., bookmarks),RIA Approaches,Browser plug-in F

2、lash/Flex, Java Swing, Silverlight Potentially greater interactivity, higher barrier to adoption Concerns about openness/control In browser, no plug-ins AJAX Lower barrier to adoption Cross-browser mayhem?,Questions for today,Can we approach AJAX development like “regular” GUI development? What are

3、the approaches/tradeoffs? Whats likely to become popular?,What is AJAX?,What is AJAX?,AJAX event handling,Some History,History: Hill Climbing,RIA: Which hill to climb?,Approaching RIAs from two hills,The HTTP Hill,The HTTP Hill,Static Pages,Server fetches and returns a web page Initially just text-b

4、ased With Mosaic, pictures too,The HTTP Hill,Dynamic Pages,Server-side CGI (mostly perl) Client-side Javascript,The HTTP Hill,“Frameworks”,MVC support (Struts 1 & 2, Rails, Django) Easier HTML generation (JSP, ERB, Freemarker, ) State/sessions Javascript libraries (Prototype, DOJO, jQuery),The HTTP

5、Hill,Pros/Cons (prior to AJAX),Very cheap for simple sites Reasonably flexible Mail clients! Web-friendly Bookmarkable Indexable Slow feedback Minimal interactivity Cross-browser mayhem,The Direct Manipulation Hill,The Direct Manipulation Hill,The Direct Manipulation Hill,GUI Toolkits,Common widget

6、set across applications Standalone or client-server,The Direct Manipulation Hill for Internet applications,Browser Plug-Ins,Flash, Java, Silverlight Took a long time to catch on,The Direct Manipulation Hill,Pros/Cons,Timely feedback Programming power (behaviors, constraints at least possible) Common

7、 widgets (consistency, usability) Flash/etc: more consistent runtime platform Flash/etc: needs a plug-in Cross-platform issues still exist Proprietary runtime platform,Where does AJAX fit in?,Where does AJAX fit in?,Both hills!,AJAX on the HTTP Hill,Tactical features Autocomplete Drag and drop AJAX-

8、aware code Raw Javascript/HTML/CSS Or with a library Okay for some applications Too limiting for RIAs Not the focus of this talk,Direct Manipulation AJAX,AJAX on the Direct Manipulation Hill,Separate development environment from runtime environment. Runtime environment: HTML/Javascript/CSS (AJAX) De

9、velopment environment: toolkit in another language Two approaches: thin and fat,Thin Client AJAX Approach,Example: Google Maps (pretend its a thin client app),A Grid of Images,Example: Google Maps,Sequence,Thin Client Pros and Cons,Simple programming: ignore the network All your code runs server-sid

10、e Programmers love it! Undo, behaviors, constraints: all possible! Scalability (server-side state, lots of requests) Slow feedback: network hop for each user action,Fat Client AJAX Approach,Example: Google Maps,Sequence,Wait a second,No AJAX calls involved in moving the map around! Mostly Javascript

11、. New image requests are synchronous Example AJAX call: adding an intermediate destination,Fat Client Pros and Cons,Scalable (client-side state, fewer HTTP calls) Fast feedback Undo, behaviors, constraints possible but undo more complex than on the desktop More complicated: network-aware, distribute

12、d,Example AJAX Toolkits,Google Web Toolkit: Fat Client Write in Java, compiled to Javascript Cappuccino: Fat Client Echo2: Thin Client Write in Java No HTML/CSS (proprietary stylesheet language) Echo3 (Java Beta): hybrid Thin widgets in Java Fat widgets in Javascript,So, is AJAX viable for RIAs?,Thi

13、n vs Fat AJAX?,Thin AJAX: Squeezed out Insufficient if interactivity matters Not as easy as an HTTP-oriented application Fat AJAX: How does it compare to plug ins? Developer adoption? Application philosophy?,Some Toolkits,GWT: A Toolkit,Laying out widgets in a container “panel” Events and handlers,/

14、 Create a Horizontal PanelHorizontalPanel hPanel = new HorizontalPanel();/ Leave some room between the widgetshPanel.setSpacing(5); / Add some content to the panelfor (int i = 1; i 5; i+) hPanel.add(new Button(“Button “ + i);,http:/ non-strict abstractions,Styling with CSS Directly embed Javascript

15、Raw HTML Direct DOM manipulation,private native voidputElementLinkIDsInList(Element elt,ArrayList list) /*-var links = elt.getElementsByTagName(“a“);for (var i = 0; i links.length; i+ ) var link = links.item(i);link.id = (“uid-a-“ + i);list.java.util.ArrayList:add(Ljava/lang/Object;) (link.id);-*/;,

16、http:/ A different philosophy,“When you program in Cappuccino, you dont need to concern yourself with the complexities of traditional web technologies like HTML, CSS, or even the DOM. The unpleasantries of building complex cross browser applications are abstracted away for you.”,http:/cappuccino.org

17、/learn/,Javascript as “assembly language”,http:/,Cappuccino vs GWT,Philosophical question GWT: RIAs that are part of of the web Cappuccino: RIAs deployed over the web Alternative to Flash/Flex,Finally,Recommendations,If youre serious about RIAs, climb the direct manipulation hill. Dont limit yoursel

18、f to Thin AJAX. AJAX sweet spot: Applications that are part of the web. AJAX is an implementation alternative for applications deployed over the web.,References 1,adaptive path ajax: a new approach to web applications. (n.d.). . Retrieved April 8, 2009, from http:/ wants to be the Microsoft of the W

19、eb at Ted Leung on the Air. (n.d.). . Retrieved April 8, 2009, from http:/ Web Framework - Build Desktop Class Applications in Objective-J and JavaScript. (n.d.). . Retrieved April 15, 2009, from http:/cappuccino.org/.Comparing the Google Web Toolkit to Echo2. (n.d.). . Retrieved April 9, 2009, from

20、 http:/ 2,Dare Obasanjo aka Carnage4Life - What Comes After AJAX? (n.d.). . Retrieved April 8, 2009, from http:/ Guide - Google Web Toolkit - Google Code. (n.d.). . Retrieved April 9, 2009, from http:/ Technical Overview | Echo Web Framework. (n.d.). . Retrieved April 8, 2009, from http:/ Tutorial |

21、 Echo Web Framework. (n.d.). . Retrieved April 8, 2009, from http:/ 3,Echo2 versus GWT The Register. (n.d.). . Retrieved April 9, 2009, from http:/www.theregister.co.uk/2006/08/24/echo2_framework/.Feigin, B. (n.d.). Cappuccino and Objective-J. Retrieved from http:/www.cs.cmu.edu/bam/uicourse/830spri

22、ng09/Benjamin%20Feigin%20-%20Cappuccino.pptx.Following up on “The Microsoft of the Web” at Ted Leung on the Air. (n.d.). . Retrieved April 8, 2009, from http:/ (n.d.). . Retrieved April 8, 2009, from http:/www.openlaszlo.org/whitepaper/LaszloWhitePaper.pdf.,References 4,Mesbah, A., & van Deursen, A.

23、 (2006). An Architectural Style for Ajax. cs/0608111. Retrieved April 8, 2009, from http:/arxiv.org/abs/cs/0608111.Tony C Shan, & Winnie W Hua. (2006).Taxonomy of Java Web Application Frameworks. In e-Business Engineering, 2006. ICEBE 06. IEEE International Conference on (pp. 378-385). doi: 10.1109/ICEBE.2006.98.,

copyright@ 2008-2019 麦多课文库(www.mydoc123.com)网站版权所有
备案/许可证编号:苏ICP备17064731号-1