C#的介绍

C#是一种面向对象的、运行于.net框架上的一种高级程序设计语言。

它的优点在于简单,类型安全,垃圾回收器自动回收内存,封装了许多常用的类,适合快速开发。

它的缺点在于依赖.net框架,跨平台支持有限,过度封装导致无法了解具体的内部细节,不适合对性能要求较高的项目。

.net框介绍

.NET框架是一个多语言组件开发和执行环境,它提供了一个跨语言的统一编程环境。

主要分为这五部份组成

公共语言运行库(CLR)  

NET框架应用程序的管理引擎,上至编译下到运行以及与操作系统交互,全部由CLR负责。

基类库(BCL)

 一套底层类库集,包含了开发过程中使用到的常用类库。比如MFC类库,JAVA类库,VB类库,输入/输出、字符串及数据类等等。

ADO.NET&XML  

代替ADO的一种新的数据框架,满足了ADO无法满足的三个重要需求:提供了断开的数据访问模型,

这对Web环境至关重要;提供了与XML的紧密集成;还提供了与.NET框架的无缝集成. 

ASP.NET  WEB窗体 WEB服务  

基于ASP.NET的面向Web的网络应用程序的模板

Windows窗体

基于Windows窗口应用程序的模板

托管代码:

运行需要.net框架支持的应用程序

源代码编译出来的是中间代码,运行时需要通过JIT编译器把中间代码解释成本机代码,然后才能与系统进行交互。

代码中可以方便的使用.net基类库的一些常用类。

在程序运行过程中实例化的对象存储在托管堆中,当不再使用时,由垃圾回收器定时自动回收内存。

非托管代码:

运行不需要.net框架支持的应用程序

编译出来的是本机代码,可以直接与系统进行交互。

在程序运行过程中实例化的对象存储在堆中,当不再使用时,需要编写代码进行内存回收,否则会造成内存垃圾持续增加。

原文地址:https://www.cnblogs.com/fzxiaoyi/p/8491308.html