博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
.NET Framework 小概念
阅读量:5160 次
发布时间:2019-06-13

本文共 1638 字,大约阅读时间需要 5 分钟。

MSDN的解释:

.NET Framework 是为其运行的应用程序提供各种服务的托管执行环境。

CLR是.NET Framework的核心

CLR的核心是CTS和CLS

(Common Type System)CTS是通用类型系统

(Common Language Specification)CLS是公共语言定义
(Common Language Runtime)CLR公共语言运行时

Language complier:语言编译器。

MSIL:微软中间语言。
JIT:及时编译,将MSIL解释为程序可以理解的语言。
CLR的执行模型:
1、将源代码(vb、cs)编译成 托管代码块
2、将托管代码合并成程序集,也叫组件(dll)
3、加载公共语言运行库
4、执行程序集的代码
5、生成本地代码

CLI,公共语言基础架构(Common Language Infrastructure)

CLI是一个开放的技术规范,它定义了一个语言无关的跨体系结构
的运行环境,这使得开发者可以用规范内定义的各种高级语言来开
发软件,并且无需修正即可将软件运行在不同的计算机体系结构上。

BCL,基础类库(Base Class Library)

BCL是一个公共编程框架,称为基类库,
是CLI(Common Language Infrastructure,公共语言基础结构)
的规范之一,主要包括:执行网络操作,执行I/O操作,安全管理,
文本操作,数据库操作。

FCL,框架类库(Framework Class Library)

FCL提供了大粒度的编程框架,它是针对不同应用设计的框架 ,FCL

大部分实现都引用了BCL。

托管代码就是Visual Basic .NET和C#编译器编译出来的代码,

托管代码在公共语言运行库(CLR)中运行

非托管代码是运行在公共语言运行库环境(CLR)的外部,

由操作系统直接执行的代码

1、托管代码是一种中间语言,运行在CLR上;

非托管代码被编译为机器码,运行在机器上。
2、托管代码独立于平台和语言,能更好的实现不同语言平台之间的兼容;
非托管代码依赖于平台和语言。

unsafe可以用来修饰类、类的成员函数、类的全局变量,但不能用来修饰类成员函数内的局部变量

在公共语言运行时 (CLR) 中,不安全代码是指无法验证的代码。

运行unsafe ,需要设置:

单击“配置属性”文件夹。 
单击“生成”属性页。  
修改“允许不安全代码块”属性

GC(Garbage Collector)如其名,就是垃圾收集,这里仅就内存而言

.NET的GC机制两个问题:
首先,GC并不是能释放所有的资源。它不能自动释放非托管资源。
第二,GC并不是实时性的,这将会造成系统性能上的瓶颈和不确定性

.NET Framework 概念总结

1.IL/MSIL/CIL Microsoft Intermediate Language)微软中间语言(IL是MSIL的缩写,译为中间语言)
2.CTS (Common Type System)通用类型系统
3.CLS (Common Language Specification)公共语言规范
4.CLR (Common Language Runtime)公共语言运行时(也有的叫公共语言运行库)
5.JIT (Just in time)即时编译器
6.CLI 公共语言基础架构(Common Language Infrastructure)
7. BCL 基础类库(Base Class Library)
8. FCL 框架类库(Framework Class Library)

一维数组的直接赋值 int [] 名字 = new int [] { }; 中括号里面的值必须要和后面的值长度
相同 否则里面什么都不要写

转载于:https://www.cnblogs.com/ITpyy1/p/11140731.html

你可能感兴趣的文章
读《构建之法-软件工程》第四章有感
查看>>
使用 Printf via SWO/SWV 输出调试信息
查看>>
.net 分布式架构之分布式锁实现(转)
查看>>
吴恩达机器学习笔记 —— 3 线性回归回顾
查看>>
Problem E: Automatic Editing
查看>>
SpringBoot 使用 MyBatis 分页插件 PageHelper 进行分页查询
查看>>
《DSP using MATLAB》Problem 6.17
查看>>
微信公众平台开发实战Java版之如何网页授权获取用户基本信息
查看>>
一周TDD小结
查看>>
sizeof与strlen的用法
查看>>
Linux 下常见目录及其功能
查看>>
开源框架中常用的php函数
查看>>
nginx 的提升多个小文件访问的性能模块
查看>>
set&map
查看>>
集合类总结
查看>>
4.AE中的缩放,书签
查看>>
CVE-2014-6321 && MS14-066 Microsoft Schannel Remote Code Execution Vulnerability Analysis
查看>>
给一次重新选择的机会_您还会选择程序员吗?
查看>>
Mysql MHA高可用集群架构
查看>>
心急的C小加
查看>>