.Net和c#笔记

ASP.Net+Android+IO开发S.Net培训、期待与您交流!

            .Net和c#笔记

1.进入Microsot.NET

  2002年,微软发布了.NET框架,声称其解决了旧问题并实现了下一代系统的目标。.NET框架是一种比MFCCOM编程技术更一致并面向对象的环境。它的特点包括以下几点。

  1)多平台:该系统可以在广泛的计算机上运行,包括服务器、桌面机到PDA和移动电话。

  2)行业标准:该系统使用行业标准的通信协议,比如XmlHTTP、、SOAPWSDL

  3)安全性:该系统提供更加安全的执行环境,即使有来源可疑的代码存在。

 

2..NET框架的组成:

  .NET框架由三部分组成

  1)执行环境称为CLRCommon Langrage RunTime 公共语言运行库)CLR在运行期管理程序的执行,包括以下内容:

       a.内存管理;b.代码安全验证;c.代码执行;d:垃圾收集

  2)编程工具涵盖了编码和调试需要的一切,包括:

       a.VisualStudio集成开发环境;b..NET兼容编译器;c.调试器;d:服务器端改进,比如Asp.NET

  3BCL(Base Class Library,基类库)是.NET框架使用的一个大的类库,而且也可以在你的程序中使用。

   [ 严格地说,.NET框架由两部分组成:CLRFCL(框架类库),不包括工具,FCLBCL的超集,还包括WindowsFroms,Asp.NETLINQ以及更多命名空间。]

 

3..NET框架的主要特点

  1)面向对象的开发环境

  2)自动垃圾收集

  3)互操作性

  4)不需要COM

  5)部署简单

  6)类型安全

  7)基类库

 

4.CIL:

  .NET语言的编译器接收源代码的文件,并生成名为程序集的输出文件,程序集可以是可执行文件或DDL

  1)程序集里的代码并不是本机代码,而是一种名为CILCommon Intermedium Language)的中间语言。

  2)程序集里包含的信息中,包括下列项目:

       a.程序的CILb.程序中使用的类型的元数据;c.对其他程序集引用的元数据。

 

5.CIL被编译成本机代码并执行的原理:

  程序的CIL直到它被调用运行时才会被编译成本机代码。在运行时,CLR执行的步骤如下所示:

  1)检查程序集的安全特性;

  2)在内存中分配空间;

  3)把程序集中的可执行代码发送给实时(Just-in-Time,JIT)编译器,把其中的一部分编译成本机代码。

  程序集中的可执行代码在需要的时候由JIT编译器编译,然后它就被缓存以备后来的程序中执行。使用这个方法意味着不被调用的代码不会被编译成本机代码,而且被调用的代码只被编译一次。

  一旦被编译成本机代码,CLR就在它运行时管理它,执行像释放无主内存、检查数组边界、检查参数类型和管理异常之类的任务,这产生两个重要的术语:

  a.托管代码:为.NET框架编写的代码称为托管代码,需要CLR

  b.非托管代码:不在CLR控制下运行的代码。

 

6.CLR

  .NET框架的核心组件是CLR,它在操作系统的顶层并管理程序的执行。还提供下列服务

  1):自动垃圾收集。

  2):安全和认证。

  3):通过访问BCL得到广泛的编程功能。

 

7.CLI

  (1):每种编程语言都有一组内置的类型,用来表示如整数、浮点数、和字符等之类的对象。在历史上,这些类型的特征在编程语言之间都不同,列如组成整数的位数在不同的语言和平台之间就有很大的差别。

  然而,这种统一的缺乏使我们难以让程序和其他使用不同语言编写的程序及库一起协作。

  CLICommon Language infrastructure,公共语言基础结构),它把所有.NET框架的组件结合成一个内聚的,一致的系统。它展示了系统的概念和架构,并详细说明了所有软件都必须坚持的规则和约定。

  (2):CLI的重要组成部分

      A:CTS(Common Type System,公共类型系统)定义了那些在托管代码中一定会使用的类型特征。CTS的一些重要方面如下:

        a.CTS定义了一组丰富的内置类型,以及每种类型确定的、详细的特征。

        b.NET兼容编程语言提供的类型通常映射到CTS中已定义的内置类型的某一个特殊子集

     c.CTS最重要的特征之一是所有类型继承自公共的基类--Objiect.

      B:公共语言规范CLS(Common Language Specification)详细说明了一个.NET兼容编程语言的规则、属性和行为

      其主题包括数据类型、类结构和参数传递

ASP.Net+Android+IO开发S.Net培训、期待与您交流!

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值