2003年11月23日

.NET与C#

1.支持多种编程语言的.NET结构框架

让我们翻开教科书,回顾一下近十年来的软件开发的历史。
多年以前,当微软的组件对象模型(Compoent Object Model,COM )尚未推出时,软件的复用性对于开发人员仅仅是一种美好的憧憬。成千上万的程序员为了处理通信、接口和不同语言间的冲突而通宵达旦地艰辛劳动,但却收效甚微。COM的出现改变了这一切。通过将组件改变为通用、集成型的构件,开发人员正逐渐地从过去的繁复编程事务中解脱出来,可以选择自己最得心应手的编程语言进行编程。然而,软件组件与应用程序之间的联合仍然是松散的,不同的编程语言与开发平台限制了部件间的互用性,其结果是产生了日益庞大的应用程序与不断升级的软硬件系统。举个很简单的例子,只用五行C语言代码就能编写出的一个简单程序,若使用COM来编写,结果会是令人吃惊的:我们需要几百行代码。COM在带来巨大价值的同时,也大大增加了开发开销。而.NET Franmework的出现使得一切问题都迎刃而解。实际上,在.NETFramework中,所有的编程语言,从相对简单的Jscript到复杂的C++语言,一律是等同的。
Framework-框架,是开发人员对编程语言命令集的称呼。.NET框架的一样就在于只用统一的命令集支持任何的编程语言。正如微软Web服务中心的成组产品经理JohnMontgmery所说:“只需简单地一用,.NET框架便可消除各种异类框架之间的差异,将他们合并为一个整天。.NET的作用不仅仅是将开发人员从必须掌握多种框架的束缚中解脱出来,通过创建跨编程语言的公共API集,.NET框架可提供强大的跨语言继承性、错误处理和调试功能。现在,开发人员可以自由地选择他们喜欢的编程语言。.NET平台欢迎所有的人的垂顾。”.NETj将使编程人员梦想的语言互用性变成为近在眼前的现实。想想看,一个在VisualBasic(VB)中定义的类能够在另一种与它完全不同的语言环境中使用、调试,甚至继承,这是多么令人兴奋的事情!
 .NET框架是.NET平台的基础架构。其强大功能来自于公共语言运行时(Common Language Runtime,CLR将在第二章中进行详细的解释)环境和类库。CRL和类库(包括:Windows Forms,ADO.NET和ASP.NET)紧密结合在一起,提供了不同系统之间交叉与综合的解决方案和服务。.NET框架创造了一个完全可操控的、安全的和特性丰富的应用执行环境。这不但使得应用程序的开发与发布更加简单,并且成就了众多种类语言间的无缝集成。
2.面向.NET全新开发工具-c#

在最近的一段时间里,C和C++一直是最有生命力的程序设计语言。这两种语言为程序员提供了丰富的功能,高度的灵活性和强大的底层控制能力。而在这一切都不得不在效率上作出不同程度的牺牲。如果你使用国包括c和c++在内的多种程序设计语言,相信你会深刻体会到它们之间的区别的。比如与Visual Basic相比,Visual C++程序员为实现同样的功能就要花费更长的开发周期。由于c和c++即为我们带来了高度的灵活性,又使我们必须要忍受学习的艰苦和开发的长期性,许多c和c++程序员一直在寻求一种新的语言,以图在开发能力和效率之间取得更好的平衡。
今天,人们改进、开发出了许多语言以提高软件生产率,但这些或多或少都以牺牲c和c++程序员所需要的灵活性为代价。这样的解决方案在程序员身上套上了太多的枷锁,限制了他们能力的发挥。它们都不能很好的与原有的系统兼容,更为令人头痛的是,它们并不总是与当前的Web应用结合的很好。
理想的解决方案,是将快速的应用开发与对底层平台所有功能的访问紧密结合在一起。程序员们需要一种环境:它与Web标准完全同步,并且具备与现存应用间方便地进行集成的能力。初次以外,程序员们喜欢它允许自己在需要时使用底层代码。
针对问题,微软的解决方案是一种称之为c#的程序语言。c#是一种现代的面向对象的程序开发语言,它使得程序员能够在新的微软.NET平台上快速开发种类丰富的应用程序。.NET平台提供了大量的工具和服务,能够最大限度地发掘和使用计算机通信能力。
由于其一流的面向对象的设计,从构建组件形式的高层商业对象到构造系统级应用程序,你都会发现,c#是最合适的选择。使用c#语言设计的组件能够用于Web服务,这样通过Internet,可以被运行于任何操作系统上任何变成语言所调用。
不但如此,c#还能为c++程序员提供快捷的开发方式,又没有丢掉c和c++的基本特征-强大的控制能力。c#和c++有着很多程度上的相似性,熟悉c和c++的开发人员很快就能精通c#。
特发此文章让大家对流行的c#多些关注和学习。主要还是我的自勉。引自:见网页c#电子书稿

由 乐侠 发表于 2003年11月23日 10:58
回复
发表回复









记住我的信息?