快速开发与0代码开发理论及实践 (零):导读

才开通的博客,就惊喜地发现了某"快速软件开发平台“的google广告出现在页面上(google果然很智能,看不到的同学去http://www.extraction.com.cn/intro/hwgjpt.jsp,我也帮他作广告),看了一下,呵呵,人家比我能说。当然,好的方面是要吸取的,譬如下下步的工作计划就是加入WF的支持。

 

本系列讲完理论就会讲实践,所以有必要把当前的实践成果概述一下。引用第二篇的内容:

 

“归纳来说,目前我们应该能够:

一、从需求文档开始,首先分析出业务对象及其关联(继承关系和关联关系),如前文所述,还包括其属性的各种描述,对应设计领域模型。
二、利用开发工具,根据领域模型生成基于基础框架的业务系统。

    那么,这个刚刚生成的系统,都具备什么功能了呢?

    它应该已经可以以superadmin的身份登陆,并做如下工作:

     

    1. 进入设计模式,界面中一侧显示领域模型描述树:
    2. 可以利用便捷的方式(例如拖拽,把领域模型拖入菜单区域),构造菜单结构
    3. 可以直接在界面中(譬如说浏览器里)设计权限,权限的输入参数应该包括菜单项,人员各项属性(例如所属部门和职位,角色等),受控资源的各项属性等;输出应该包括针对特定的受控资源(菜单项,某全局或特定页面中的特定实体,特定实体的某特定属性列等等)是否拥有可读,可写的权限。顺带一提,这里的功能利用现有的规则引擎就能够很好的实现充分可定制的预定目标。
    4. 各种基础设施已经完备,除了上面提到的权限比较复杂之外,其他的日志,历史数据,异常管理,打印等公共功能都应已齐备。
    5. 每一个领域模型对应的界面,应该已经包含了增删改查的完整功能。所谓完整功能,就是应该已经包含了数据校验,并考虑到了关联实体在增删改查中的不同呈现(最简单的例子,对于一对多关联的关联实体,在增改界面中,应该已经存在一个针对该关联实体的可查询可分页多列显示的多选控件),还有查询也应该已经包含了针对各个字段(包括关联实体的显示字段(display name),具体哪个字段是显示字段,在领域模型描述信息中描述)的设计优良的查询条件输入功能(例如针对文本,数字,日期和选择列表的不同呈现),排序等更应该已经不在话下。
    6. 界面可以在很大程度上直接在浏览器中自定义,例如用拖拽的方式决定列表的列顺序,表单的控件顺序,还有关联业务实体构造复杂界面的拖拽拼接(例如形成左边区域是父实体,右边区域是一个Tab容器,每一个Tab中是左边选择的父实体对应的某类子实体的这种较复杂界面)。
    7. 另外一点很重要,如同一直强调的,所有的这些已经自动生成的代码都应该尽可能的少,除了业务对象(领域模型)描述信息,实体类(根据ORM框架的选择,可能还有ORM框架配置信息文件)之外,其余的从前端到后台的各个层次的功能应该都通过读取领域模型信息来实现。
    8. 还有一点与上面的相关,整个系统的代码架构应该便于基于生成代码基础之上进行更改,不能出现为了增加某实现而需要把已自动生成的其他功能完全废弃的情况。

     

    ”。

     

    写博果然是件很辛苦的事情,如果不是为了找工作混口饭吃还真的缺乏动力。后续系列会抓紧时间写,但如果在此之前有公司或者组织或者业界同仁对我描述的东西有疑问或者兴趣,欢迎联系我。当然,有板砖要拍也是欢迎的。代码和人都一样,发现bug就可以fix,怕的是不知道bug在哪里。

    posted @ 2010-06-23 15:00  OODD  阅读(311)  评论(0编辑  收藏  举报