C#——浅谈概括

来源:互联网 发布:图片合集软件 编辑:程序博客网 时间:2024/05/03 06:54

    经过一个多星期的看视频阶段,终于对c#有了初步的了解,可是一些比较新接触过得概念理解的还是不到位,希望在以后学习中不断补充。第一次接触到.NET Framework的时候还没有看视频,那时候想着一边看视频一边敲例子,于是就想要安装一个VS,安装VS的前提就是.NET Framework的版本是否够格,这是对他的第一印象,今天就来好好总结一下这部分知识吧。

1.NET Framework基本概念

    C#是一门编程语言,它用户实现与计算机的对话,但其编写的程序是需要编译和运行的,.NET Framework就是应用程序运行时的执行环境。


公共语言运行库(CLR)

.NET Framework的核心,为我们定位、加载和管理.NET的类型,在CLR执行编写好的源代码之前,需要编译它们,分为两个阶段:

(1)把源代码编译为Microsoft中间语言(CIL)
(2)CLR把CIL编译(JIT编译器)为平台专用的代码

这里对于一些名词理解流于表面,不能深入理解中间语言的意义,查了一些相关资料:

编译成中间语言的作用:中间语言属于低级语言,他可以快速的转换为本地的机器码
这种通用语言的优点是:平台无关性、提高性能和语言的互操作性(任何一种语言编译为中间语言,编译为中间语言的代码可以从其他语言编译过来的代码进行交互操作)

一些相关概念:

1.程序集:在编译应用程序时,所创建的CIL代码存储在一个程序集中。程序集包括可执行应用程序文件(.exe文件)和其他应用程序使用的库(.dll),除了CIL

2.托管代码:在将代码编译为 CIL,再用 JIT 编译器将它编译为本机代码后,CLR 的任务还没有全部完成,还需要管理正在执行的用.NET Framework 编写的代码。即CLR 管理着应用程序,其方式是管理内存、处理安全性以及允许进行跨语言调试等。相反,不受 CLR 控制运行的应用程序属于非托管类型

3.垃圾回收:托管代码最重要的一个功能是垃圾回收(garbage collection)。 这种.NET 方法可确保应用程序不再使用某些内存时,就会完全释放这些内存。

通用类型系统(CTS)

规范完整描述了运行库所支持的所有可能的数据类型和编成结构,制定了这些实体间如何交互


公共语言规范(CLS)

定义了一个让所有.NET语言都支持的公共类型和编成结构的子集。





2.如何组合一个.NET


最后在托管的CLR中运行本机代码,以及其他应用程序或进程




 小结:这一篇总结的有点杂乱,其实总结之前,对于.NET Framework的了解就是看了一遍视频的程度,因为基础比较薄弱,而且这部分内容非常生涩,所以查了好几本书的这部分的介绍,虽然看上去有一些知识点的堆砌,但是对于我自己的好处是显而易见的,在码这些概念的同时,我也加深了对这部分知识的理解,原来对于这种后台的编译,涉及到底层的知识,我是不想去深究的,因为越深究查的东西越多,越不懂,但是这次不懂我也硬着头皮写,最后反而觉得理清了思路,明朗了许多。


1 0
原创粉丝点击