C/S简易UI框架开发总结(3)

前面的例子可能太具体了,那么希望从从下面的图上看明白框架收箱类与实际UI元素的对应关系。
 2011031122320694.png
Workbench是主窗体,Workbench中的手风琴菜单是业务功能的全集,因此通过Folder拼装(详细情况参照C/S简易UI框架开发总结(2)关于Folder的介绍)好的业务功能可以有用户随时触发,有系统自动解析并调用相应的功能完成对用户请求的相应(可能是显示一个View或者其他动作)。
View(GridView)与Workbench类似,通过定义好的EntityControlHost完成CRUD功能,由于每个实体CRUD的功能基本逻辑是一样的,因此除了有特殊需要外,系统会自动通过设置EntityControlHost的DataSource和State完成实际业务实体的CRUD的UI调度部分,而数据存取部分已在EntityControl中定义好,简单反射就可以完成相应的数据业务操作,同时此处不需要对DAL/EL或者Service层的强依赖。而对于有特殊要求业务,可以自己扩展EntityControl和EntityControlHost完成。
View也可以是任意用户控件,比如一个地图、一个文件编辑器,当然具体的业务需要在控件内完成。而调度过程完全一样,显示样式也与GridView等已定义好的View无差异。
在EntityControlHost和与其相关的View(GridView)中,会同时出现相同的命令按钮,比如保存、关闭、审核、删除等。其中View中的命令按钮会自动完成与主窗体的合并,而EntityContolHost不会,这样可以更有效的保持界面风格和操作风格的一致性。
下面是类图,从VS导出来的,大家将就看看吧。
 2011031122323196.png

 总结下架构的优点:
1、 狭义的快速开发(关注快速的UI和业务功能实现)
A 针对MIS类应用开发特性,对UI元素进行了抽象,并封装重复性强的部分,让使用者可以用更多的精力关注复杂业务,避免重复劳动,从而提升开发效率。
B UI元素的规范化,简单业务和业务零件的自动生成成为可能。(已有了部分CodeSmith模板)
C 字体、系统皮肤、颜色、快键等可以通过简单设置快速满足客户的个性要求。
D 框架可以让一般程序员快速的熟悉、适应,而后可以非常快速的完成他需要的功能,提升生产率。
 
2、 提升软件质量
A 每个层次的组件都有明确的规范化要求,使用者只要按需填空或重写相应方法即可,同时规范的调用层次和自动业务功能调度,可以有效提升软件质量。
B 框架可以大量减少使用者自己编写的代码,减少bug点,提升软件质量。
C 自动的日志和未处理异常处理机制,可以是后期维护更加容易。 
  
3、 提升界面的规范性
使用者在框架内开发的应用,遵循同样的界面规范,同样的操作方式。

其实缺点也很明显,比如使用上有一定的局限性,对于不熟悉的使用者没有培训的使用会是个噩梦,有些地方写的时候仓促,没有规划好,出现bug时有时候需要调整很长时间。

后面需要对几个部分进行改进:
1、EntityControl中实体和界面控件自动交互的过程,使用策略模式同时支持DataTable,DataSet,Datarow和强类型实体等数据源。
2、完善原来的插件机制,使他更加易用,并支持从xml文件和数据库获取插件。
3、原生支持自动更新(现在需要额外的应用)。
4、自适应界面边界在xp和win7,vista下布局差异。
5、..........    

 欢迎补充,谢谢大家。

转载于:https://www.cnblogs.com/winscale/archive/2011/03/11/1981850.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值