GWT实际项目中需要遵守的一些Patterns和Rules

来源:互联网 发布:淘宝账户冻结怎么解冻 编辑:程序博客网 时间:2024/04/28 06:36

新项目的UI部分用到了GWT技术,所以就花了一些时间对GWT进行了一下研究,也接受也一些培训,下面就把培训的和学习的内容进行一下总结,希望对使用GWT的朋友有所帮助。

 

关于GWT官网上提供的Tutorials:

      官网上的教程是不适合重用和大型项目开发的,不是实际项目的best practices.

 

GWT开发中需要注意的问题

      1. 如果不注意的话,GWT的client端会变得非常臃肿,因为cilent端的所有东西都是转化为javascript的,所以要时刻考虑如何保持瘦client端

      2. Think in Javascript, 因为一切归于javascript,所以在开发时候就应该考虑到你的代码转化为javascript后会是什么样的效果,包括数据。

      3.  保持客户端数据最小化,不要大量cache数据在客户端。否则开发复杂UI的话会大大增加浏览器负担。

      4.  保持你的业务逻辑在服务端,这样会使你的应用易于维护也有助于trouble shooting.

      5.  在服务端做数据校验, 这点在以前的blog里面已经提到过了。

 

GWT开发中需要follow的一些patterns 和 rules(使用于我们项目,供大家参考)

      1. 每个module使用一个control panel来控制widget之间的交互。 其他所有的交互和消息都需要通过control panel和event bus进行。

      2. 使用event bus来进行模块中不同对象的交互。

      3. 项目按照模块分为不同的module, 每个module为一个单独的war, 模块之间的信息传递依靠session 变量来进行(我们使用WebLogic的shared session服务来支持session共享)。

      4.  不使用hardcode字符串来标示label, message等内容

      5.  不适用inner class, GWT的在线教程使用了inner class,为了更易于debug, source control和重用,项目不允许使用inner class.