开发平台的一点感触
在市面上接触了好多商用开发平台,有普元EOS,金福瑞的UCML,起步的X3等等,感觉有一些共通的问题:
1.增加学习成本
2.开发时,受平台约束较大
3.无法发挥程序员自己的优势,遇到特殊的需求就傻眼,成了机械的代码工人
所以就以上弊端我想说一下我的思路:
平台一定不能是紧耦合的,他应该是有一些在各个专业领域的组件结合而成的,如工作流、报表、持久层等等,而这些都可以作为单独的中间件存在,每一个中间件都有自己完备的文档说明,用户可以单独使用,也可以整合使用,但是必须符合平台的框架,而平台的核心就是基于自己的思想实现的框架,如平台封装的API和方便操作的IDE。
API应该是平台框架的实现,包括方便调用工作流、报表的API、持久层实现;而IDE则是方便快速使用API的工具,以提高开发效率。因此只要有好的API,就能开发平台,但是如果没有工具开发起来可能有点慢,作为一些思想比较自由的开发者,会觉得工具收的限制较多,他们更倾向于选择直接code,而作为初学者,或者比较懒的开发人员更多的会用各种工具来开发,但是这里有一个问题就是在面对特殊需求时,只会工具的开发者将束手无策,而平台封装的API才是真正的实现手段。
以上这些才是将各个业务组件紧密联系起来的东东。有人说框架变了怎么办?是的,如果有改变框架的话平台那么平台将无法使用,或者说不能用的很顺手,因此这个框架是需要花费学习成本的,但仅此而已,而且平台应该采用比较主流的框架,让开发者看起来非常的熟悉以降低这一部分的开发成本。