《C#4.0图解教程》读书笔记,1.C#和.net框架

  本文作为《C#4.0图解教程》系列的开篇,先介绍下本书吧!作为.net平台上主要的编程语言,C#在不断地改进和完善,功能越来越强大。当然,复杂性也随之增加,令很多初学者不得其门而入。
  如何才能更让人轻松的学习和掌握C#呢?本书作者总结了自己数十年软件开发和教学培训经验,创造了一种全新的可视化叙述方式,在书中,他通过大量图、表和代码,与简洁的文字完美配合,从底层运行原理的角度阐释了最新版C#和.net的所有基本特性,使原本非常复杂的知识点变得简单明了、清晰透彻,让人耳目一新,大大降低了学习难度。显然,对于C#初学者来说,本书是最佳选择。

1..net框架由三部分组成,执行环境为CLR。CLR在运行期间管理程序的执行,包括以下内容:
   (1)内存管理
   (2)代码安全验证
   (3)代码执行、线程管理及异常处理
   (4)垃圾收集
  编程工具涵盖了编码和调试需要的一切,包括以下几点:
   (1)Visual Studio集成开发环境
   (2).net兼容编译器
   (3)调试器
   (4)网站开发服务器端技术,比如ASP.NET和WCF
2.自动垃圾收集
CLR有一项服务称为GC(Garbage Collector,垃圾收集),它能为你自动管理内存。
GC自动从内存中删除程序不再访问的对象。
GC 使程序员不再操心许多以前必须执行的任务,比如释放内存和检查内存泄露。
3.CIL
.net语言的编译器接受源码文件,并生成名为程序集的输出文件。
程序集要么是可执行的,要么是DLL。
程序集里的代码并不是本机代码,而是一种名称为CIL(Common Intermendiate Language)的中间语言
程序集包含的信息中,包括下列项目:
程序的CIL
程序中使用类型的元数据
对其它程序集引用的元数据
4.编译成本机代码并执行
程序的CIL直到他被调用时才会编译成本机代码。在运行时,CLR执行下面的步骤:
(1)检查程序集的安全特性
(2)在内存中分配空间
(3)把程序集中的可执行代码发给实时(Just-in-Time,JIT)编译器,把其中一部分编译成本机代码。
程序集中的可执行代码只在需要的时候有JIT编译器编译,然后它就被缓存起来以备后来的程序中执行。使用这个方法意味着不被调用的代码不会编译成本机代码,而且被调用的代码之被编译一次。
5.每一种语言都有一组内置的类型,用来表示如整数、浮点数和字符等之类的对象。在历史上,这些类型的特征因编程语言和平台的不同而不同。例如,组成整数的位数对于不同的语言和平台就有很大的差别。
然而,这种统一性的缺乏使我们难以使用不同语言编写的程序及库一起良好协作。为了有序协作,必须有一组标准。
CLI(Common Language Infrastructure,公共语言基础结构)就是这样的一组标准,他把所有.net框架的组件连接成一个内聚的、一致的系统。它展示了系统的概念和架构,并详细说明了所有软件都必须坚持的规则和约定。CLI的组成有:
CLR公共语言运行库、CLS公共语言规范、BCL基类库、元数据定义及语义、CTS公共类型系统、CIL公共中间语言。
CLI的重要组成部分:
1公共类型系统CTS(Common type system)定义了那些在托管代码中一定会使用的类型的特征。CTS一些重要方面如下;
CTS定义了一组丰富的内置类型,以及每种类型固有的、独有的特性。
.net兼容编程语言提供的类型通常映射到CTS中已定义的内置类型集的某一个特殊子集。
CTS最重要的特征之一是所有类型都继承自公共的基类-Object。
2公共语言规范CLS(Common language specification)详细说明了一个.net兼容编程语言的规则、属性和行为,其主题包括数据类型、类结构和参数传递。

转载于:https://www.cnblogs.com/DynamicER/archive/2012/07/12/2588714.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值