dojo设计使用原则

这里我只说如何去规划或者从抽象的角度使用dojo。不来说明如何使用具体的dojo组件,最后谈谈自己的感受。

第一、要使用它公布的API,尽量不使用_开头的API。因为这里有个约定以_开头的一般情况下是组件内部使用的API,要用请搞明白人家为啥这么用。(都明白私有的东西你要当作公开的使用是会出现一些你都不确定的问题的。或者可以认为是违背作者意图的);

第二、不要去使用原生js。有时候可能图省事会有这种想法。可是要明白dojo是把js包装过的。它确实避免了一些问题的出现。如果使用原生的js那么就会破坏这种生态平衡;

第三、如果非要修改样式文件那么请按照dojo提供的样式的标准(其实就是参照dojo现有的样式)来修改。否则你会出现异常问题(也可能不出现。不过总之这么做不好,因为你破坏了dojo的完整性)。

继承的使用(js是基于对象的编程语言不是面向对象的这里不做描述,只讲继承要做什么)

请扩展其原有组件的功能,请不要随意的在子类中关联其他组件功能,例如在组件中绑定其他组件的刷新接口。

继承的这个原则并不是一个最优的解决方案。但是初衷是增加代码可读性。如果实在需要绑定其它组件的接口的话,请使用中介者模式来实现,同时使用可以清楚标识文件名和注释来描述这种关系。如果是自己写着玩或者只有一个开发人员。这个原则就不用遵守了(如果再要修改或者其他人接手的麻烦就大了)。

面向切面编程

其实我觉得面向切面编程是面向对象的语言的概念(或者你可以理解为java)。因为js供开发发挥的余地的确不多。并且配置这些事件或者关联的事件机制并不是一个xml而是一个js(或者其他方式吧。我想表达的意思是它没有j2ee技术那样标识面向切面编程的配置文件那么清晰)。

感悟吧,技术路线都是为解决现实世界的问题而存在的,永远都不要以为先进的就是最好的,我认为合适的就是最好的。如果要选用dojo首先你要回答下面的几个问题

1.你需要一个重型的js类库框架么?

首先着眼点在类库和框架。类库表示了dojo的面向对象特性,框架标识了dojo是一个界面交互的解决方案。所以这两点要求程序员的素质和基础知识要扎实。

2.界面用户交互体验是不是要求很好或者一致?

因为dojo封装了大部分的界面元素。同时如果没有封装的话扩展起来也是很方便的。开发者只要引用就能保证见到的组件操作基本一致(这里没说绝对是因为有些功能没有使用或者使用了是由开发者决定的,但是这些接口已经存在了,能干什么开发者很清楚,那么也容易让客户产生操作习惯);

3.dojo是一个缺乏中文资料的框架,项目组能接受么?

4.dojo也并不是一个身后有尾巴头上有犄角的超级框架,它也是有bug的。你要持续看看一些dojo的bug跟踪的官方网站寻找解决方案。如果没有怎么办?自己扩展?

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值