MFC框架学习有感

本文探讨了MFC的doc/view框架优缺点,指出其虽然便于快速搭建基础应用,但复杂的架构和流程绑定限制了扩展性。文章还讨论了面向对象编程的特点以及流程组织方式,并建议对于高度定制需求的应用考虑其他框架。

1、学习了一段时间的MFC的doc/view框架,深有感触,个人来浅谈下自己的看法吧。

优点:  可以让初学者快速的建立一个应用程序,而且这个应用程序所有的基本功能都已经具备了,你可以很容易的开发一个记事本啊、绘图工具什么的,比较快速。

缺点: 这个也是我重点要说的

架构相对来说还是太复杂了,你如果真正要驾驭doc/view框架,你必须精通深入了解doc/view框架。不是说其他框架要精通就不用深入了解框架了,而是MFC的这套框架太依赖于内部实现了,基本上内部实现的每一个步骤都可以被用户进行复用,而且还是比较要经常用到的复用。这样导致的直接结果是用户必须对这个框架的每个细节都比较清楚。一句话框架的用户接口不集中,太分散,不明显。  这一点的根源是他的设计思想: 各个模块均匀分散化,没有主要模块之分。导致各个模块都很重要,都在承担一个重要职责,真正开放一个属于自己流程的程序基本上就是要对MFC的流程要很熟悉。

说白了,MFC就是流程化非常严重的一个架构,不容易扩展,内部组织太紧凑了。  而且MFC将面向对象编程的特性表现得淋漓尽致,那就是 面向对象编程有一个致命的对初学的开发者不利就是:过程淡化。 面向对象编程里面基本过程已经被分到了各个类中,只有在类中才能体现出流程的一个部分。 这样的直接结果是 流程的高度可组织灵活化,但是同时也曝露出了一个大的思想bug,流程可以被外面制定化,外面可误导类进行错误的行为。

总而言之,说白了,流程孕育在了MFC doc/view框架中,文档又说得不够明白,真得很容易走进误区。qt倒是可以拿来试试,看能不能替代掉doc/view的框架。 这个框架为了实现MVC的三层架构,牺牲了效率,制造出了很多复杂流程和代码,特别是消息的杂乱化,太明显的缺点了。

下面我总结下MFC的优势和缺点

优点: 编写简单程序简易

缺点: 架构流程绑定过死,视图消息发送交织在一起,明显的是 扩展性和保密性形成一个非常头痛的问题。 如果要定制自己的流程,简易不要使用doc/view框架

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值