1.2.2 C#的优势
1. 快速应用开发(RAD)功能
支持快速应用开发(Rapid Application Development,RAD)可以说是目前开发语言最为重要的一大功能,这也正是C/C++的致命伤。网络时代应用系统的开发必须按照网络时代的速度来进行。支持快速开发可以使得开发人员的开发效率倍增,从而使得他们可以从繁重的重复性劳动中解放出来。C#的RAD功能之一是垃圾收集机制,它将减轻开发人员对内存的管理负担。利用C#的这些功能,可以使开发者通过较少的代码来实现更强大的应用程序,并且能够更好地避免错误发生,从而缩短应用系统的开发周期。
2. 语言的自由性
用C#编写的程序能最大程度地和任何支持.NET的语言互相交换信息。能够继承和使用任何语言所编写的程序可以称得上是知识的继承,这样做的好处是节省了大量的工作,而不必把COBOL等语言强行改成另一种语言,.NET让各种语言真正地互相交流了。C#和其他.NET语言有着最好的协作,这点对开发人员非常重要。全球从事编写软件的人当中,大约有50%以Visual Basic作为基本的编程工具。在跨入.NET编程时代的时候,这些人轻松地使用了VB.NET开发Web上的应用程序。想想以后你居然可以和你的那些只懂VB的同事真正在一起共同开发.NET的应用程序,这是不是一件让人轻松和高兴的事情呢?
3. 强大的Web服务器端组件
在C#的Web编程中,最让人兴奋的是Web服务器端的组件,它们不仅包括传统组件,还包括那些能够自动连接五花八门服务的可编程组件。你可以用C#编写自己的服务器端组件。服务器端组件和标准的HTML提供的服务自然是不一样的,使用它们可以更自由、更容易地进行数据绑定。更多服务器组件很快会出现,有了这些强大的组件,我们可以设计出功能更加强大的企业级分布式应用系统。
4. 支持跨平台
随着互联网应用程序的应用越来越广泛,人们逐渐意识到由于网络系统错综复杂,使用的硬件设备和软件系统各不相同,因此开发人员所设计的应用程序必须具有强大的跨平台性。C#编写的应用程序就具有强大的跨平台性,这种跨平台性也包括了C#程序的客户端可以运行在不同类型的客户端上,比如PDA、手机等非PC装置中。
5. 与XML的融合
由于XML技术真正融入到了.NET和C#之中,C#的编程变成了真正意义上的网络编程,甚至可以说.NET和C#是专为XML而设计的。使用C#的程序员可以轻松地用C#内含的类来使用XML技术。就这方面而言,C#给程序员提供了更多的自由和更好的性能来使用XML。
6. 对C++的继承
C#继承并保留了C++的强大功能,例如, C#保留了类型安全的检测和重载功能,C#还提供了一些新功能取代了一些原来的ANSI C预处理程序的功能,提高了语言的类型安全等安全性。