国庆长假没有着落啊,泪奔中,闲来无聊,就继续在家中上上网,听听歌,打打球。打发一下无聊的时光。昨天钓鱼去了,哈哈,收获不错,第一次钓鱼,第一杆下去就是一条不能塞牙缝的小鲫鱼。钓了一个下午,人晒得和非洲人一样。一身通红,才钓了6条丁点大小的鱼,o(︶︿︶)o?唉·····················背。
回家继续看了GWT,很 COOL 的一个框架,Google 公司的产品。仔细翻看一下,是一个很 JAVA 的框架。如果有 Java 的朋友不太会前端 UI,又觉得 YUI,Ext,Backbase 等这些个框架太难搞的话,可以尝试下这个。
总体上来说 GWT 和 Java 的 Swing 编程风格非常类似,也是有恶心的布局,事件监听器注册(做过Java的应该都知道 T_T)不过好在 Google 对 Eclipse 有一个不错的插件支持,看起来和 .Net 的 Vs Studio 200x 差不多,直接拖拽,不过双击并不能编程哦。需要自己找到 Widget 对象,并且绑定时间句柄。
对于前端生成的 JavaScript,CSS 代码都经过压缩,HTML 默认生成对 JavaScript 文件的映射,需要生成的XML中配置相应的JavaScript生成库的依赖关系,方便页面调用。也就是前端工作中需要的附加CSS和JavaScript。
JSNI 是 GWT 借鉴了 Java 中的 JNI 的概念对于 GWT 来说,浏览器就是他的底层平台,GWT 有时候需要直接调用 JavaScript 来执行一些功能,或者需要使用第三方库,在GWT中的一些底层操作就是使用JSNI编写的。这个东西,应该尽量避免,直接使用 JavaScript 编写貌似会存在一些问题,比如,跨平台和内存回收问题。
好了,研究正在继续。。。。先写这么多吧。
继续研究了GWT-RPC,Ajax,以及控件,书里面的例子写的都很细,很容易让人理解,说到底还是 Java 那一套的东西,由于整个框架和 Java 的结合异常紧密,实现自定义控件什么的也是异常的简单,几乎没有什么很复杂的例子,两下就搞定,对于自定义控件来说,我只能用一个强大来形容。
接下来是 Ajax 的列子,确实和书中所说的一样,使用GWT-RPC在效率上会比Ajax原生的程序在大批量数据处理上占有优势。书中的例子使用了许多JDK的新特新,o(︶︿︶)o 唉,没读书就是吃亏啊。有些例子很晦涩看不懂,请教了群里的哥们,多多少少没有绕晕,但是还是处于一个很迷糊的状态。
按照书上的例子,做一个小游戏。哈哈,不错,成就感出来了,但是确实,对GWT里的东西,不懂的还有太多。
总结:
总的来说,GWT是一个很NICE的框架,很 Java 的框架。对于图片缓存,前端优化,跨浏览器上都有不错的处理,通过 Java 来生成的前端程序代码。与 Java 的结合性方面毋庸置疑,但是由于全部都是使用 Java 生成的代码,所以在前端看来很难改。JSNI 虽然一些方法可以修改底层封装的函数,但是风险实在是太大。并且对网页 SEO 的支持很不理想(所有的界面都是通过 Java 生成)。应该对于 MIS 系统的话,还是有一定的使用价值,相对来说,组件库很全,最重要的是速度上相对 ExtJs 有完全的优势。好吧,研究告一段落。过一阵子做一个小app部署到 Google app 上吧 。