一起学MFC(一) MFC由来

   在很早之前,编写Windows平台下的窗口应用程序主要是通过 Microsoft提供的Windows Software Development Kit(WIN SDK)来编写,所使用的语言是C语言。但是,这种编写窗口程序的方式很复杂,它不仅要学习有关操作系统的一切,还要熟悉SDK包所提供的成百上千个不同的WIN API函数接口。

   所以,当时学习Windows程序设计的人,入门门槛很高。而且,用SDK方式写Windows程序效率很低,不太利于写更为复杂的商业应用软件。

  为此,需要一种编程思想来支持这种复杂程序的设计,面象对象的编程思想正适合这种的一个需求。C++来取代C的方式,成为当时专业Window程序员的首先语言。通过类库来抽象SDK API,并将窗口和其他对象的基本操作封装在可重复使用的类中,使的Windows编程变得简单了。

   类库是简化这种复杂性的关键,当时的类库有几种。其中,最为著名应用范围最广的是MFC类库。它是由Microsoft编写提供的,全名是Microsoft Foundation Class。

   下面简单谈一个关于MFC的有趣的小故事。

    在1989年,微软成立了应用程序框架技术开发组(application framework technology development group),又叫AFX组。这个小组的任务是为Windows应用程序开发人员创建C++与面向对象工作(据说AF听起来不够强大,所以他们在后面增加了X,X并没有什么含义)。小组成员都是精选出来的经验丰富的微软开发人员,他们各自有不同的背景。有一些来自设计并实现微软应用程序共享组件的小组,另外一些来自原来的Windows和Pressentation Manager组,还有一些来自应用程序划分组。AFX组的宗旨是:"使用最新的面向对象技术来为市场上编写最先进的GUI应用程序的程序员提供工具与库。"

    不幸的是,第一个应用程序框架原形被证明与Windows无关。经过一年的工作,AFX组又创建出一个新的应用程序框架,这个框架完全包含了Window系统,图形子系统,用户控件体系结构,对象数据库,一个泛化的容器层次结构和一个垃圾回收策略!但是当AFX小组试图使用这个框架来写应用程序时,他们发现这个框架太复杂,与Windows本身有太大区别。所以,正如sinofsky所报告的,他们放弃了这个原型,并将他们的宗旨修改为:"AFX将向程序员传递面向对象解决方案的力量,使他们能用C++搭建出世界级的基于Windows的应用程序。”直到1992年MFC1.0的发布。

    好了,谈得太远了哈。今天到此。

  

  

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值