好文档就是一把金锄头!
欢迎来到金锄头文库![会员中心]
电子文档交易市场
安卓APP | ios版本
电子文档交易市场
安卓APP | ios版本

微软软件开发技术二十年回顾1985.docx

15页
  • 卖家[上传人]:m****
  • 文档编号:412385679
  • 上传时间:2023-04-20
  • 文档格式:DOCX
  • 文档大小:305.71KB
  • / 15 举报 版权申诉 马上下载
  • 文本预览
  • 下载提示
  • 常见问题
    • 微软软件开发技术二十年回顾1985-2006近20年来,随着技术和应用的变化、发展,微软的开发技术也历经变迁随着 微软新一代开发平台vista的发布,微软会把开发者引向何方?自Windows 1.0问世到2006年11月份,微软Windows操作系统已经走过了 它辉煌的二十一年沧海桑田一瞬间,让我们再次追随Windows的踪迹,了解微 软核心技术发展史,评析她当时所处的位置并展望其今后的发展趋势一、操作系统篇Win16 时代(1985〜1995)1985年11月,微软公司正式发布了第一代窗口式多任务系统 Windows 1.0,代表了 MS-DOS时代将逐渐终结,Windows王朝正式拉开了序幕该操作系 统的推出标志着PC机开始进入了图形用户界面(GUI)时代1987年12月9 日, Windows 2.0发布,但这个版本依然没有获得用户的广泛认同1990年5月22 日,微软推出Windows 3.0,由于在界面/人性化/内存管理 多方面的巨大改进,终于获得用户的认同1992年4月,Windows 3.1发布,在 最初发布的两个月内,销售量就超过了一百万份;至此,微软公司的资本积累/ 研究开发进入良性循环。

      随后,首次发布了 Windows 3.2中文版本不论是图形 操作系统的稳定性还是友好性,Windows 3.X都有了巨大的改进Windows 3.X 在界面人性化和内存管理上有了较大的改进:具备了模拟32位操作系统的功能, 图片显示效果大有长进,对当时最先进的386处理器有良好的支持另 外,这 个系统提供的对虚拟设备驱动(VxD)的支持,极大改善了系统的可扩展性1992年10月,Windows for Workgroups 3.1发布,标识微软公司吹响了进 军企业服务器市场的号角1993年,Windows NT 3.1发布,它是第一款真正面 向服务器市场的产品值得注意的是,在这个版本中,微软把主要的API改为 32位的版本Win32 时代(1995〜2005)1995年8月24日,微软推出具有里程碑意义的Windows 95这是微软开发 的第一个独立的32位操作系统,并实现真正意义上的图形用户界面从此,个 人电脑进入了普及化阶段另外,Windows 95是单用户多任务操作系统,它能够在同一个时间片中处 理多个任务,充分利用了 CPU的资源空间,并提高了应用程序的响应能力同时, Windows 95还集成了网络功能和即插即用功能。

      1996年8月,Windows NT 4.0发布,增加了许多管理方面的特性,稳定性 进一步提高同年11月,针对各种嵌入式系统和产品设计的Windows CE 1.0 发布这标志着微软的战线从桌面系统杀到了服务器市场,又转攻到嵌入式行业; 至此,微软帝国的雏形已基本形成 1997年11月, Windows CE 2.0发布1998 年 6 月 25 日, Windows 98 发布;与 Internet 的紧密集成是 Windows 98 最重要的特性1999年6月10 日, Windows 98 SE发布,以内置方式提供了Internet Explorer 5、Windows Netmeeting 3、Internet Connection Sharing、 对DVD-ROM和对USB的支持Windows 2000(Windows NT 5.0)Professional 于 2000 年年初发布,它是第 一个基于NT技术的纯32位的Windows操作系统,实现了真正意义上的多用户 从此,Windows操作系统进入商业用户市场Windows 2000包含新的NTFS文件 系统、EFS文件加密、增强硬件支持等新特性。

      2001年10月25 日, Windows家族中极具开创性的版本Windows XP面世 Windows XP具有全新的图形用户界面,整合了更多更实用的功能:防火墙,即 时通讯,媒体播放器,增强的即插即用特性Windows XP具有全面为中国用户 开发的中文技术及特性,能够全面满足中国用户在数字时代的需求2003年4月,Windows Server 2003发布这个版本对活动目录、组策略操 作和管理、磁盘管理等面向服务器的功能作了较大改进,对.NET技术的完善支 持进一步扩展了服务器的应用范围2004年9月微软发布Windows XP SP2Windows Vis ta(2006.11 〜)今年11月,微软新一代的操作系统Vista即将正式发布,它将会极大地改 变原有的Windows编程机制Vista生成器最终将跟以前的Win32 API进行分离,取而代之的是可管理的 WinFX,而WinFX将成为微软继DOS、Win16、Win32之后推出的第四代API据 外刊报道,以前利用Win32 API开发的软件,在微软承诺的维护期之后将不能运 行Win32 API历经Windows 95到XP,受到众多应用软件开发商的追捧。

      过去, 无论是最常用的字处理、电子邮件、即时通讯软件,还是专业的杀毒、ERP软件 等,大都利用微软提供的API进行开发微软提供了近7.8万个Windows API 以及大量的辅助开发工具,这种友好的服务极大地鼓励了无数程序员在微软平台 上创造各种应用软件但另一方面,微软又通过API “控制”了软件的开 发, 帮助自己成就了霸主地位如今,在Win32 API逐渐淡出人们的视野后,新一代 的API还能如微软设想的那样延续Win32时代的辉煌吗?微软已经看到了这些威胁所以,Vista的发行中配带了全新的WinFX同 时,微软的WinFX已经把繁杂的Win32 API减少到8千个左右,在.NET框架下 采用可管理代码编程模式,进一步减轻程序员的负担另外,WinFX还加入全新 的图形用户界面子系统Avalon、文件子系统WinFS和网络服务通讯子系统 Indigo,使得开发环境更加友好时势所趋,正如Win32取代DOS和Win16 一样, Win32 API也终将被WinFX所替代,而成为新操作系统中的“遗留物”据估计,在一段时间内,程序员还可以继续使用Win32 API开发应用程序, 但利用WinFX开发的程序并不向下兼容,只能在Vista平台上运行。

      另一方面, Vis ta操作系统带来的变化和WinFX开发者 框架迟早将会刺激开发者转向.NET 框架因此,作为Windows开发人员,应当尽早掌握.NET框架可管理编码的技 能以便应对在2008年全面使用WinFX时可能出现的种种问题二、API 篇随着Windows操作系统开始占据主导地位,开发Windows平台下的应用程 序成为人们的需要当然,这也为传统的DOS程序员提供了一种新的编程方法一 一种不受设备限制并由事件驱动的编程方法另一方面,Windows GUI的开发 迫使传统的DOS程序员的编程方法发生了变化当时,大多数DOS软件以过程方 式编写,即一个函数调用另一个函数,主程序始终处于控制之下, 而事件驱动 的编程模式使得程序放弃它们的全部控制权,等待外部事件发生并对外部事件作 出响应,以便将它们的函数全部提供给最终用户结果是,今天的Win32(当然 包括早期的Winl6) GUI程序的结构仍然与1987年时的结构相同图1展示了 Windows GUI应用程序的基本结构其中,每一个程序都包含一个进入点、主窗口创建、一个消息循环和 主窗口撤消此外,都有一个函数与主窗口过程相关联,称为窗口过程,它包含 用于处理系统事件和应用事件(如键盘输入、鼠标移动和点击、定时器报警、菜 单选择和按钮点击)的代码。

      在Windows程序设计初期,Windows程序员所能使用的编程工具唯有API(应 用程序编程接口)函数,这些函数是Windows提供给应用程序与操作系统的接 口,它们犹如“积木块”一样,可以搭建出各种界面丰富功能灵活的应用程序 所以,可以认为API函 数是构筑整个Windows框架的基石,在它的下面是 Windows的操作系统核心,而它的上面则是各种功能的Windows应用程序当时, 因为缺乏良好的Windows编程平台,程序员想编写具有Windows风格的软件, 必须借助API, API也因此而被赋予至高无上的地位相应地,程序员还必须熟 记 一大堆常用的API函数,而且还得对Windows操作系统有深入的了解随着软件技术的不断发展,在Windows平台上很快出现了很多优秀的可视化 编程环境(诸如VB、VC++、DELPHI等),程序员可以采用“所见即所得”的编程 方式来开发具有精美用户界面和强大功能的应用程序但实际上,要真正开发出 更灵活、更实用、更具效率的应用程序,必然要涉及到直接的API函数调用;对于比较复杂和特殊的功能来说,使用类库和控件往往难以实现,这时就需要采 用API函数来实现。

      提示】关于钩子技术Windows操作系统是建立在事件驱动机制之上的,系统各部分之间的沟通也 都是 通过消息的相互传递而实现的但在通常情况下,应用程序只能处理来自 进程内部的消息或是从其他进程发过来的消息,如果需要对在进程外传递的消息 进行拦截处 理就必须采取一种被称为H00K(钩子)的技术钩子是Windows操作 系统中非常重要的一种系统接口,用它可以轻松截获并处理在其他应用程序之间 传递 的消息,并由此可以完成一些普通应用程序难以实现的特殊功能钩子的 本质是一段用以处理系统消息的程序,通过系统调用,将其挂入到系统值得注 意的是,钩子技术成为许多种Windows软件的核心技术,例如屏幕抓词、垃圾 邮件过滤、软件界面高级定制等三、MFC篇Windows API是面向过程的接口,因此对于当时的编程技术来说,它是完美 无缺的但是,随着人们逐渐使用C++进行Windows程序的开发,迫切需要建立 与Windows API的面向对象包装的接口1992年,微软将Windows API开发成 为它的应用程序框架(AFX),后来该产品又演变成为目前的微软基础类库(MFC) 产品下图2展示了 MFC的顶级类层次结构。

      MFC为使用C++开发Windows GUI应用程序提供了 一个十分全面的基础框架, 它对以前的API进行了面向对象的科学包装,大大简化和加快了程序的开发Win95推出后出现在Visual C++ 4中的新版本的MFC 4.0使这个框架达到 辉煌时期,在4.2版本时达到鼎盛MFC框架中引入了一种适应当时开发需求的典型的文档-视图机制,从而大 大简化了程序开发当然,要掌握这些框 架结构绝非一日之功,其中还涉及到 部分COM及大量的宏技术也正由于这些方面,导致了业界对MFC的褒贬不一 但正如其它微软技术一样,这只能进一步促 进微软继续改进这种技术几十年 的技术积累已经奠定了 MFC的生存基础,即使Windows的Vista发布,MFC也不 可能退出Windows的舞台事实上,Vista之后的VisualStudio.NET仍将MFC 作为一个重要的组成部分,在Visual Studio.NET 2005中,MFC在C++中的位置 依然如故MFC的未来,应该不必担心,只要你深入考察.NET类库,你会发现, MFC的许多思想机制正悄然进入.NET新版的Visual C++.NET中MFC已经支持.NET开发了,而且MFC与ATL的协 作更趋于和谐。

      如今你可以在Visual C++.NET中综合应用M FC、ATL与.NET库 三者来开发应用程序,从而进一步增强C++开发的威力补注】ATL框架与WTL框架ATL即“ActiveX模板库”它不能单独工作,是设计与Visual C++ V4.2, V5.0,V6.0 —起工作的。

      点击阅读更多内容
      关于金锄头网 - 版权申诉 - 免责声明 - 诚邀英才 - 联系我们
      手机版 | 川公网安备 51140202000112号 | 经营许可证(蜀ICP备13022795号)
      ©2008-2016 by Sichuan Goldhoe Inc. All Rights Reserved.