C#实践教程(第2版)
上QQ阅读APP看书,第一时间看更新

1.1 C#与Microsoft Visual Studio

C#是微软公司为Visual Studio开发平台推出的一种简洁、类型安全的面向对象的编程语言,开发人员通过它可以编写在.NET Framework上运行的各种安全可靠的应用程序。本节介绍C#与Microsoft Visual Studio的概括及联系。

1.1.1 C#简介

C#是运行于.NET Framework之上的面向对象高级程序设计语言。Visual Studio开发平台凭借C#强大的可视化用户界面设计,让程序员从复杂的界面设计中解脱出来,使编程成为一种享受。

C#是面向对象的编程语言。它使得程序员可以快速地编写各种基于Microsoft .NET平台的应用程序,Microsoft .NET提供了一系列的工具和服务来最大程度地开发利用计算与通信领域。

C#不但可以开发数据库管理系统,而且也可以开发集声音、动画、视频为一体的多媒体应用程序和网络应用程序,这使得它正在成为程序开发人员使用的主流编程语言。

正是由于C#面向对象的卓越设计,使它成为构建各类组件的理想之选——无论是高级的商业对象还是系统级的应用程序。使用简单的C#语言结构,这些组件可以方便地转化为XML网络服务,从而使它们可以由任何语言在任何操作系统上通过Internet进行调用。

作为一种面向对象语言,C#支持封装、继承和多态以及所有的变量和方法,如包括应用程序入口点的Main()方法。另外,C#还通过几种创新的语言结构加快了软件组件的开发。主要包括:

委托 即封装的方法签名,它实现了类型安全的事件通知。

属性(Property) 充当私有成员变量的访问器。

属性(Attribute) 提供关于运行时类型的声明性元数据。

内联 XML的文档注释。

1. C#与Java

C#与Java都有着单一继承、接口、几乎同样的语法和编译成中间代码再运行的过程。

但是C#与Java有着明显的不同,C#是第一个面向组件的编程语言,其源码会编译成MSIL再运行。C#借鉴了Delphi的一个特点,与COM(组件对象模型)是直接集成的,而且它是微软公司.NETWindows网络框架的主角。在细节方面,二者的区别如下所示。

□ C#的Main()方法的首字母要大写。

□ C#在值类型和引用类型之间进行装箱和拆箱操作,无须创建包装类型。

□ Java中的最终类在C#中是密封的。

□ 在默认情况下,C#中的方法是非虚拟方法。

□ 为了包括编辑器的其他信息,C#支持属性操作。

2. C#与C/C++和VB

C#是一种安全的、稳定的、简单的、优雅的编程语言,由C和C++衍生出来。它在继承C和C++强大功能的同时去掉了一些它们的复杂特性。

C#可调用由C/C++编写的本机原生函数,因此拥有C/C++原有的强大的功能。由于C#与C/C++具有极大的相似性,熟悉类似语言的开发者可以很快地转向C#。在细节方面,C#与C/C++的区别如下所示。

□ 在C#程序中,类定义中右大括号后不必使用分号。

□ C#的Main()方法的首字母大写,而且是静态类的成员,该方法的返回类型为int或void。

□ C#每个主程序中都必须包含Main()方法,否则该程序不能编译。

□ C#内存直接使用垃圾收集系统来管理。

□ C#条件必须为Boolean类型。

□ C#中的switch语句和break语句不是可选的。

□ C#默认值由编译器分配(引用类型为null,值类型为0)。

C#综合了VB简单的可视化操作和C++的高运行效率,以其强大的操作能力、优雅的语法风格、创新的语言特性和便捷的面向组件编程的支持成为.NET开发的首选语言。其与VB的区别如下所示。

□ C#使用分号而不是分行符。

□ C#区分大小写,例如Main()方法的首字母大写。

□ C#条件必须为Boolean类型。

3. C#的编译执行

C#开发的程序源代码并不是编译成能够直接在操作系统上执行的二进制本地代码。与Java类似,它被编译成为中间代码,然后通过.NET Framework的虚拟机(通用语言运行时CLR)执行。

所有的.NET编程语言都被编译成这种被称为MSIL(MicroSoft Intermediate Language)的中间代码,最终的程序具有“.exe”后缀名。

如果计算机上没有安装.NET Framework,那么这些程序将不能够被执行。在程序执行时,.NET Framework将中间代码翻译成为二进制机器码,从而使它得到正确的运行。最终的二进制代码被存储在一个缓冲区中。

一旦程序使用了相同的代码,那么将会调用缓冲区中的版本。这样如果一个.NET程序第二次被运行,那么这种翻译不需要进行第二次,速度明显加快。

1.1.2 Visual Studio简介

Microsoft Visual Studio简称Visual Studio或VS,是目前最流行的Windows平台应用程序开发环境。

Microsoft Visual Studio可以用来编写创建Windows平台下的Windows应用程序和网络应用程序,也可以用来创建网络服务、智能设备应用程序和Office插件。

任何一种高级编程语言,都需要有相应的编程环境。而Visual Studio支持多种编程语言,如Visual BASIC、Visual C#和Visual C++等。

Visual Studio是一套完整的开发工具,用于生成ASP.NET Web应用程序、XML Web Services、桌面应用程序和移动应用程序。

由于Visual BASIC、Visual C#和Visual C++都使用相同的集成开发环境(IDE),这样就能够进行工具共享,并能够轻松地创建混合语言解决方案。另外,这些语言使用.NET Framework的功能,它提供了可简化ASP Web应用程序和XML Web Services开发的关键技术。

使用Visual Studio可以生成Windows应用商店应用程序、桌面应用程序、移动应用程序、ASP.NET Web应用程序和XML Web Services。还可以在Visual BASIC、Visual C#、Visual C++、Visual F#和JavaScript中编写代码,且可以更轻松地创建混合语言解决方案。

Visual Studio当前最新版本为Visual Studio 2012版本,基于.NET Framework4.5。与之前的版本相比,Visual Studio 2012版本有着六大新特性,如下所示。

□ VS 2012和VS 2010相比,VS 2012支持Windows 8 Metro开发。Metro简洁、数字化、内容优于形式、强调交互的设计已经成为未来的趋势。

□ VS 2012在界面上更容易使用,彩色的图标和按照开发、运行、调试等环境区分的颜色方案使用起来方便显眼。

□ VS 2012集成了ASP.NET MVC 4,全面支持移动和HTML 5,WF 4.5相比WF 4,更加成熟,它的设计器已经支持C#表达式。

□ VS 2012支持.NET 4.5,和.NET 4.0相比,.NET 4.5更多的是完善和改进。.NET 4.5是Windows RT被提出来的首个框架库,.NET获得了和Windows API同等的待遇。

□ VS 2012和TFS 2012实现了更好的生命周期管理,使VS 2012不仅是开发工具,也是团队的管理信息系统。

□ VS 2012对系统资源的消耗并不大,但需要Windows 7/8的支持。