网络编程 | 站长之家 | 网页制作 | 图形图象 | 操作系统 | 冲浪宝典 | 软件教学 | 网络办公 | 邮件系统 | 网络安全 | 认证考试 | 系统进程
Firefox | IE | Maxthon | 迅雷 | 电驴 | BitComet | FlashGet | QQ | QQ空间 | Vista | 输入法 | Ghost | Word | Excel | wps | Powerpoint
asp | .net | php | jsp | Sql | c# | Ajax | xml | Dreamweaver | FrontPages | Javascript | css | photoshop | fireworks | Flash | Cad | Discuz!
当前位置 > 网站建设学院 > 网络编程 > Java
Tag:注入,存储过程,分页,安全,优化,xmlhttp,fso,jmail,application,session,防盗链,stream,无组件,组件,md5,乱码,缓存,加密,验证码,算法,cookies,ubb,正则表达式,水印,索引,日志,压缩,base64,url重写,上传,控件,Web.config,JDBC,函数,内存,PDF,迁移,结构,破解,编译,配置,进程,分词,IIS,Apache,Tomcat,phpmyadmin,Gzip,触发器,socket
网络编程:ASP教程,ASP.NET教程,PHP教程,JSP教程,C#教程,数据库,XML教程,Ajax,Java,Perl,Shell,VB教程,Delphi,C/C++教程,软件工程,J2EE/J2ME,移动开发
本月文章推荐
.tomcat配置技巧(转载).
.用java 实现 http 的断点续传.
.Weblogic EJB 学习笔记(2).
.用Java生成文本文件(收集).
.在Web工程中实现任务计划调度.
.XML文件DTD路径解析——in Eclip.
.JBuilder2005 Struts深度体验之新.
.使用JavaMail实现收发电子邮件功.
.JAVA基础知识(6).
.Java 数据类型 和 与String之间的.
.软件开发规范(2).
.Java面试陷阱第三波.
.使用Log4j进行日志操作.
.深入了解Java 5.0的垃圾收集.
.设计和优化 Microsoft Windows C.
.apache的Jakarta-ORO库 的正则表.
.JDBC 概述(五).
.J2ee学习流程(转).
.论如何成为有高尚职业操守的提问.
.从java内核看性能分析与设计.

gwt和echo2的对比

发表日期:2008-1-5


    综合对比:

    1. 两个都是非传统的b/s框架,都是用AJAX来构造动态网站。编程过程都和SWT/Swing差不多。

    2. 区别在于一个运行于客户端,一个运行于服务器

    3. gwt把代码编译为Html+js, 目前只支持Java1.4规范。echo没这限制。

    4. gwt可以运行于任何web server, echo则需要传统的servlet容器。(意义不大,现在哪有静态网站啊,后台交互肯定还是需要的)

    5. echo2的客户端引擎通过ajax提交用户动作,对用户界面增量更新。

    性能:

    1. gwt的页面logic都在浏览器上,所以很快。但是假如需要和中间层交互,就会碰到同样的网络问题。

    2. echo2的代码跑在server上,所以所有的交互都需要反馈给server.echo2在设计上尽量减少这种交互,比如客户对文本的修改都是延迟发送到服务器,而服务器只发送页面的变化部分到浏览器。

    3. gwt应用被编译成一个页面,虽然应用的复杂化,这个编译结果也随之变得可怕……(个人认为随着编译器的发展,不同的页面可以做到lazy load)

    4. echo的js模块是lazy加载到浏览器的,界面上呈现哪些控件才去加载并且缓存对应的js模块。发送到客户端的不是逻辑代码,只有用户状态(个人认为echo2现在过于lazy,导致初始化阶段多次访问server加载一些基本的js模块,应该揉合到一起。另外,因为echo逻辑代码在服务器上,相对来说可以防止盗版)

    中间层和数据访问:

    1. 假如要访问数据,gwt还是要回到传统的模式,通过rpc访问servlet.gwt提供把远程服务透明的包装起来,中间传送pojo. 尽管包装了,中间的安全和和校验还是必须要开发者考虑。

    2. echo支持SOA,但是不必须。大多数情况下安全不是问题,因为数据和逻辑都不会暴露到浏览器上。(以前给echo提过建议,浏览器用户很可能去模拟一个被disabled按钮提交,这种问题现在无需考虑)

    运行环境:

    1. gwt运行在浏览器上,并非所有的java类都能编译成js. gwt现在只支持java.lang/java.util下面的一个子集(版本 1.0.21):27 classes, 11 interfaces, and 18 exception(这让人想起了j2me开发)。 一些现有的类库就别想了。

    调试:1. gwt调试需要一套和运行时完全不同的环境:HOST模式,代码作为真正的java在运行。(个人认为这里因为是纯java调试,比echo的web调试要稍微方便一些。做单元测试也更方便些,但不是对最终browser的测试)

    2. echo调试就是传统的servlet调试。

    授权:

     1. gwt的api是开源的,编译器和host模式浏览器不公开。整体来说:free. (个人认为,假如要扩充gwt可能会碰到麻烦)

    2. echo2开源,mozilla public license. free(个人认为:echostudio也free就好了。nextapp究竟要生存)

    应用:

    1. gwt可以嵌入传统的静态html, 也能作为一个完整应用。做大应用要考虑编译后的重量、本地化、库支持等问题(关于18n, 可以在gwt支持论坛上搜索i18n,似乎已经有方案)

    2. echo2成熟得可以适用各种应用,但是不能作为静态页面的一部分使用。(有点吹牛,在大访问量下,服务器的压力肯定不会小)

    个人结论:

    1. 开发方式都很优秀,用纯java开发b/s

    2. gwt可用于大型网站,把压力转嫁给客户端。

    3. echo可用于快速开发复杂的企业应用,把压力丢给服务器(企业里面最清闲的就是前台和服务器)

    两个产品都很优秀,GWT是2006年的IT飓风,波及后面几年。M$的日子要难过了, Google的确是个令人头痛的对手。


上一篇:osworkflow部署描述 人气:592
下一篇:Java实现SOA的标准途径 人气:1184
浏览全部Java的内容 Dreamweaver插件下载 网页广告代码 祝你圣诞节快乐 2009年新年快乐