第1章C#语言概述与.NET平台
本章将对C#程序设计语言的主要特点、.NET Frameworks、Visual Studio2010的新特性及安装进行简单的介绍。并对C#语言与其他程序设计语言进行了比较,通过创建简单的C#程序简单了解C#程序的基本结构,熟悉Microsoft Visual Studio2010开发环境的界面。
知识目标:
●了解C#语言的主要特点。
●了解C#语言与其他程序设计语言的不同之处。
●了解.NET Frameworks的概况。
●了解Visual Studio2010的新特性。
●熟悉Visual Studio2010开发环境。
●掌握使用C#创建简单的控制台应用程序。
●掌握C#程序的基本结构。
1.1C#语言概述
C#(C sharp)是微软对这一问题的解决方案。C#是一种最新的、面向对象的编程语言。它使得程序员可以快速地编写各种基于Microsoft.NET平台的应用程序,Microsoft.NET 提供了一系列的工具和服务来最大程度地开发利用计算与通讯领域。使用C#语言可以开发在.NET Framework上运行的多种应用程序,包括:控制台应用程序、Windows窗体应用程序、Web应用程序以及Web服务等。
正是由于C#面向对象的卓越设计,使它成为构建各类组件的理想之选——无论是高级的商业对象还是系统级的应用程序。使用简单的C#语言结构,这些组件可以方便的转化为XML网络服务,从而使它们可以由任何语言在任何操作系统上通过Internet进行调用。
最重要的是,C#使得C++程序员可以高效的开发程序,而绝不损失C/C++原有的强大的功能。因为这种继承关系,C#与C/C++具有极大的相似性,熟悉类似语言的开发者可以很快的转向C#。
1.1.1C#的主要特点:
1.完全面向对象。
2.解释性:C#也是一种特殊的解释性语言。
3.跟Java类似:C#代码经过编译后,成为了一种IL(中间语言)。在运行时,再把IL编译为平台专用的代码。
4.健壮:C#在检查程序错误和编译与运行时错误一点也不逊于Java,C#也用了自动管理内存机制。
5.C#不像Java那样完全摒弃了指针和手动内存管理。C#默认情况下是不能使用指针的,程序员在有必要时可以打开指针来使用。这样可以保证编程的灵活性。
6.组件模式:C#很适合组件开发。各个组件可以由其他语言实现的,然后集成在 中。
7.支持分布式:之所以有C#,是因为微软相信分布式应用程序是未来的趋势,即处理过程分布在客户机和服务器上。所以C#一出生就注定了能很好解决分布式问题。
8.高性能:C#把代码编译成中间语言后,可以高效的执行程序。
9.可移植性:由于C#使用类似Java的中间语言机制。使得C#也跟Java类似,可以很方便的移植到其他系统。在运行时,再把中间代码编译为适合特定机器的代码。
10.安全性:C#的安全性是有平台来提供的。C#代码编译后成为IL语言。是一种受控代码,提供类型安全检查等机制保证代码是安全的。
11.多线程:与Java类似,可以由一个主进程分出多个执行小任务的多线程。
1.1.2C#与java、C++的比较
C#是在Java流行起来后所诞生的一种新的语言。由于微软在操作系统上占有很大的优势。在以往的开发中累积了不少经验,所形成的平台,所以C#在Windows方面可以说比Java具有更大的优势。如果单纯从技术上来讲,C#在网络编程上可以与Java匹敌。C#还在Windows Forms也有一定的优势。
C#是一种非常类似于C++的语言,风格是更接近于Java,不管是C++程序员还是Java 程序员,都可以很方便的转到C#上来。
总的来说,C++高效但是不安全,Java(跨平台)安全但是较低效,C#安全且较高效。表1-1列出了这三种OOP语言在若干功能和特点方面的比较。
表1-1C++、Java与C#的比较
功能C++Java C#
跨平台源代码
(部分)
字节码CLI(不流行)
执行方式编译编译+解释编译+JIT转换
中间代码无字节码Bytecode中间语言MSIL
运行环境操作系统JRE/JVM CLR/VES
内存管理直接分配
和删除垃圾内存自动回
垃圾内存自动回
多重类继
支持不支持不支持
操作符重
支持不支持部分支持
对象访问地址/指
引用引用
接口类型无有有
属性成员无无有
成员可用
不支持使用反射使用反射
命名空间支持包机制支持指针支持不支持部分支持(非安全
代码)
函数指针支持适配器+监听程
委托
全局函数
与变量
有无无
无符号整
数类型
有无有
大十进制
数类型
无有(库)有(语言)
强制类型
转换
支持不支持支持
越界自动
检查
无有有
多维数组数组的数
数组的数组真正多维数组索引支持不支持支持
泛型编译时模
板运行时泛型(有
限制)
编译时模板
泛型类型
编译
具体化类型擦除具体化
线程同步调用函数语言内部语言内部
异常处理可选支持检查异常只支持非检查异
标准类库贫乏丰富庞大
适用领域
面向对象
系统和界
面编程
跨平台(服务器
端)
网络编程
Windows平台的
.
NET
和组件编程
1.2.NET Framework概述
.NET框架是针对开发者提出的一个概念,开发者在进行开发时,要利用开发工具编写源代码,编译后将程序部署到客户端,让它运行,这是一整套开发过程。传统的开发过程可以使用VB、VC等不同的开发工具,但在.NET框架下,可以统一开发过程,.NET 框架包含两个部分:公共语言运行库和类库。公共语言运行库的概念和Java虚拟机相似,是一个虚拟的运行环境,开发的应用程序都在这个运行库上运行;另一部分是类库,类库支持开发者的功能和系统调用,所以,在类库的支持下,才能开发在公共语言运行库上运行的应用程序。下面从左到右来看这幅图,在.NET框架的支持下,可以利用各种不同的编程语言来开发应用程序,这些编程语言最终产生的程序的内在都是一样的,它们的源代码会被统一地编译成微软中间代码,它是一种专门在虚拟平台上运行的代码,类似于Java 的Bytecode字节码。中间代码在公共语言运行库的支持下运行,如果虚拟代码要在x86CPU上运行,就必须转换成机器码,那么公共语言运行库有这样的机制,帮助我们在运行的时候把中间代码(MSIL Code)转换成本地代码,这样本地代码就能在操作系统和计算机上运行。所以,.NET框架是开发者最需要关注
的部分,应用程序的开发都是针对.NET框架的,应用程序也需要在.NET框架的支持下才能运行。对于开发者来说,所要学习和掌握的主要就是.NET框架,要了解如何使用一种编程语言(VB.NET或C#)在.NET 框架上开发应用程序。
NET Framework是一种技术,该技术支持生成和运行下一代应用程序和XML Web Services。.NET Framework旨在实现以下功能:
1)提供一个一致的面向对象的编程环境,而无论对象代码是在本地存储和执行,还是在本地执行但在Internet上分布,或者是在远程执行的。
2)提供一个将软件部署和版本控制冲突最小化的代码执行环境。
3)提供一个可提高代码(包括由未知的或不完全受信任的第三方创建的代码)执行安全性的代码执行环境。
4)提供一个可消除脚本环境或解释环境的性能问题的代码执行环境。
5)使开发人员的经验在面对类型大不相同的应用程序(如基于Windows的应用程序和基于Web的应用程序)时保持一致。
6)按照工业标准生成所有通信,以确保基于.NET Framework的代码可与任何其他代码集成。
.NET框架提供了帮助开发应用程序的类库集。但.NET框架不仅仅是一种类库集。.NET框架是创建、部署和运行Web服务及其他应用程序的一个环境。.NET框架由如下几个部分组成。
1)位于.NET框架最底层的结构是WINDOWS API和COM+服务。WINDOWS API 是操作系统提供的一个很大的服务中心。调用这个服务中心的各种服务(每一种服务就是一个函数),可以帮应用程序达到开启视窗、描绘图形、使用周边设备等目的。COM+是一种组件标准。COM+紧紧地与操作系统结合起来,通过系统服务为应用程序提供全面的服务。WINDOWS API和COM+服务,这里简单了解一下即可。.NET框架建立在这个基
础上以后,从而使基于.NET框架开发的应用程序,可以充分利用系统提供的功能和资源。
2)公共语言运行库主要是指对应用程序代码的管理,同时提供应用程序代码所需要的基本服务,例如内存管理、垃圾收集、结构化异常处理和多线程。同时也加强严格的类型安全和促进代码正确来确保程序的安全性和健壮性。为应用程序编写代码的时候,如果代码是针对公共语言运行库的,则认为是可管理的代码,否则将被认为是不可管理的代码。
3).NET Framework类库是由基本数据类型和.NET核心功能类组成。基本数据类型包括数值类型、日期类型、字符串类型、数组和集合等等。.NET核心功能类则提供了文件输入/输出、线程、序列化和安全性等等这些方面的开发支持。
4)数据层是由用来访问数据相关的类而组成的。与数据访问相关的部分通常被称为ADO.NET。ADO.NET就是ADO(ActiveX Data Object)在.NET中相对应的技术。XML 层是由操作XML的相关的类而组成的。XML可以理解成一种文件格式,.NET用它来存储几乎所有类型的信息。
目前流行的编程语言
5)ASP.NET既包含了用于生成Web界面的类,也包含了XML Web services,为Web 应用程序开发提供支持。Windows窗体则包含了用于生成Windows界面的类。
1.3Visual Studio2010
Visual Studio2010是由微软公司推出的一个强大的集成开发环境(Integrated Development Enviroment,IDE),从1998年的Visual Studio6.0到V1sualStudio2010无论是在界面上还是在功能上都有了显著的不同和改进。Visual Studio2010支持多种开发语言,Visual Basic、Visual C十十、Visual C#和Visual F#都可以使用。Visual Studio2010同时带来了NET Framework4.0、Microsoft Visual Studio2010CTP(Community Technology Preview--CTP),并且支持开发面向Windows7的应用程序。除了Microsoft SQL Server,它还支持IBM DB2和Oracle数据库。
1.3.1Visual Studio2010的安装
1、支持的操作系统及软件要求
1)Windows XP(x86)Service Pack3–除Starter Edition之外的所有版本
2)Windows Vista(x86和x64)Service Pack2-除Starter Edition之外的所有版本
3)Windows7(x86和x64)
4)Windows Server2003(x86和x64)Service Pack2–所有版本如果不存在MSXML6,则用户必须安装它
5)Windows Server2003R2(x86和x64)-所有版本
6)Windows Server2008(x86和x64)Service Pack2–所有版本
7)Windows Server2008R2(x64)–所有版本
8)Web服务器:IIS5.0或以上版本。

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。