01. C#和.net框架介绍

来源:互联网 发布:安徽农村高考知乎 编辑:程序博客网 时间:2024/05/22 00:33


C#编程语言是为开发微软公司的 .Net框架上的程序而设计的。而.net Framework是微软推出的一个集成的、面向对象的开发框架。

1.1 .NET框架由三部分组成:

1.公共语言运行库(CLR):在运行期管理程序的执行,包括以下内容:

    • 内存管理
    • 代码安全验证
    • 代码执行
    • 垃圾收集
2.编程工具

    • Visual Studio 集成开发环境
    • .NET兼容的编译器(例如:C#、VB、JScript和托管的C++)
    • 调试器
    • 服务器端的改进,比如ASP.NET

3. BCL(Base Class Library,基类库)   是.NET框架使用的一个大的类库。


1.2 .NET框架的改进

1.面向对象的开发环境

2.自动垃圾收集

3.互操作性

    • 允许在用不同的.NET语言编写的软件模块间无缝地交互。
    • .NET提供一种称为平台调用(platform invoke,P/Invoke)的特性,允许.NET的代码调用并使用非.NET的,但通过标准Win32 DLL导出的纯C函数的代码,比如Windows API。
    • .NET框架还允许与COM的互操作。
4.不需要COM

5.简化的部署

    • .NET程序不需要使用注册表注册。
    • .NET提供一种称为并行执行的特性,允许一个DLL的不同版本在同一台机器上存在。
6.类型安全性

CLR检查并确保参数及其他数据对象的类型安全,即使是在不同编程语言编写的组件之间。

7.基类库

    • 通用基础类:这些类提供了一组极为强大的工具,可以应用到广泛的编程任务中,比如字符串操作、安全和加密。
    • 集合类:这些类实现了列表、字典、散列表以及位数组。
    • 线程和同步类:这些类用于创建多线程程序。
    • XML类:这些类用于创建、读取以及操作XML文档。

1.3 编译成CIL

.NET语言的编译器接受源代码文件,并生成名为程序集的输出文件。程序集可以是可执行文件或DLL。程序集里的代码并不是本机代码,而是一种名称为CIL(Common Intermediate Language,公共中间语言)的中间语言。程序的CIL直到它被调用运行时才会被编译成本机代码。

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

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

    • 托管代码:为.NET框架编写的代码称为托管代码(managed Code),需要CLR。
    • 非托管代码:不在CLR控制之下运行的代码,比如Win32 C/C++ DLL,称为非托管代码。
1.4 CLI

CLI(Common Language Infrastructure,公共语言基础结构)就是这样一组标准,它把所有.net框架的组件连结成一个内聚的、一致的系统。它展示了系统的概念和架构,并详细说明了所有软件都必须坚持的规则和约定。



0 0
原创粉丝点击