《和NET框架概述课件》由会员分享,可在线阅读,更多相关《和NET框架概述课件(84页珍藏版)》请在金锄头文库上搜索。
1、2020/9/30,1,第3章 C#和.NET框架概述,2020/9/30,2,内容概要,3.1 Visual Studio .NET概述 3.2 C#概述 注:MSDN,Microsoft Developer Network中有关于.NET和C#的详细介绍!,2020/9/30,3,3.1.1 .NET介绍 3.1.2 .NET框架的结构 3.1.3 .NET框架的基本概念 3.1.4 .NET框架命名空间 3.1.5 浏览Visual Studio .NET,3.1 Visual Studio .NET概述,2020/9/30,4,3.1.1 .NET介绍,问题: 1、一个软件公司有两组程
2、序员,一组程序员只会使用C+,一组程序员只会使用VB,现在有一个大型项目需要大量人员参加,我们能让这两组人在一起工作吗? 2、我们能用ASP调用C+写的类库吗?,2020/9/30,5,3.1.1 .NET介绍,答案是否定的!,解决: 怎么办? 这就是 .NET Framework 要解决的问题 什么是 NET Framework? .NET Framework 是如何解决这类问题的? Microsoft首席执行官鲍尔默:“.NET代表一个集合、一个环境、一个可以作为平台支持下一代Internet的可编程结构” 。,2020/9/30,6,.NET框架在计算机系统中的位置,3.1.1 .NET
3、介绍,2020/9/30,7,3.1.1 .NET介绍,.NET Framework 是支持生成和运行下一代应用程序和 XML Web Services 的内部 Windows 组件: 公共语言运行时(CLR) .NET Framework类库(FCL) .NET 1.1:集成在Windows Studio .NET 2003 .NET 2.0:集成在Windows Studio .NET 2005/2008 .NET 3.0:集成在Windows Studio .NET 2005/2008 .NET 3.5:集成在Windows Studio .NET 2008,2020/9/30,8,操作
4、系统,公共语言运行时 (CLR),VC+.Net,C#,VB.Net,VJ#,.Net Framework 类库 (FCL),3.1.2 .NET框架的结构,2020/9/30,9,3.1.2 .NET框架的结构,2020/9/30,10,3.1.2 .NET框架的结构,.NET框架的多层结构设计使得整个框架对于操作系统和编程语言都是独立的,针对.NET平台编程时可以使用多种编程语言,同时编写的应用程序可以移植到不同的操作系统中: 1、现有的.NET的编程语言:C#、VB.NET、C+、J#以及众多第三方厂商开发的编程语言; 2、现有的支持.NET平台(开发)的操作系统:Windows 98/
5、Me/ 2000/XP/2003/2008以及Windows CE、Windows CE.NET等。,2020/9/30,11,3.1.3 .NET框架的基本概念,COM:Component Object Model,允许对象向其他组件和宿主应用程序公开其功能,提供组件之间的公共接口; CLR:公共语言运行时,提供.NET所需的基本服务,例如内存管理、线程管理、代码执行、代码编译和其他系统服务等,CLR是.NET的核心,通过托管代码来实现; BCL:基本类库,定义了所有的数据类型和管理.NET核心功能的基本类,如文件输入/输出、线程、安全性等; ADO.NET和XML:是两种具有特殊功能的类,
6、用来实现对数据库和XML格式文档的操作; CLS:公共语言规范,对不同的编程语言实现统一的编译接口; C#等:是.NET框架支持的高级程序设计语言。,2020/9/30,12,.NET的演变历史,在COM之前,应用程序是完全分开的实体,它们之间只有很少或没有任何集成关系。,应用,代码和数据结构,2020/9/30,13,.NET的演变历史,COM提供了组件集成的方法。但是, 每个组件必须提供细节复杂的管道接口,对象不能直接交互。,2020/9/30,14,.NET的演变历史,使用 .NET Framework的公共语言运行时(CLR), 组件都建立在一个共同的底层基础上. 不再需要管道的繁琐细
7、节,对象可以直接交互。,2020/9/30,15,.NET框架的工作流程,2020/9/30,16,应用程序,包括各种高级语言编写的.NET源代码,通过CLS(公共语言规范)编译,形成MSIL中间代码; MSIL(Microsoft中间语言):是一种抽象语言,由一组特定的指令组成,这些指令指明如何执行代码。独立于任何一种高级编程语言,也独立于任何一种硬件平台和操作系统; 在公共语言运行时的作用下,通过JIT形成二进制机器代码; JIT(Just-In-Time,即时编译):多种,可在不同计算机结构中运行。加快了MSIL的运行速度,同时也避免了.NET程序启动速度过慢。 任何一种编程语言都使用相
8、同的.NET类库中提供的类和方法,不同语言通过.NET框架编写的程序功能都是一致的。,.NET框架的工作流程,2020/9/30,17,日语,汉语,翻译,英语(中间语言,MSIL),模拟CLR和MSIL,2020/9/30,18,代码执行流程示例,2020/9/30,19,CLR的作用,问题:CLR在 .NET Framework 里起到什么样的作用? CLR 负责公共语言程序(MSIL程序)的正常运行(编译) 通用语言规范 (CLS) 规定所有.NET语言都应遵循的规则和约束 生成可与其他不同语言互操作的应用程序 公共类型系统 (CTS) 通常 包含标准数据类型(单精度整型数标准类型是Int
9、32,在VB.NET中是integer,而在C#中是int) 包含操作准则集 CLS、CTS 和 MSIL 紧密配合以实现语言互操作性,2020/9/30,20,3.1.4 .NET框架的命名空间,命名空间(Namespace)提供了一种组织类和其他类型资源的一种逻辑组合方式; 相当于C+中的类库 .NET中的任何一个类都包含在命名空间中,引用一个类,首先要注明该类所在的命名空间 语法: namespace test ,2020/9/30,21,3.1.4 .NET框架的命名空间,using System; namespace SpacenameTest class Program stati
10、c void Main(string args) A.Print a = new A.Print(); a.DoPrint(); ,namespace A public class Print public void DoPrint() Console.WriteLine(My NameSpace A); ,2020/9/30,22,3.1.4 .NET框架的命名空间,2020/9/30,23,3.1.5 浏览Visual Studio .NET,Visual Studio .NET,简称VS.NET 2003版(.NET framework1.1) 2005版(支持.NET framewor
11、k 2.0和3.0) 2008版(支持.NET framework 2.0、3.0 和3.5) 2010版(支持.NET framework 4.0) VS.NET是目前最流行、最方便,也是功能最强大的.NET应用程序集成开发环境。,2020/9/30,24,1、VS.NET的主要内容,2020/9/30,25,1、VS.NET的主要内容,.NET Framework:.NET框架(CLR和CLS) C#、VB.NET、VC+等:高级编程语言; WinForm、WebForm:基于.NET的最常用的应用开发; ASP.NET:用于开发基于Web Form的应用程序的功能类库; ADO.NET:
12、用于开发基于数据库的应用程序的功能类库; XML:用于开发XML服务的相关类库; WEB Services:用于开发Web Services服务的相关类库。,2020/9/30,26,Visual Studio .NET 2005是一套完整的开发工具,用于构建高性能的控制台应用程序、桌面应用程序、XML Web Services、移动应用程序和 ASP Web 应用程序。 VS.NET IDE 的主要特点在于: 自定义 IDE(集成开发环境) 选项卡式窗口管理模式 .NET中主要功能以窗口形式展现,Visual Studio .NET 2005的功能,2020/9/30,27,2、VS.NET
13、 2005 IDE,Visual Studio .NET IDE,2020/9/30,28,2、VS.NET 2005 IDE,工具按钮,选项卡式文档,菜单栏,2020/9/30,29,视图,工具栏,2、VS.NET 2005 IDE,2020/9/30,30,2、VS.NET 2005 IDE,解决方案资源管理器,类视图,2020/9/30,31,2、VS.NET 2005 IDE,视图,“属性”窗口,2020/9/30,32,2、VS.NET 2005 IDE,视图,服务器资源管理器,2020/9/30,33,2、VS.NET 2005 IDE,主设计界面,工具箱,错误列表,2020/9/
14、30,34,2、VS.NET 2005 IDE,2020/9/30,35,2、VS.NET 2005 IDE,2020/9/30,36,2、VS.NET集成环境,VS.NET具有以下最基本的功能: (1)把光标放在隐藏的窗口上,便会自动弹出这些窗口。 (2)“工具箱”窗口显示常用的窗体控件,通过简单的拖曳操作,可以快速开发图形化界面工程。 (3)“解决方案资源管理器”窗口显示当前解决方案的信息(解决方案即一个或多个工程及其配置的综合),窗口中可以查看解决方案中工程的各种视图,如其中的文件等。 (4)“属性”窗口显示工程内容更详细的信息,可以对工程中的单个控件或其他对象进行配置。例如,可以使用“
15、属性”窗口改变Windows工程中一个按钮的外观、大小等。 (5)“错误列表” 、“任务列表”和“输出”窗口显示项目编译时的基本信息,以及开发环境已经完成的任务。,2020/9/30,37,3、VS.NET解决方案和项目结构,解决方案: 相当于一个容器,用来存放创建应用程序的项目文件组织结构和项目的内容(如窗体文件、代码文件等); 一个解决方案通常包括一个或几个相关联的项目,如Windows程序、类库、ASP.NET程序、Web Services等; 项目: 解决方案内的更小的容器,用来对其组成部分进行编译、调试以及进行逻辑上的管理; 一个项目通常包括一个完整程序所包含的各种元素,如窗体、类、
16、代码文件、图片等等。,2020/9/30,38,4、基于VS.NET的开发过程,编写设计 说明书,生成,测试 和调试,设计用户界面 编写代码,创建 新项目,Visual Studio .NET,发布,2020/9/30,39,4、基于VS.NET的开发过程,2020/9/30,40,5、应用程序类型,控制台应用程序 Windows 应用程序 ASP.NET 网站(Web 应用程序) 设备应用程序 Windows 服务 类库 或 Windows窗体控件库 ASP.NET Web 服务 ,2020/9/30,41,第一个C#程序:Hello World,实现一个最简单的应用:Hello World。,2020/9/30,42,5、应用程序类型,1)控制台应用程序(console application) 采用命令行执行方式(面向结构的) 即DOS下应用程序 在VS.