信息管理系统开发框架设计(五) - MVC框架

MVC是很流行的的一种web开发模式。通过对不同功能的划分,可以分块开发,让前端设计人员专注于界面开发,让后端开发人员专注于业务对象的开发。为了将前端界面与后端业务对象解耦,于是引进了控制器来连接前端用户界面与后端业务对象。

其实这种开发模式也可以运用到CS方案的开发中。让用户界面模块专注于界面的设计,至于对用户的请求做何种响应处理,那是业务对象干的事情,控制器负责监听操作界面的用户请求并转发给对应的业务对象,或者将业务对象的数据绑定到用户操作界面上。

MVC概念:

M:即Model的缩写,指业务对象,与该业务对象相关的处理都需要封装进来。

V:即View的缩写,指用户交互界面,在Delphi中我们可以简单的替换为TForm(TFrame)。

C:即Controller的缩写,字母意思是控制器,就是控制Model跟View,将从View监听的用户请求发送给Model,由Model进行处理然后返回处理结果给View呈现给用户。

要以MVC模式来做开发,那么我们就必须在开发框架里加上MVC的基础架构来支持及简化后续面向业务模块的开发工具:

  • 封装model的基础功能,与数据库交互<加载/更新数据,获取model列表,保存前数据校验接口>;
  • 视图的基础功能(界面风格之类的控制等);
  • 控制器的基础功能(监听view里的用户请求并做响应,提交用户输入给模型做校验或保存等)。

  ef-framework将MVC的基础实现整合进来,在开发具体的业务模块时,只需要简单的实现业务相关的model,View及Controller,然后向框架注册Controller即可。

有的系统采用插件模式,由系统启动时自动发现指定目录下的插件文件,然后全部加载进来;这种插件管理模式对于面向专业级的软件是可能的,但是信息系统因为面向企业内部众多水平不一的使用者,再加上严格的模块权限控制,插件管理模式就让用户端系统的实现变得复杂。

其实换个思路,用户权限保存在数据库中,那么模块相关的信息放入数据表中,然后在客户端实现一个model类TModule来管理模块信息,这样也很容易实现用户权限的管理。

我在ef-framework框架采用了bpl的管理模式,运行业务模块时需要动态加载bpl,在关闭业务模块的视图后也需要卸载bpl。

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

爱编程的老五

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值