论坛首页 Web前端技术论坛

Openlaszlo编程规范(二)

浏览 3589 次
精华帖 (0) :: 良好帖 (0) :: 新手帖 (0) :: 隐藏帖 (0)
作者 正文
   发表时间:2007-04-28  
新整理了一些,内容不算多,希望能对大家有用,尽管我也未能按照规范来做,但是规范的存在依然有意义。

Openlaszlo编程规范(第二部分)
2007/04/24

Openlaszlo编程规范第一部分主要侧重与基本的编码习惯和解决性能问题,对于解决复杂应用的编码设计问题涉及不足,本文则主要阐述这方面的内容,并揭示一些openlaszlo开发的高级主题。

1.透彻理解openlaszlo开发的核心思想:
a)完全基于组件的应用:整个应用是由多个组件构成而不能单纯由标签构成
b)事件驱动运行:组件之间的通讯由事件负责
c)数据驱动视图:针对数据而不是直接针对视图进行编程

2.尽量让减少canvas内的视图数目
这里的视图指的是自定义组件,也是整个应用的各个组成部分(portlet),有几个部分就应该有几个组件,绝对不应该在应用(canvas)内出现view标签。

3.充分运用event的功能
组件之间的交互(通讯)最好的途径就是event,而且是自定义的带组件信息的event,自定义的event解耦了组件之间的依赖,让整个应用变得可维护、可扩展。


4.针对data编程而不是针对视图编程
按照传统的web开发思想,总是习惯来刷新页面元素来达到更新视图的目的,但是在以数据为中心的RIA应用中,开发者所要做的是先想到视图后面的数据,先来改变数据,以达到改变视图的目的。


5.不要作偷懒的开发者
能独立成组件的部分就作成组件,而不能认为它不必要或者不是为了重用,这样做虽然工作量大了些,但是越到了项目的后期,尤其是需求变更时,就会发现,早期的努力是值得的。

6.不要忽略清理工作
使用过的变量,在操作结束时就应当立即清空,否则会引起很麻烦,会导致bug的产生,尤其是基于modaldialog的应用。

7.不要一次初始化所有的视图
如果初始化界面中不显示的内容,尽量让它不初始化,方法是:initstage="defer",这样做的好处是大大减少应用初始化的时间,只有在使用时才进行初始化,方法是:targetview.completeInstantiation();

8.组件内不应出现与canvas相关的对象或者属性
这个符合组件的封装性和独立性,如果出现的话将造成应用程序的紧密耦合,组件也就不能称之为组件了,除非绝对有必要引入canvas内的全局属性,比如鼠标位置等等。

9.遵守openlaszlo官方的Best_practices:
http://wiki.openlaszlo.org/Best_practices

10.慎用新版本尤其是4.0
根据官方的releasenote来看,swf&dhtml版本的应用性能比较差,而且大部分lps3.3组件都不能在4.0版本上使用,新版本的成熟还需时日。

论坛首页 Web前端技术版

跳转论坛:
Global site tag (gtag.js) - Google Analytics