当前位置: 首页 > news >正文

全网营销建设网站全国建筑资质查询服务平台

全网营销建设网站,全国建筑资质查询服务平台,建网站怎么上线,网站建设问题新闻资讯今年11月#xff0c;微软新一代的操作系统vista即将正式发布#xff0c;它将会极大地改变原有的windows编程机制。近20年来#xff0c;随着技术和应用的变化、发展#xff0c;微软的开发技术也历经变迁。随着微软下一代开发平台vista即将发布#xff0c;微软会把开发者引向…今年11月微软新一代的操作系统vista即将正式发布它将会极大地改变原有的windows编程机制。近20年来随着技术和应用的变化、发展微软的开发技术也历经变迁。随着微软下一代开发平台vista即将发布微软会把开发者引向何方?   自windows 1.0问世到今年11月份微软windows操作系统已经走过了它辉煌的二十一年。沧海桑田一瞬间让我们再次追随windows的踪迹了解微软核心技术发展史评析她当时所处的位置并展望其今后的发展趋势。   一、 操作系统篇   win16时代(19851995)   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时代(19952005)   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 sp2。   windows vista(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平台上运行。另一方面vista操作系统带来的变化和winfx开发者 框架迟早将会刺激开发者转向.net框架。因此作为windows开发人员应当尽早掌握.net框架可管理编码的技能以便应对在2008年全面使用 winfx时可能出现的种种问题。  二、 api篇     随着windows操作系统开始占据主导地位开发windows平台下的应用程序成为 人们的需要。当然这也为传统的dos程序员提供了一种新的编程方法—一种不受设备限制并由事件驱动的编程方法。另一方面windows gui的开发迫使传统的dos程序员的编程方法发生了变化。当时大多数dos软件以过程方式编写即一个函数调用另一个函数主程序始终处于控制之下 而事件驱动的编程模式使得程序放弃它们的全部控制权等待外部事件发生并对外部事件作出响应以便将它们的函数全部提供给最终用户。结果是今天的 win32当然包括早期的win16gui程序的结构仍然与1987年时的结构相同。图1展示了windows gui应用程序的基本结构。 1.windows gui应用程序的基本结构。        其中每一个程序都包含一个进入点、主窗口创建、一个消息循环和主窗口撤消。此外都有一个函数与主窗口过程相关联称为窗口过程它包含用于处理系统事件和应用事件(如键盘输入、鼠标移动和点击、定时器报警、菜单选择和按钮点击)的代码。   在windows程序设计初期windows程序员所能使用的编程工具唯有api(应 用程序编程接口)函数这些函数是windows提供给应用程序与操作系统的接口它们犹如“积木块”一样可以搭建出各种界面丰富功能灵活的应用程序。 所以可以认为api函数是构筑整个windows框架的基石在它的下面是windows的操作系统核心而它的上面则是各种功能的windows应用 程序。当时因为缺乏良好的windows编程平台程序员想编写具有windows风格的软件必须借助apiapi也因此而被赋予至高无上的地位。 相应地程序员还必须熟记一大堆常用的api函数而且还得对windows操作系统有深入的了解。   随着软件技术的不断发展在windows平台上很快出现了很多优秀的可视化编程环境 (诸如vb、vc 、delphi等)程序员可以采用“即见即所得”的编程方式来开发具有精美用户界面和功能强大的应用程序。但实际上要真正开发出更灵活、更实用、 更具效率的应用程序必然要涉及到直接的api函数调用;对于比较复杂和特殊的功能来说使用类库和控件往往难以实现这时就需要采用api函数来实现。   【提示】关于钩子技术   windows操作系统是建立在事件驱动机制之上的系统各部分之间的沟通也都是通过消 息的相互传递而实现的。但在通常情况下应用程序只能处理来自进程内部的消息或是从其他进程发过来的消息如果需要对在进程外传递的消息进行拦截处理就必 须采取一种被称为hook(钩子)的技术。钩子是windows操作系统中非常重要的一种系统接口用它可以轻松截获并处理在其他应用程序之间传递的消 息并由此可以完成一些普通应用程序难以实现的特殊功能。钩子的本质是一段用以处理系统消息的程序通过系统调用将其挂入到系统。值得注意的是钩子技 术成为许多种windows软件的核心技术例如屏幕抓词、垃圾邮件过滤、软件界面高级定制等。  三、 mfc篇   windows api是面向过程的接口因此对于当时的编程技术来说它是完美无缺的。但是随着人们逐渐使用c进行windows程序的开发迫切需要建立与 windows api的面向对象包装的接口。1992年微软将windows api开发成为它的应用程序框架(afx)后来该产品又演变成为目前的微软基础类库(mfc)产品。下图2展示了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之后的visual studio.net仍将mfc作为一个重要的组成部分在今年的visual studio.net 2005中mfc在c中的位置依然如故。mfc的未来应该不必担心只要你深入考察.net类库你会发现mfc的许多思想机制正悄然进入. net。   新版的visual c.net中mfc已经支持.net开发了而且mfc与atl的协作更趋于和谐。如今你可以在visual c.net中综合应用mfc、atl与.net库三者来开发应用程序从而进一步增强c开发的威力。   【补注】atl框架与wtl框架   atl即“activex模板库”。它不能单独工作是设计与visual c v4.2v5.0v6.0一起工作的。   mfc和atl都可以用来开发activex控件。事实上两者都支持各种开发向导和强 有力的帮助类和模板从而使控件的开发尽量简单。而且这两种框架各有千秋。简言之如果你相当熟悉mfc的各种机制而且是在创建庞大而成熟的图形应用程 序本地控件或服务器控件那么使用mfc书写控件时会有很大的优越性。   然而用mfc建立的控件在执行时要求相应的mfc dll支持相应地导致体积庞大。如果在控件的规模成问题时则可以考虑 使用另一种方法-atl活动模板库。   在建立轻量级控件(几乎或根本没有用户界面要求的com或dcom服务器)时atl方 法是mfc方法的替代方法。atl在建立com组件时使用了模板机制这个框架对许多标准的com接口提供了大量的模板。事实上atl根本不需要任何类 型的运行时刻服务—由于以c模板为基础所以atl对于外部库根本没有链接依赖性。因此基于atl的组件要比等价的基于mfc的控件占用的资源少。   wtl框架作为atl的扩展也是由atl小组开发的包含在微软于2000年1月发 布的开发平台sdk包中虽然微软没有正式支持。wtl通过提供一个用于编写win32应用程序和控件的轻量级的框架、一些特殊的视图、gdi对象和实用 的类来扩展atl窗口类。wtl的目标是成为最好和最简单的实现基于win32和atl的应用程序、服务器和控件的方法。  四、 com、ole、activex及com篇   微软的许多技术如ole、activex、以及directx等都是基于com技术而建立起来的。微软本身也大量地使用com组件来定制他们的应用程序及操作系统。那么什么是com呢?   所谓com即“组件对象模型”是一种说明如何建立可动态互变组件的规范此规范提供了 为保证能够互操作客户和组件应遵循的一些二进制和网络标准。通过这种标准将可以在任意两个组件之间进行通信而不用考虑其所处的操作环境是否相同、使用的 开发语言是否一致以及是否运行于同一台计算机。开发com的目的是为了使应用程序更易于定制、更为灵活。   其实com不是以一个单独的开发过程的一部分出现的。相反它最初是以对象及嵌入系统 的形式产生于windows 3.0。我们知道ole 1允许一个应用程序(如word或excel)可以不必打开第二个应用程序就能显示其它应用程序的数据。但ole 1还存在两个局限:   ·首先是嵌入的数据不能被应用程序所编辑;   ·其次没有标准化的系统用于存放嵌入的信息。   于是出现了ole 2ole 2是与windows 3.1一起推出的它是第一个真正的com技术而ole 1还不具备com的各项特性—它使用的是另一种技术体系。ole 2中产生了一种新的唯一的数据格式称为复合文件。这种文件中能够包括所有ole支持的应用程序的相关信息并在任一工作的应用程序中支持编辑、更新、打 印等功能。   但ole 2仍然存在一些局限性最为明显的是任何时候要对一个嵌入的数据进行编辑都得重新打开一个窗口。对这一点的改进生成了ole的一个新版本称为ole自 动化。该技术除了允许在调用数据的应用程序内部进行编辑(称为内部编辑)还在ole 2的基础上加入了其它两项与com技术相关的改进;一是提供了非c开发程序(如vb程序)接入com功能的能力;二是支持存在于复合文件以外的基于 com技术的部件的创建。windows 3.11全面支持自动化技术。   虽然这最后一次的技术改进给com带来了最持久的冲击但是com的ole实现并仍然 没有实现bill gate先生的部件化软件的梦想。随之而来的另一技术革新却通过从未想过的机制—vbx控件使之变成了现实。vbx是visual baisc开发环境的一些内带工具最早由c开发后来却都是用vb自己开发的。vbx是一类dll应用程序具有特殊的支持以便可以在vb系统中使 用。在一年左右的时间内vbx控件的市场迅速发展成为一个几百万美元的产业并带动了vb产品的销售。vbx具有两项以前的自动化服务器所不具备的重要 性质:用户接口和它与客户(容器)的通信能力。   vbx的这种出乎意料的成功让微软决定让com工作组在自动化基础上增加等效于vbx的 性能。这一开发过程的结果就是ocx控件(是一种特殊的自动化dll服务器)它采用com技术支持vbx控件的所有功能而且它从此升级为32位的控 件。可惜在ocx尚未来得及普及以前因特网和java的出现使它们被重新改造成了activex控件。   当时没有谁会预料到java和internet会在www领域以氢弹的威力在计算机领 域爆炸。微软长期以来一直认为他们在pc机软件领域的垄断是无可挑战的但是java和网页浏览器伴随着internet以一种全新的方式进入到个人微 机的软件领域且该领域由sun和netscape控制而不是微软。作为迎击com变成了activex复合文件变成了activex文件ocx控 件变成了activex控件等等。基于com的activex组件均根据internet的特点增加相应的新特征如保密安全性能、代码短、数据支持异步 下载。同时activex组件还具有如下特点:   ·activex在自动化服务器上增加了用户接口;   ·通用属性和属性页机制使activex控件的行为标准化;   ·连接点机制支持从activex控件向容器发送事件;   ·activex的持续性解决了越时的状态存储问题。   总之ole1、ole2、ole自动化、vbx控件、ocx控件、activex以及com都是com概念在windows操作系统的各种实现方式。如今com已成为微软产品系列的核心组成技术:   ·internet explorer 4网络浏览器支持所有的activex控件实际上它正是采用了一个activex组件用于它的显示接口;   ·windows 98这种新版的windows操作系统将ie与操作系统捆绑在一起它基于com技术并支持活动桌面使桌面部件具有网络应用的功能;   ·internet信息服务器(iis)是微软加入网络服务器大战的重量级武器iis包括很多的功能强大的基于com技术的系列内容如active server pageisapi扩展和isapi过滤器;   ·微软事务服务器(mts)是一种面向数据库的系统mts采用com技术以支持多种数据库系统和售货机的混合事务处理并仿造非数据库的执行方式将事务的处理变成单步的行为其结果可以为“成功”、“失败”和“返回”而不会因为处理失败而丢失数据;   ·ole db推回到com的ole 2技术上它采用与odbc数据库相同的技术支持非数据库应用程序与面向数据库的技术(如mts)共同工作。   从另一方面看最初windows是利用dll在二进制级实现代码共享的。这也是 windows程序运行的关键——重用kernel32.dll,user32.dll等。但dll是针对c接口而写的它们只能被c或理解c调用规范的 语言使用。由编程语言来负责实现共享代码而不是由dll本身。这样的话dll的使用受到限制。尽管在后来mfc又引入了另外一种mfc扩展dll二 进制共享机制但它的使用仍受限制——只能在mfc程序中使用。   com通过定义二进制标准解决了这些问题即com明确指出二进制模块(dll和 exe)必须被编译成与指定的结构匹配。这个标准也确切地规定了在内存中如何组织com对象。com定义的二进制标准还必须独立于任何编程语言(如c 中的命名修饰)。事实上com正是充分利用了win32 dll的灵活性才得以真正在windows平台上实现的。com的发布形式是:以win32动态链接库(dll)或者可执行文件(exe)的形式发布的可 执行代码组成。   注意com本身也要实现一个称为com库的api由该库提供诸如客户对组件的查询以及组件的注册/反注册等一系列服务。一般来说com库由操作系统加以实现程序员不必关心其实现细节。   【注】directx技术   要在windows平台上进行游戏开发必须了解两个重量级游戏api:directx和 opengl。其中directx是微软开发的专门用于优化游戏制作的api。directx由很多组件组成:directdraw、 directsound、directmusic、directplay、direct3d、directinput、directsetup。它是允许 你直接控制计算机硬件设备的软件它比windows gdi要快好几倍可用于不同的语言和多种平台支持从绘制象素到高级3d图像从播放简单声音到数字音乐从键盘控制到反震手柄……几乎为你的游戏开发 提供了所需的一切。注意directx的基础正是com技术。   什么是com?   必须明确com并不是com的简单升级但它的底层结构仍以com为基础com 综合了com、dcom和mts这些技术要素把com组件软件提升到应用层而不再是底层的软件结构它通过操作系统的各种支持使组件对象模型建立在应 用层上把所有组件的底层细节留给操作系统;因此com与操作系统的结合更加紧密。下图3展示了com与mts、com/dcom的关系。      图3.com与mts、com/dcom的关系   另一方面com不再局限于com的组件技术它更加注重于分布式网络应用的设计和实 现。com继承了com几乎全部的优势同时又避免了com实现中的一些不足把com、dcom和mts的编程模型有机地结合起来继承了它们的绝大 多数特性在原有的特性上增加了新的功能:   ·真正的异步通讯。   ·事件服务。   ·可伸缩性。   ·可管理和可配置性。   ·易于开发。   com标志着微软的组件技术达到了一个新的高度它不再局限于一台机器上的桌面系统 而是把目标指向了更为广阔的企业内部网甚至国际互连网。com与多层结构模型(windows dna结构详见下一节)以及windows操作系统为企业应用或web应用提供了一套完整的解决方案。   【问题】.net时代com是否会消失?   不会。其实.net只不过是com的别名而已。对于一个经验丰富的c程序员而 言.net就是com的进化而微软内部.net可以说是“com 3.0”。其实clr就是一个不折不扣的com对象。但是请注意.net使用一种不同的方法来编写组件这样.net组件与原先的com组件存在明 显的不同。.net组件不需要使用注册表和类型库因为所有关于组件的信息都以元数据的形式包含在程序集(assembly)中。但是借助于一个称为 com interop的工具com对象和.net对象可以很好地协作:通过提供软件包类.net对象可以访问com对象;通过提供所有的注册表项和com对 象构建机制com对象可以访问.net对象。   更多的请看http://www./windows/2003/index.html五、 windows dna篇   微软的windows分布式因特网应用体系(简称windows dna)是微软创建新一代高适应性商业解决方案的框架它使公司能够充分地挖掘数字神经系统的优点。windows dna是在.net平台出现之前在微软平台上进行技术开发的大环境要利用微软的组件技术ole、com、dcom、mts、com进行开发就不能不 了解这个windows环境下的软件体系结构。windows dna是第一个将互联网、客户/服务器和用于计算的pc模型结合并集成在一起的为新一代分布式计算方案而设计的应用软件体系结构。下图4展示了微软创建的 windows dna的系统架构。由图中可见windows dna使用了一系列的服务来完成它的架构。使用windows dna模型用户可建造一个能在任何网络上实现的、可伸缩的多层应用软件。      图4.windows dna服务架构。   因为windows dna应用软件深深地利用了集成的windows平台服务因此公司可以把精力集中于实现业务方案而并不是成为一个系统集成商。   作为总结以下简要列出微软在开发windows dna结构时的指导原则:   ·无须折衷的网络计算   ·交互操作能力   ·真正的集成   ·更低的花费   ·快速跟近市场   因为windows dna是基于com和开放的internet标准的所以发展商可以使用任何语言或工具来生成可兼容的应用程序。com提供了一个现代的、独立于语言的对 象模型它为应用程序提供了与结构的所有层进行交互操作的标准方式。通过com发展商通过可插入的软件单元能够扩展应用程序的任何部分这些软件单元可 由cvisual basic,java或者其它语言写成。总之windows dna实际上是微软的.net框架出现以前基于组件的分布式应用程序战略框架结构。  六、 .net框架篇   .net是微软自从发布windows 3.0以来最为激动人心的新技术是微软战略上为下一个十年对服务器和桌面软件工程的第一步是微软的一场世纪大豪赌。对于.net微软的定义是“用于构架、配置、运行网络服务及其他应用程序的开发环境。 该平台包括三个主要部分:公共语言运行时、框架类和asp.net。”   .net框架是微软公司继windows dna以来的新的开发平台。基于这个新的框架以前在dna中暴露出来的缺陷有望得到解决。另一方面.net并没有完全抛弃windows dna实际上它是windows dna的继续和发展。如今的.net不仅有一套明确的技术规范还提供了一系列的支持产品例如编译器、类库甚至最终的用户程序。如 windows.net是操作系统平台、.net框架是运行环境、.net企业服务器为产品服务器、visual studio.net为编程平台。   .net框架是以一种类似于java系统的虚拟机方式运行和管理的编程平台通过公共语言运行时刻为基础支持多种语言(c#、vb.net、c、python 等)的开发。下图5展示了.net的整体框架结构。      图5..net体系结构。   下面的图6则从另一个角度展示了公共语言运行库和类库与应用程序之间以及与整个系统之间的关系。注意该插图还展示了托管代码如何在更大的结构内运行。      图6..net公共语言运行库与类库、应用程序及整个系统之间关系示意图。   .net框架具有两个主要组件:公共语言运行库和.net框架类库。公共语言运行库是. net框架的基础。您可以将运行库看作一个在执行时管理代码的代理它提供内存管理、线程管理和远程处理等核心服务并且还强制实施严格的类型安全以及可 提高安全性和可靠性的其他形式的代码准确性。事实上代码管理的概念是运行库的基本原则。以运行库为目标的代码称为托管代码而不以运行库为目标的代码称 为非托管代码。.net框架的另一个主要组件是类库它是一个综合性的面向对象的可重用类型集合您可以使用它开发多种应用程序这些应用程序包括传统的 命令行或图形用户界面(gui)应用程序也包括基于asp.net所提供的最新的应用程序(如web窗体和xml web服务)。   .net框架可由非托管组件承载这些组件将公共语言运行库加载到它们的进程中并启动托管代码的执行从而创建一个可以同时利用托管和非托管功能的软件环境。.net框架不但提供若干个运行库宿主而且还支持第三方运行库宿主的开发。   【注】.net框架简史   .net框架1.0(完整版本号1.0.3705)系最初的.net构架发行于2002年。它也是第一个微软visual studio.net的发行版的一部分(visual studio.net 2002)。   .net框架1.1(完整版本号1.1.4322)这是首个主要的.net框架升级版 本发行于2003年它也是第二个微软visual studio.net版本的一部分(visual studio.net 2003)。它也是首个windows server 2003内置的.net框架版本。这个框架新增功能有:   ·内建了对移动asp.net控件的支持现在已经集成到框架的内部。   ·安全方面的变更—使得windows窗体代码以可靠的行为执行从而可以在互联网环境内安全运行并且加入了asp.net应用程序的代码安全访问功能。   ·内建了对odbc和oracle数据库的支持现在已经集成到框架的内部。   ·.net compact框架—这是一个用于智能设备(例如 pocketpc或者smartphone)的.net框架的子集。   ·对ipv6的支持。   ·大量的api变更。   .net框架2.0(完整版本号2.0.50727.42)发行于2005年10月27日。重大改进有:   ·大量的api变更。   ·一个新的api让需要管理一个.net运行库实例的非.net的应用程序可以做到这点。这个新的api对.net运行库的各种功能(如多线程、内存分配、代码载入等)均提供了很好的控制。   .net框架3.0(曾用名winfx)将随windows vista一同发布。这个框架依然使用.net框架2.0版本的clr(公共语言运行时)并加入了适应未来软件发展方向的4个框架:windows描述 基础(wpf)、windows通信基础(wcf)、windows工作流基础(wwf)和windows cardspace(wcs)。   更多的请看http://www./windows/2003/index.html七、 .net框架3.0   这个最新框架将与即将发行的windows vista绑定发行。这个新式框架的侧重点在于进一步拓宽.net方案的应用范围。   .net 3.0与1.x和2.0.net框架存在一些不同之处。前两个框架专注于允许众多不同的语言与同一类库clr进行通讯。clr从.net 1.0中开始引入并在.net 2.0中得到增强它基于一个相对简单的概念进行工作:通用语言运行时刻模型能够执行任何运行.net框架的系统中的代码。下图7展示了.net 3.0框架的栈式框架结构。      图7..net 3.0框架结构。   从总体来看.net 3.0框架并没有改进现有技术而是引入了四种适应未来发展的基本新技术:   ·windows描述基础(wpf)   ·windows通信基础(wcf)   ·windows工作流基础(wwf)   ·windows cardspace(wcs)   这其中的每一种技术都将成为开发者基于新一代操作系统及.net平台用来实施新方案的基础。   其中wpf无可争辩地成为四个新式基础类集中最为重要的。这主要是由于两点:一致性wpf方案;新式的名为xaml的xml标准编程语言。   首先wpf为基于asp.net框架进行web开发提供了一种一致的方案来构建编程模型并且支持使用更为丰富的控件和设计技术来开发windows程序。一个开发出来的单个wpf程序最终能够被发行到桌面web以及智能设备等多种环境下。   其次wpf中创新性引入了一种名为xaml的xml标准编程语言。开发人员利用它能够 控制对象的布局。从表面上看这种语言似乎与flash极为相似其实二者之间存在相当的不同。flash是一个成熟的、可控制的、独立于操作系统的封闭 式框架。而相比之下wpf允许你与操作系统及其它.net框架技术进行集成。总之二者服务于不同的市场需求但又存在一些“边缘交叉”。   在这个“网络即是一切”的社会里windows通信基础(wcf)显得极为重要。这个编程模型把web服务、.net远程技术、分布式事务和消息队列统一到单个面向服务的编程模型中从而实现真正意义上的分布式计算。   windows工作流基础(wwf)是一种定义、执行和管理工作流的微软技术。工作流由 一系列的活动组成;开发者能够编写他们自己的域特定的活动然后把它们应用于工作流中。.net框架3.0/windows工作流基础还提供了一组涉及若 干控制流构建方面的通用目的的活动。值得注意的是这个框架了还包括了许多visual studio 2005扩展(可视化工作流设计器、支持用户调试工作流的可视化调试器、工作流编译系统)。总之借助于wwf新一代应用程序开发过程的流程控制方面将 得到极大的改善。   最后windows cardspace(wcs)为程序开发中一直令人头疼的认证问题上提供了一种新的解决方案。不同于以前的方案现在微软使用cardspace实现了 一种几乎是全新的安全设计尝试其基本原理依据“任何用户都能够创建并且共享他的或她的唯一的身份”。   总之wcs有望改变你到一个应用程序(基于web、手机或桌面程序)的认证方式从而极有助于保护用户的私有数据。   【补注】   第一构建.net 3.0解决方案的主要工具仍是visual studio。第二.net框架并非操作系统本身。因此net 1.x和2.0和3.0都被设计可以运行于windows xp、windows 2003/r2和windows vista等系统之上。   八、 总结   回顾微软windows二十一年核心技术发展史不由不令人感概万千。微软成就其帝国霸 业的原因多种但仅从其核心开发技术看来战略前瞻性是这个软件巨人长盛不衰的最重要原因之一。从无到有从不完善到完善无一不显露出这种端倪。如今 微软帝国传奇依然。在今后这个由众多it巨擘支持下的java时代在这个linux大旗麾下的开源时代在这个“无网而不胜”的时代微软的 window vista及其核心.net框架又会缔造出怎样的奇迹请试目以待。   推荐阅读 协议型网络游戏外挂制作之DLL中改代码   第一节到第三节我们说了基本工具的准备第四节使用免升级和免弹出主页来做了一下基本的练习 。第四节中和普通的游戏修改器没有太大的区别只是一个修改的是数据一个修改的是代码。这一节 中我们将通过在dll中修改大话的代码来进行外挂的制作。其实在dll中动态修改代码和上一节用的方法 一样只是要改写的东西更多了而已。  原理和上一节中的函数一样都是调用writeprocessmemor y。  这一节的任务是拦截接收到的数据关于发送的数据可以进行相类似的处理。一般在分析网络 游戏的时候都是先分析接收到的数据。对于大话的程序中间如何去分析的过程就不说了这要看自 己的调适能力了。不过对于9.16之前的大话客户端程序里面含有大量的调试信息也可能是脚本信息 大致分析程序可以发现程序总是在打印调试信息之后然后做实际的工作。其中对于rx_decod e”这个字段很感兴趣看看调用的地方.text:00449d4f154pushoffsetarx_decode;rx_decode   在前方不久的地方就是网络函数recv因此可以这样来理解程序接收到数据之后打印出调试信息 然后跳转到 深入浅出Linux设备驱动编程之内核模块   linux设备驱动属于内核的一部分linux内核的一个模块可以以两种方式被编译和加载  1 直接编译进linux内核随同linux启动时加载  2编译成一个可加载和删除的模块使用in smod加载modprobe和insmod命令类似但依赖于相关的配置文件rmmod删除。这种方式控制了内 核的大小而模块一旦被插入内核它就和内核其他部分一样。  下面我们给出一个内核模块的例子 #include//所有模块都需要的头文件#include//initexit相关宏 module_license(gpl);staticint__inithello_init(void){ printk(hellomoduleinit\n); ret urn0;}staticvoid__exithello_exit(void){ printk(hellomoduleexit\n);}module_init(hello_i nit);module_exit(hello_exit);  分析上述程序发现一个linux内核 用Delphi编写系统进程监控程序 本程序通过调用kernel32.dll中的几个api函数搜索并列出系统中除本进程外的所有进程的id、对应 的文件说明符、优先级、cpu占有率、线程数、相关进程信息等有关信息并可中止所选进程。本程序 运行时会在系统托盘区加入图标不会出现在按ctrlaltdel出现的任务列表中也不会在任务栏上显 示任务按钮在不活动或最小化时会自动隐藏。不会重复运行若程序已经运行再想运行时只会激活 已经运行的程序。本程序避免程序反复运行的方法是比较独特的。因为笔者在试用网上介绍一些方法后 发现程序从最小化状态被激活时单击窗口最小化按钮时窗口却不能最小化。于是笔者采用了发送 和处理自定义消息的方法。在程序运行时先枚举系统中已有窗口若发现程序已经运行就向该程序窗 口发送自定义消息然后结束。已经运行的程序接到自定义消息后显示出窗口。//工程文件procviewp ro.dprprogramprocviewpro;usesforms,windows,messages,maininprocview.pas{form1};{$r*.res} {//这是系统自动的beginapplication.init JGraph 经典常见问题解答 (FAQ)   怎样打开/保存基于xml的文件格式?  在新sdk1.4中提供了读、写xml文件的内建支持。jgraph体 系尤其是图形模式非常类似于xml结构。因此任何基于xml的文件能存入图形模式而无需下载其 它java库。  参考jgraph中的gxlreader和svgwriter的实现gxl2svg示例。gxl导出可通过内置在jgr aphpad中的数据转换(拖、放/剪贴板)或使用文件导出gxl来实现。在jgraphpad中打开文本编辑器 选定你想转换到gxl的子图,然后执行文本编辑器中的editcopyeditpaste。这将会将gxl插入剪贴 板的文本解释区。    用jgraph怎样生成svg图形?  batik项目http://xml.apache.org/bati k/提供了一个javatm的svg生成器。要查看它的规范可访问http://xml.apache.org/batik/svgg en.html.  基本的想法通过实例化jgraph的paint方法来创建一个特定的graphics2d扩展即svggra phics2d。  注意:与jgraph,bati 拖动无标题栏窗体的方法 在任何控件的mousedown事件中加入相似代码可以实现点任何控件拖动窗体。proceduretvolumeform .panel1mousedown(sender:tobject;button:tmousebutton;shift:tshiftstate;x,y:integer);consts c_dragmove:longint$f012;beginreleasecapture;sendmessage(handle,wm_syscommand,sc_dragmove ,0);end;end. Samba使用大全samba服务器(1) samba协议基础在netbios出现之后microsoft就使用netbios实现了一个网络文件/打印服务系统这 个系统基于netbios设定了一套文件共享协议microsoft称之为smbservermessageblock协议。这 个协议被microsoft用于它们lanmanager和windowsnt服务器系统中实现不同计算机之间共享打印机、 串行口和通讯抽象如命名管道、邮件插槽等。随着internet的流行microsoft希望将这个协议扩 展到internet上去成为internet上计算机之间相互共享数据的一种标准。因此它将原有的几乎没有多 少技术文档的smb协议进行整理重新命名为cifscommoninternetfilesystem并打算将它与netb ios相脱离试图使它成为internet上的一个标准协议。因此为了让windows和unix计算机相集成最 好的办法即是在unix计算机中安装支持smb/cifs协议的软件这样windows客户就不需要更改设置就 能如同使用windowsnt服务器一样使用unix计算机上的资源了。samba是 简析ADO.Net与ADO在数据内存中的差异 数据的内存中表示形式在ado中数据的内存中表示形式为记录集。在ado.net中它为数据集。它们之 间有重要的差异。表的个数记录集看起来像单个表。如果记录集将包含来自多个数据库表的数据则它 必须使用join查询将来自各个数据库表的数据组合到单个结果表中。相反数据集是一个或多个表的 集合。数据集内的表称为数据表明确地说它们是datatable对象。如果数据集包含来自多个数据库 表的数据它通常将包含多个datatable对象。即每个datatable对象通常对应于单个数据库表或视图 。这样数据集可以模仿基础数据库的结构。数据集通常还包含关系。数据集内的关系类似于数据库中 的外键关系即它使多个表中的行彼此关联。例如如果数据集包含一个有关投资者的表和另一个有关 每个投资者的股票购买情况的表则数据集可能还包含一个关系来连接投资者表的各个行和购买表的对 应行。由于数据集可以保存多个独立的表并维护有关表之间关系的信息因此它可以保存比记录集丰富 得多的数据结构包括自关联的表和具有多对多关系的表。数据导航和游标在ado中您使用adomoven ext方法顺序扫描记录集的行。在ado.net中 北京邮电大学1999年研究生入学考试 数据结构试题 注意事项 1.答案一律写在答题纸上2.答案卷应字迹清楚、语义确切3.算法应说明基本思路应 对主要数据类型、变量给出说明所写算法应结构清晰、简明易懂应加上必要的注释4.算法可用 类pascal语言、c语言等你所熟悉的高级语言编写但要注明语种。110分选择填空①字符串’a babaabab’的nextval为a010104101b.010102101c 010100011d.010101011②广义表aa,b,(c,d),(e,(f ,g)),则下面式子的值为head(tail(head(tail(tail(a)))))agb.(d)c.cd.d③输入序列为 abcd不可能得到的输出序列有aabcdbdcbacacdb dcabd④散列函数有一个共同性质即函数值应按取其值域的每一个值a.最大概率b.最 小概率c.同等概率d.平均概率⑤直接插入排序在最好情况下的时间复杂度为。a.o(logn)b.o(n)c.o(n* l 项目计划与质量管理 在可行性分析之后项目计划与质量管理将贯穿需求分析、系统设计、程序设计、测试、维护等软件工 程环节。项目计划是要提供一份合理的进程表让所有开发人员任务明确、步调一致最终共同准时地 完成项目。项目计划是要付诸实施的不象用嘴巴喊政治口号可以很夸张。软件的项目计划重在“准 确”而非“快速”。提高质量是软件工程的主要目标。但由于软件开发是一种智力创作活动很难象传 统工业那样通过执行严格的操作规范来保证软件产品的质量。世上最小心翼翼、最老实巴脚的程序员未 必就能开发出高质量的软件来。程序员必须了解软件质量的方方面面称为质量因素如正确性、性 能、易用性、灵活性、可复用性、可理解性等等才能在进行系统设计、程序设计时将高质量内建其中 。软件的高质量并不是“管理”出来的实质上是设计出来的质量的管理只是一种预防和认证的手段 而已。项目计划做项目计划如同给一个待出生的婴儿写传记那样困难。如果允许项目结束后再写计划 那就轻松多了并且可以100%地准确。历史教训让我们明白一个道理如果一万年以后才会有一条阳 光大道通向共产主义那么现在就不要忙着砸锅炼钢赶英超美免得在跑步奔向共产主义时把自己累死 饿死。 PowerBuilder应用开发系列讲座(20)   p使用powerbuilder另外500个函数(中)  上期我们介绍了调用windowsapi函数的方法,本期继续 介绍几个常用的api函数。文件拷贝例程windows操作系统在像文件操作一类的低级函数调用方面相当灵 活,而在powerbuilder中为了实现这一些低级操作,开发者们必须用第三方开发库(如:funckyforpowerb uilder库)或用c语言之类的语言开发自己的库,这种方法我们将在后面的章节中讨论。在这里,我们首先 介绍如何调用windowsapi函数实现简单而又常用的低级操作:文件拷贝。使用windowsapi而不用第三方 开发库的主要好处是:如果这是所要做的唯一低级操作,在发布应用时就不需要同时将额外的库打包进去 。但如果还需使用第三方开发库提供的其它服务,为简单起见,使用第三方开发库所提供的例程可能要更 方便些。实现首先声明下列localexternal函数:functionlonglzopenfile(stringfilename,refws_ofs tructfilestructure,uintstyle)librarylzexpand.dllfunction 用Delphi 压缩Access数据库 usesdao97,dao2000;procedurecompactmdbdatabase(srcdbname,dstdbname,oldpwd,newpwd:string;ba ccess97:booleantrue);varidbengine:_dbengine;beginifoldpwdthenoldpwd:;pwdoldpwd; ifnewpwdthennewpwd:;pwdnewpwd;ifbaccess97thenbeginidbengine:createcomobject(dao 97.class_dbengine)as_dbengine;idbengine.compactdatabase(srcdbname,dstdbname,newpwd,dbvers ion30,oldpwd);endelsebeginidbengine:createcomobject(dao2000.class_dbengine)as_dbengine;i dbengine.compactdatabase(srcdbname,dstdbname,newpwd,dbv 用CBuilder操纵Excel   microsoftexcel作为一个功能强大的电子表格处理软件已经得到了广泛的应用。在数据库应用软 件开发过程中如果能实现数据库与excel文件的数据交换那么一方面能增加数据库数据的来源另 一方面也能方便用户对数据库数据的进一步处理。cbuilder是一个可视化快速应用程序开发工具 它提供的oleautomation机制使得开发人员在应用程序中就能调用excel实现数据交换。在cbuil der中调用excel首先要为excel建立一个ole对象然后通过设定该对象的属性和调用该对象的方法来 操纵excel。cbuilder通过createoleobject()来建立ole对象用olepropertyset(propnameval ue)来设置ole对象的属性用olepropertyget(propname)获得ole对象的属性通过olefunction(olef uncname[val,...])和oleprocedure(oleprocname,[val,...])来调用ole对象的方法。cbuilder 中使用ole自动化操纵excel必须掌握exc 读书软件做自己的   不知各位对e_book的读书效果是否感兴趣它是用vb做的其实在cbuilder中也可以很轻松的 实现类似效果。现在让我们stepbystep吧!  1)新建工程。单元存盘为read.cpp  加入一个popu pmenu;窗体属性设置如下    name:mainform;    autoscroll:false;    borderstyle.: bsnone;    font:宋体,fontsize:9;    position:poscreencenter;    popupmenu:pop upmenu1;  2)添加一panel,设置为    bevelouter:bvnone;    borderstyle.:bssingle;     ctl3d:false;    name:panel_1;    caption(置空)    color:0x00ce9600; (淡蓝色)可自定  3)a:把panel_1拉大(任意)在里面添加两个panel,命名为le_pan,ri_pan;     le_pan:    color:clblack    align:alleft Agile programming advice offered march23,2006agileprogrammingadviceofferedfiledunder:applicationdevelopmenttentipsonhowtom akeagileprogrammingworkwereofferedattheserversidejavasymposiuminlasvegasonthursday.agilep rogrammingdeliverssoftwareinshortperiodsoftimeandisgainingalotofattentionlately.althought hesession,presentedbyclintonbeginofthoughtworks,providedreasonsagileteamsfail,illsummari zethesessionbylistingthe10nuggetsofadvicefeatured.#10.dontbelievemythssuchas:agiledoesno tneeddocumentationoriscowboycoding.agileissomeofthem 战略联盟的形成与发展机制 在以生产成本为中心来决定竞争绩效的阶段对某些重要资源的占有决定了企业的竞争地位及优势这 种优势不仅可以完全决定竞争的结局而且表现出明显的可持续性。而在网络经济发展的时代企业间 的竞争与以往相比发生了巨大的变化企业可以通过战略联盟转化在某些经营资源方面的劣势竞争优 势将更多地依赖于对投入要素的合理利用而资源利用率的提高源于技术上的创新和企业间的信息共享 。导言东芝公司是日本著名的大型企业其在全球化战略和联盟方面的成就是十分引人注目的。特别是 90年代初在电器产业普遍受到计算机市场增长放慢、半导体产业投资回报率下降以及rd费用过高等 问题的困扰下日本厂商由于出口受到限制加之国内市场的特殊性其生存发展的环境十分恶劣企 业经营效益大幅度滑坡。而即使在这样的状况下东芝公司依旧在国际市场和日本国内市场上取得了很 大的成功其中在高技术市场上表现更为突出到1998年止销售额已达到259亿美元而且其弹性 生产法和需求对应型的产品创新机制使东芝公司成为世界市场的先导者之一。本文将以东芝公司为研究 对象通过对其联盟战略的分析和研究揭示战略联盟的特征和类型。首先我们将简要地从历史的角度审 PowerBuilder应用开发系列讲座(10) p  在开发中,我们有时会遇到用一个datawindow来表现数据库中多个表中数据的情形,这时datawin dow用到的sqlselect语句是一个多张表连接的视图。当我们对这样一个datawindow中的数据进行修改并 提交数据库时,我们将会发现我们并不能简单地使用一条dw.update()来实现同时对数据库中多张表的修 改。  事实上,系统在datawindow中提交数据库并生成update语句时所根据的仍然是图一这个窗口。 在以前的章节中我们曾介绍过利用这个窗口中一些不同的选项实现数据库的并发控制,这里我们再讲一 下这个窗口中的选项对生成update语句的其它影响。  当我们调用update函数时,这个窗口中有四个 域将被涉及:whereclauseforupdate/deletewhere子句的生成依据。这个选项主要是用来进行并发控制 的,这里不再赘述。updatetablecolumns可修改的列。这是一个我们将遇到麻烦的地方。powerbuilder 只能同时对一张要修改的表进行管理,所以我们不能一下子指出所有表中所有要修改的列。在这里我们 只能指出某一张表中要修改的列,以后在程序中用m 如何在状态条中(CStatusbar Pane)加入Bitmap图 以下的代码将演示如何在状态条的第一个方块中显示bitmap图。visualc4.0以后的mfc的cstatusbar 使用状态窗口通用控制所以代码与早期版本有所不同。在一个appwizard应用的状态条中加入一个新 的方块在mainfrm.cpp中加入下列语句//mainfrm.cppstaticuintindicators[]  id_separator,/ /statuslineindicator  id_indicator_bitmap,  //bitmap状态条  id_indicator_caps,  i d_indicator_num,  id_indicator_scrl,};从cstatusbar派生一个新类(例如cbitmapstatusbar)并 且用这个新类取代cmainframe中的cstatusbar(mainfrm.h)//mainfrm.h//cstatusbarm_wndstatusbar; cbitmapstatusbarm_wndstatusbar;在新类的.h和.cpp中加入下面两个函数的声明和定义//bitmapstat usbar.hclassc 初级.net框架下的MD5   近日发现有程序员在.net项目中自己编写md5算法实现为避免不必要的资源消耗特撰此文。.n et框架下md5实现已经集成于system.web.security名称空间只需简单调用即获取结果:string结果字 符串system.web.security.formsauthentication.hashpasswordforstoringinconfigfile(输入字符串 ,md5);以下包装函数根据code参数的不同可取16或32分别返回参数str的16位和32位md5加密字 串。16位字串用于模拟动网论坛等国内常见论坛的md5实现publicstringmd5(stringstr,intcode) {if(code16){returnsystem.web.security.formsauthentication.hashpasswordforstoringinconfi gfile(str,md5).tolower().substring(8,16);}if(code32){returnsystem.web.security.formsa uthentic WINDOWS XP优化设置和宽带应用技巧 很多人安装了windowsxp后的第一感觉就是windows变得漂亮极了。只是可惜美丽的代价要耗掉我们本就 不富裕的内存和显存。桌面上干干净净让人手足无措只剩下一个回收站所有的功能全部通过“开始 ”按钮来完成。界面的改变还包括任务栏和“开始”按钮的使用也都有了相当明显的变化。特别是那个 任务栏的分组功能虽然节省了任务栏的空间但浪费的时间更多有些得不偿失。要想恢复到和经典 windows类似的界面和使用习惯就和我一起进行一下几处更改吧。一、恢复到经典windows界面在桌面 上单击鼠标右键选择“属性”命令即可进入“显示属性”的设置窗口。这里共有“主题”、“桌面” 、“屏幕保护程序”、“外观”和“设置”五个选项卡。在当前选项卡的标签上会有一条黄色的亮色突 出显示默认是“主题”选项卡这里我们只要在“主题”的下拉选单里选择“windows经典”立即 就可以在预览窗口看到显示效果同时外观选项卡的内容也会随之进行更改。注意windowsxp中“ 主题”和“外观”选项卡是息息相关的只要更改其中的任何一个选项在另一个选项卡中也会看到相 应的改变。二、恢复“开始”菜单经过一段时间的使用后感觉 循序渐进学习Power Builder 6.017-5 175创建server界面至此我们已经创建了server库把clients库中nvo对象移至server库中定义 并初始化了transport对象接下去需要定义一个运行server的界面。在钮按栏中按下窗口画板按钮 选择新建。我们将把这个窗口作为运行server的主窗口首先在窗口中移中两个按钮一个用来启动 服务器的服务进程取名为“start”另一个按钮用来中止服务进程取名为“shutdown”。图17-6 为了程序更加可视一些我们再定义一个画面用来标志服务是否正常启动。移入一个picture控件 点取右键选择编辑属性命令property系统弹出对象属性对话框。在filename中点取browse选入s top点bmpok。当这个画面中的绿灯亮起来时就认为服务器已经正确启动了如果画面中是红灯时 则服务被中止了。调整一下窗口中控件的位置然后定义这个窗口的属性。我们把这个窗口名定义为“ discountcomputingserver”。接下去我们来为这两个按钮加上一些适当的脚本让服务端程序正确 运行起来。打开start按钮的clicked事件。在start按扭 软件项目可行性分析和需求分析(1) 可行性分析是要决定“做还是不做”。需求分析是要决定“做什么不做什么”。即使可行性分析是客 观的、科学的但决策仍有可能是错误的。因为决策者是人人会冲动有赌博心态。如果可行性分析 表明做某件事的成功率是10%失败率是90%倘若该事情的意义非常大决策者也许会一拍脑袋“豁 出去干”于是这世界就多了一份极喜与极悲。一、可行性分析的四大要素经济、技术、社会环境 和人目前国内很多软件公司做系统集成项目如果谈谈系统集成项目的可行性分析将很有意思。可是那 些系统集成项目大多是政府机构的由于软件行业尚不规范并且客户方存在腐败现象所以业内流传“ 没有做不了的系统集成项目”。软件公司的注意力几乎全集中在“如何拿到项目订单”以及“拿到订单 后如何蒙混过关”上使我丧失了卖弄“可行性分析”的机会。既然不能正面指点一个人如何做好事 那么就规劝他不要做坏事吧。二、可行性分析案例——投资软件公司失败的教训。作者本来没有资格谈 论投资但事有凑巧近一年来我关闭了一个亏损30万元的软件公司我自己的休克一个年亏损2 00万元的软件公司朋友的扼杀一个200万元的投资方案陌生人的踩灭一个处于萌芽状态 成功测试管理的九大原则   简介  许多测试管理者是从技术部门进到管理阶层的。尽管他们有可能受过很多测试或软件工程 的培训和指导但他们还是很难经常从失败和错误中学到管理技巧。作为一个管理者你有两项基本工 作找出为你工作的最好的员工并且建立一个能够使员工完成工作的环境使他们最好地完成工作。 这篇文章讲述了一些我学过的关于这些管理工作的经验。  总是那些人――帮助人们最好地完成工作   1为工作雇佣最好的员工  我遇到许多管理者他们要雇佣的员工仅仅是他们上一个雇佣的翻 版。作为一个测试管理者你必须对你需要什么人做出评估。假设现在你的部门满是极好的探索型的测 试员。如果你还要雇另一个探索型的测试员也许比你现在的要好但是他对你的空白领域有作用吗 也许有也许没有。  工作的最佳人选也许就是你现在这个小组里所没有的类型。最佳人选或许并不 “适合”你通常的工作方式。作为一个测试管理者雇佣一个最佳的员工要用发展的雇佣策略面试时 要检验他是否符合这个策略。这可以让你找到最适合这份工作的人员他能够完成必要的工作。  2 .安排每周与你的每个小组成员在不被打扰的环境进行谈话  最为一个测试经理主要工作之一就是 定期的评定 使用EclipseRDT插件进行Ruby开发 简介本文介绍如何在eclipse中使用ruby开发工具(rdt)插件进行ruby开发。本文将有益于那些想学习如 何使用eclipse基础架构来进行ruby开发的ruby开发者也有益于对ruby开发感兴趣的java开发者。   一、为什么使用ruby  现在为什么众多的java开发者都关注rubyruby是10年以前在日本创 建的一种通用目的脚本语言这是一种纯面向对象的语言。不同于java技术ruby中的一切都是对象。 ruby的语法主要来源于smalltalkpython和ada。象java编程语言一样ruby是一种单继承的语言但 是它提供了一些java技术所没有实现的高级特征例如闭合(可以认为是一种匿名的内部类)和mix-in( 类似于接口但是较松地绑定于类上)。ruby也是高度可移植的能够运行在所有主流的操作系统之上 。  现在ruby正十分热门。人们正在开始把它应用于各种类型的应用程序。因为它是解释型并且使 用动态类型化所以你可以在运行时刻实现在java中很难实现的技巧。由动态类型化和富于表达的语法 所实现的令人吃惊的能力之一是它能够用ruby创建域特定的语言dsl 汉化人介绍之 ChinEase 篇  ?hinease中原人氏目前就职于郑州市一家建筑设计院从事cad辅助设计工作。爱好庞杂喜欢的 虽多但精通的甚少。崇尚自然科学和竞技体育特别是足球、围棋等项目是ac米兰和荷兰国家队的忠 实球迷除了体育比赛基本不看电视:)  由于工作关系从95年开始接触电脑(不算学校时的basic了) 从此沉溺其中99年3月开始上网更是无法自拔99年6月在新起点汉化工作室发布第一个汉化软件 从此走上汉化之路99年10月本汉化节点建设成功在前后一年多的时间里一直利用业余时间为大 家业务地制作一些汉化软件虽然数量不多、质量有限但心里倒是一直觉得挺塌实的:)  其实从9 6年开始出于好玩的原因在工作之余做过一些dos时代的软件如rar、hd-copy、list等的汉化打发时 光那时基本上利用pc、diskedit等十六进制工作来完成。虽然比较麻烦但并无太多技巧可言到98年 初偶然在一些d版光盘上见到一些32位软件如acdsee32、winzip32之类的汉化版如获至宝之余甚觉惊 奇于是开始查找一些相关资料和工具进行研究开始只是利用东方快车之类的工具随意做一些东西给 自己用质量也太好 使用CFtpFileFind和递归算法来遍历ftp目录 下载本文示例代码微软提供了一个wininet网络编程接口,可以让程序员在较高层次建立internet客户应 用程序.封装了winsockapi来简化网络编程过程.使用wininet提供的十二个类中的一些,使程序员不需要 了解windows套接字的细节,只要几个函数既可完成链接和一些功能.这里给出一个简单的例子,来遍历一 个ftp所有的文件,并输出一个有层次的列表.首先建立一个对话框的程序,其中加入五个文本编辑框,分 别用来输入ftp地址,端口,用户名,密码,和输出列表.再加入一个按钮.分别加入变量如下:cstringm_ho st;//ftp地址cstringm_username;//用户名cstringm_password;//密码intm_port;//端口cstringm_ft pinfo;//输出的消息同时还需要在头文件中加入如下几个变量:cinternetsession*m_pinetsession;// wininet类之一,创建并初始化internet会话cftpconnection*m_pftpconnection;//建立ftp连接intn;/ /用来产生层次的ftp输出目录,因为要 规划SOA2构建SOA路线图 在开始任何一段伟大的旅程之前都应该制订一个目标企业决定实现soa时也不例外。与乘马车出发西 行的拓荒者一样前方等待的是什么以及如何到达目的地都是未知的。要取得成功您必须评估自己的 长处与缺点确定明确的方向选择一条路线然后在沿此路线前行的过程中不断重新评估此路线。简 而言之您必须为您的旅程建立一份独有的路线图。何为soa路线图为什么需要soa路线图面向服务 的架构是一种it策略它将企业应用程序中包含的分散功能组织为可互操作的基于标准的服务这些服 务可按照业务需求快速组合和重用。只有平衡了企业的长期目标与短期需求soa的益处才会显现出来 。通过在开始采用soa时就指定一组组织、资金、操作、设计和交付准则就可保持这一平衡。但“大 爆炸”式的方法是不可取的应按照循序渐进的学习曲线选择一种往复渐进的方式来部署架构更改 这非常重要。大体而言soa路线图就提供了这样一种往复渐进的方式使您随着进展得出重新得出 您的企业的独有规划。您的soa路线图应包含3个关键特征成熟soa路线图应该是不断融入经验和 教训的“活动文档”。soa路线图成熟时您的soa行动也就以一种可控的方式达到 统一建模语言UML轻松入门之基本概念   20世纪80年代随着面向对象技术成为研究的热点先后出现了几十种面向对象的软件开发方法。 其中booch、omt和oose等方法得到了广泛的认可。然而采用不同方法进行建模不利于开发者之间的 交流。而uml则统一了booch、omt和oose的表示方法而且对其作了进一步的发展。1997年uml被国际 对象组织omg采纳为面向对象的建模语言的国际标准它溶入了软件工程领域的新思想、新方法和新技 术。uml不限于支持面向对象的分析与设计还支持从需求分析开始的软件开发的全过程。数年来um l凭借其简洁明晰的表达方式、超凡脱俗的表达能力一路杀将出来为业界所广泛认同目前在多 数大型企业的正规化开发流程中开发人员普遍使用uml进行模型的建立。作为一名软件开发人员我 们必须学会uml。因为uml就是那个统一的文字统一的度、量、衡不理解uml作为软件设 计统一王国的国民将是艰难而痛苦的。  作曲家会将其脑袋中的旋律谱成乐曲建筑师会将其设计 的建筑物画成蓝图这些乐曲、蓝图就是模型(model)而建构这些模型的过程就称为建模(modeling) 。软件开发如同音乐谱曲 利用Visual Basic开发微软代理控件   一、引言相信广大的程序设计人员对microsoft公司的办公套件office系列产品一定不会陌生而 且也一定会注意到那个外型古怪的office助手当我们需要寻求帮助按下f1键时它就会从天而降为 我们进行解答当完成任务后又会慢慢的缩小直至消失。这无疑比寻常呆板的windows风格的帮助友善 许多。会使用户觉的产品的人机界面更加亲切如果在我们自己的应用程序中也能实现上述功能无疑会 使我们的程序看上去高一个档次。本文就以vb为例对此进行了详细的介绍。二、程序的设计实现micro softvisualbasic6.0以其简洁的语言、强大的功能、精美的界面和visualc、delphi、cbuilder等 语言一样得到了广泛的应用尤其是对activex控件方面的编程非常方便简洁所以本文示例程序选用 vb作为实现语言。打开office目录我们会发现里面有众多的可执行文件和动态连接库以及一些奇怪后缀 的文件而且向office这么大型的软件一般是要划分为若干个模块的一个或几个相关功能的文件会单 独以文件的形式存 来自 “ ITPUB博客 ” 链接http://blog.itpub.net/27035/viewspace-331160/如需转载请注明出处否则将追究法律责任。 转载于:http://blog.itpub.net/27035/viewspace-331160/
http://www.dnsts.com.cn/news/26452.html

相关文章:

  • 个旧网站建设跑胡子网站开发
  • 网站建设新闻 常识江苏苏州
  • 查看网站是什么语言做的白沙的网站建设
  • 网站站内搜索怎么做wordpress文章搜索排序
  • 网站如何加入百度网盟舆情数据分析
  • 如何看网站建立时间安徽外经建设集团有限公司网站
  • oss怎么做网站hexo wordpress哪个好
  • 南宁做网站推广淘宝店铺怎么引流推广
  • 网站3级目录可以做导航分类么河北网络公司网站建设
  • 乐山市规划和建设局门户网站wordpress 轻论坛
  • 怎么建设一个区块链资讯网站投票链接制作
  • 浅谈阿里企业的电子网站建设好的企业管理网站
  • 手机搞笑网站模板下载安装广告营销文案
  • 网站跳出率高怎么办电商平台有哪些网站名
  • 成都注册网站公司有关小城镇建设的网站
  • 系统网站网站备案账号
  • 网站 成功因素快速网站排名
  • 自己服务器建设网站怎么对网站做seo优化
  • 建设心理网站门户网站建设公司案例
  • 网站什么时候做负载均衡购物网站优惠券怎么做
  • 禹城网站制作用php做注册网站的代码
  • 用python开发网站开发技术菠萝菠萝蜜高清免费视频
  • 维护网站是什么工作做界面的网站
  • js企业网站模板番禺响应式网站开发
  • 成品网站灬1688低成本做网站 白之家
  • 帝国做视频网站网站怎么做英语和中文的
  • 北京手机模板建站电子版证件照免费制作微信小程序
  • 做招商加盟做得比较好的网站wordpress的源代码
  • 太原心诺做网站环境建设公司网站
  • 网站建设维护学什么科目自建网站的优缺点