开发者社区> codyl> 正文
阿里云
为了无法计算的价值
打开APP
阿里云APP内打开

.NET几个重要概念

简介:
+关注继续查看

       概述

        .NET Framework 是一种技术,该技术支持生成和运行下一代应用程序和 XML Web Services。 .NETFramework 旨在实现下列目标:

  • 提供一个一致的面向对象的编程环境,而无论对象代码是在本地存储和执行,还是在本地执行但在 Internet 上分布,或者是在远程执行的。
  • 提供一个将软件部署和版本控制冲突最小化的代码执行环境。
  • 提供一个可提高代码(包括由未知的或不完全受信任的第三方创建的代码)执行安全性的代码执行环境。
  • 提供一个可消除脚本环境或解释环境的性能问题的代码执行环境。
  • 使开发人员的经验在面对类型大不相同的应用程序(如基于 Windows 的应用程序和基于 Web 的应用程序)时保持一致。
  • 按照工业标准生成所有通信,以确保基于 .NET Framework 的代码可与任何其他代码集成。
       BCL(基底类别库)

       一个公共编程框架,成为基类库,所有语言的开发者都能利用它。是CLI(Common Language Infrastructure,公共语言基础结构)的规范之一。

       CLR(公共语言运行时)   

       CLR(公共语言运行时,CommonLanguage Runtime)和Java虚拟机一样也是一个运行时环境,是一个可由多种编程语言使用的运行环境。CLR的核心功能包括:内存管理、程序集加载、安全性、异常处理和线程同步,可由面向CLR的所有语言使用。并保证应用和底层操作系统之间必要的分离。CLR是.NET Framework的主要执行引擎。

       MSIL(微软中间语言)

       在.NET框架中,公共语言基础结构允许不同的语言使用.NET框架,在程序执行过程中这些语言(C#、VB.NET等)最后都被转换成一种通用语言:MSIL(微软中间语言)。

       当我们以.NET程序语言如C#编写好代码之后,就是用.NET提供的编译器来编译程序,由此产生exe或者dll件。但此时所编译出来的代码并不是可以让CPU能马上执行的机器码,而是MSIL。在代码被调用执行时,CLR的Class Loader会将MSIL代码载入内存,通过即时(Just In Time)方式临时编译成某一平台的CPU可以执行的程序。


 


版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。

相关文章
软件编程概念与入门
软件编程概念与入门 1.概要 2 项目开发流程 3.编程提升
6 0
jQuery——jQuery基本概念
jQuery——jQuery基本概念
37 0
Docker 入门教程概念
Docker 入门教程概念
23 0
.NET中的六个重要概念:栈、堆、值类型、引用类型、装箱和拆箱
内容导读 •概述 •当你声明一个变量背后发生了什么? •堆和栈 •值类型和引用类型 •哪些是值类型,哪些是引用类型? •装箱和拆箱 •装箱和拆箱的性能问题一、概述 本文会阐述六个重要的概念:堆、栈、值类型、引用类型、装箱和拆箱。本文首先会通过阐述当你定义一个变量之后系统内部发生的改变开始讲解,然后将关注点转移到存储双雄:堆和栈。之后,我们会探讨一下值类型和引用类
1197 0
贪心算法练习题:部分背包问题
/*----------------------------------------------------- 有n个物体,第i个物体的重量是wi,价值为vi, 选若干个物体,使得在总重量不超过c的情况下让总价值尽量高。
777 0
+关注
codyl
make it possible
86
文章
1
问答
文章排行榜
最热
最新
相关电子书
更多
低代码开发师(初级)实战教程
立即下载
阿里巴巴DevOps 最佳实践手册
立即下载
冬季实战营第三期:MySQL数据库进阶实战
立即下载