C#学习笔记(四)-- .NET Framework与C#简介

为了进一步打好基础下一步的学习将围绕《C#入门经典(第8版)》展开。

一、.NET Framework和.NETCore简介

       .NETFramework包含了一个庞大的代码库,主要应用于面向对象编程技术(Object-Oriented Promgramming,OOP),同时.NETFramework库还定义了一些基本类型,有助于使用.NETFramework的各种语言之间进行交互操作,这称为通用类型系统(Common Type System,CTS),除了这个库以外.NETFramework还包含.NET公共语言运行库(Common Language Runtime,CLR),它负责管理用.NET库开发的所有应用程序的执行。

        在编译使用.NETFramework或.NET Core库的代码时,需要把代码编译为中间语言(Common Intermediate Language,CIL),这些CIL代码被存储在一个程序集中(程序集中还包括可执行程序.exe其他程序使用的库.dll),而Just-In-Time(JIT)编译器会把它编译为专用于OS和目标机器架构的本机代码仅在需要时进行编译)。将代码编译为CIL,再用JIT编译器将它编译为本机代码后,CLR/CoreCLR的任务尚未完全完成,还需要管理正在执行的用.NET Framework和.NET Core编写的代码。即CLR/CoreCLR管理着应用程序,其方式是管理内存、处理安全性以及允许进行跨语言调试,相反,不受CLR/CoreCLR控制运行的应用程序属于非托管类型,在C#中只能编写在托管环境下运行的代码,代码托管可以确保程序不再使用某些内存时,就会完全释放这些内存,避免大块内存被分配到错误的地方,导致系统变慢。

二、C#的含义

        C#因其语法简单,因此其开发应用程序比C++简单,但C#是一种强大的语言,在C++中可以完成的任务几乎都可以利用C#完成。C#中一旦为某个数据制定了类型,就不能转换为另一种不相关的类型,因此C#编写的代码通常会比C++编写的要长,但C#代码更健壮,调试起来比较简单,.NET可以始终随时跟踪数据的类型。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值