Shared Source CLI Essentials第一章第一部分

2016-01-29 12:30 7 1 收藏

Shared Source CLI Essentials第一章第一部分,Shared Source CLI Essentials第一章第一部分

【 tulaoshi.com - ASP.NET 】

第一章 CLI组件模型介绍21世纪的程序员有很多烦恼。首先,优秀的软件比以前复杂多了。仅仅提供一个基于终端的简单命令提示符或一个字符用户界面已经不能被用户接收了;现在的用户需要包括各种优秀虚拟功能的丰富的图形化用户界面。软件相关的数据,已经很少有结构适合存储在本地系统的普通文件中的了;现在的情况是,计算机用户已经十分依赖软件所提供的查询和报表的功能,而为了满足用户的这些需求,常常必须使用关系数据库。而不断变化的业务情况要求对长期存储的数据进行的经常的修改也要求必须使用关系数据库。从前单机环境就能够满足应用程序的部署需要,在这种环境中是通过文件或剪贴板来实现数据共享的;而现在这个星球上的大部分计算机都联入了网络,因此在这些计算机上部署的软件不但必须要具有网络功能,还必须能够适应不断变化的网络环境。简而言之,软件开发早已不再是技术高手单枪匹马就能够完成任务的职业了,它已经变成了一种基于相当复杂的底层框架的集体行为了。现在的程序员已经不能享受使用贴近处理器的底层工具(例如汇编或C编译器)来从头完成一个完整的软件工程的奢侈了。也很少有人有时间或耐心来编写中间层的框架了,即使是象HTTP协议的实现或者完成一个XML解析器这样简单的工作都很少有人来作,而具有调节底层框架来使系统达到所需的性能和质量的技能的人就更少了。现在软件开发最主要的重心放在了可重用代码和可重用组件上。操作系统加上少量的开发库这种方式已经不能满足软件开发的需要。因此,不管你喜不喜欢,今天的程序员都必须依赖多个不同来源的代码来支持他的应用程序,而且这些代码要能够正确可靠的协同工作。为了适应当前软件开发模式的变化趋势,出现了一种新的软件开发方法学――基于组件的软件开发,它采用组合多个独立的代码模块的方式来创建应用程序。通过组合多个来源的组件,可以快速和高效的创建应用程序。然而,这门技术对编程工具和软件开发过程提出了新的需求。例如,因为依赖于其它由不被信任或不知名的开发者开发的组件,所以程序执行时的严格控制和在运行时对代码的验证成为软件正常运行最基本的要求。在我们这个遍布网路连接的时代,基于组件的复杂软件常常不需要客户端的操作就能动态更新,而有时这些更新可能是恶意的。如果询问那些计算机病毒的受害者保护她的机器和数据的干净是否必要,或者和一个不熟练的计算机使用者谈论那些他们所经历的,由于安装和卸载应用程序而导致系统莫名其妙的不稳定的情况,您就会发现基于组件的软件造成的问题几乎和它带来的好处一样之多。多年来,对基于组件的软件开发的商业宣传和所预期的高效,被如何安全的将不同来源的组件组合起来工作的复杂性所抵消了。然而,最近10年中,我们看到了寄宿托管组件的虚拟执行环境在商业上的成功。托管组件是可以独立开发和部署的简单软件部件,不过它们可以在应用程序中安全的共存。托管组件的”托管”,是指它们需要一个虚拟执行环境来提供运行时和执行服务。为了满足组件的需要,这些环境着重致力于提供一个重点在于保证组件之间的安全合作和协作的结构良好的模型,而不只是简单的暴露它下层的处理器和操作系统的物理资源。如图1-1所抽象描述的那样,虚拟执行环境和托管组件为三个不同的软件群体提供了很多好处:程序员,开发编程工具和编程库的人,以及那些管理在虚拟执行环境中运行的软件的管理员。对于那些使用托管组件开发复杂应用软件的程序员来说,开发工具和编程工具库的出现减少了花费在集成各组件和管理组件间通讯的任务上的时间,提高了生产率。对于工具软件开发者来说(例如编译器开发者),支持框架和一个清晰,说明详细的虚拟机的出现可以减少花费在框架和解决互操作性上的时间,而留出更多的时间来开发工具软件。(high-definition, carefully specified virtual machine??)最后,管理员和计算机用户可以从使用单一的运行时框架和打包模型中获益,并因此更好的控制计算机,所有这些都和特定的处理器和操作系统无关。 图1-1 当寄宿在一个虚拟执行环境中时,各组件可以安全的进行协作。 CLI虚拟执行环境 ECMA通用语言框架是一个虚拟执行环境的标准规范。它描述了一个数据驱动的架构,在其中,语言无关的数据块以自装配件,类型安全的软件系统的形式被激活。驱动这个过程的数据,叫做元数据,开发工具用它来描述软件的行为,以及软件在内存中运行的特性。CLI执行引擎利用元数据来达到将各个来源的组件安全装载到一起的目的。各CLI组件在严格控制和监督下共存,然而它们也能够互相访问,可以直接访问哪些需要共享的资源。CLI是一个良好的平衡了可控性和灵活性的模型。 ECMA,欧洲计算机厂商联合会,是一个已有多年历史的标准化团体。除了发布它自己的标准之外,ECMA也和ISO(国际标准化组织)有着密切的关系,基于这种关系,CLI标准已经被认可为符合ISO/IEC 23271:2003标准,之后根据一篇科技报告,而成为ISO:IEC 23272:2003标准,C#标准也被认可为符合ISO/IEC 23271:

来源:http://www.tulaoshi.com/n/20160129/1486406.html

延伸阅读
标签: 分娩
· 在线读书: 《我的孩子是“中等生”》 “我们” 妻子从确知自己成为孕妇的第一天起,便总是以“我们”自称了:“我们要吃饭”、“我们要睡觉”,等等。 ◎ …………………………………………………………………………………… 河蚌 妻子说:我现在就像河蚌一样,正在痛苦中孕育珍珠。 ◎…………………………...
       第一章                      C#    简介 欢迎您加入C#的世界! 这一章将把您引进C#的天地,并回答一些相关的问题,如:您为什么要使用C#,C++和C#的主要有什...
标签: PHP
第一章 PHP基本介绍 本章重点 ◆ 认识PHP ◆ PHP的历史 ◆ PHP受欢迎的原因 ◆ PHP所具备的竞争优势 首先在第一章中对PHP做个基本的介绍。本章着重于讨论有关PHP最常见的一些问题,例如,什么是PHP,它与类似的技术相比较性能如何等等,本章大部份的篇幅都会花在列举PHP之所以受欢迎的原因上。 认识PHP PHP是一种We...
《死亡街区》攻略第一章 Episode1:Tutorial 欣赏完一段幽默逗趣的剧情动画之后,随即进入游戏的实战教学关卡Tutorial。利用手把左/右类比分别移动角色与调整视角外,还可靠近建筑物的窗户按下A键进行修补工作;当主角进行修缮工作时画面上会出现一条力量表,玩家需在钢钉滑动到绿色区域时再次按下A键(参考图示二),即能完美地将窗户补...
标签: Web开发
XSL介绍    XML的样式表语言XSL比CCS要复杂得多。      CSS:HTML的样式表语言    由于HTML使用预先确定的标记,因此这些标记的含义都很好理解:p元素定义一段,h1元素定义一个标题。浏览器知道如何显示这些元素。       使用CSS向HTML元素增加显示格式是一个简单...

经验教程

249

收藏

69
微博分享 QQ分享 QQ空间 手机页面 收藏网站 回到头部