FCL(Framework Class Library) Framework 类库: FCL是 .net Framework 包含的一组DLL程序集的统称,FCL包含了提供了很多功能,关于这一部分没有什么好说的,只需要了解大致你需要的功能由什么类提供以及类型在那个命名空间,接着在查询接口文档即可.以下是FCL常用的命名空间 CTS(Common Type System)公共类型系统CTS 是是微软制定的一套类的定义规则,如果存在与CTS不符合的定义或者功能则会出错,但是不使用则会通过CTS规范规…
在了解CLR运行之前让我们先简单了解一下IL 除了编译器编译的IL代码,IL也是一种汇编语言,也就是说我们可以直接编写IL代码,当然也有对应的IL编译器,值得一提的是对于面向CLR的其他语言,CLR只开放了一部分功能,而IL可以访问CLR的全部功能. 前面一章我们介绍了CLR的所有初始工作,最后在调用Main入口方法的时候,CLR需要将程序集中的IL代码转为CPU指令,也就是CLR中JIT(just-in-time)编译器的职责,CLR会即时编译IL代码 即时编译:在运行的时候才会进行编译(类似…
写这个纯粹是自己的一点学习总结,其实就学习的笔记整理,相当于对自己的一点督促,如有看到不正确的欢迎指出 一般我们写代码都是使用的高级语言,但是在CLR中运行的代码并不是我们直接写的代码,而是通过我们选择对应语言的编辑器生产的中间语言运行,所以一开始会介绍,在CLR运行之前,到底做了什么? 所有面向CLR的语言都可以在CLR中运行并编译,例如C#.F#,在代码在CLR运行之前,则先会选择对应的编译器进行编译,并生产中间语言(IL),所以实际运行的是中间语言,之所以CLR能实现多种语言兼容也是因为如…
这一节先简单的讨论一下程序集以及CLR的初始化 虽然对应的编译器会生成托管模块,但实际上CLR不与托管模块工作,编译器除了编译还有将生成的托管模块转换为程序集的功能,微软还提供了工具AL.exe(程序集链接器)手动生成程序集. 程序集: 1.是一个或者多个模块或者资源的分组,是安全性.重用.版本控制的最小单元. 2.程序集还有一个类似于懒加载的机制,将不常用的类或者资源放在一个单独的文件中,当使用时才会下载,可以节约磁盘和缩短安装时间 3.此外程序集还可以自描述,在CLR读取程序集时无需额外信息…
第一章(初识Python)知识点归纳 Python是从ABC语言衍生而来的 ABC语言是Guido参与设计的一种教学语言,为非专业编程人员所开发的. Python是荷兰程序员 Guido Van Rossum于1991推出的,保留着ABC的很多功能,而且也融入了Modula-3语言的元素. Modula-3有着简单和安全的特点. Python命名的灵感来自BBC的喜剧<巨蟒剧团这飞翔的马戏团>,这门语言与蟒蛇没有直接的联系,虽然剧团的成员John Cleese最初命名时隐含着“阴险”.“虚伪”…
公共语言运行时(Common Language Runtime,CLR)是一个可由多种编程语言使用的"运行时".他主要提供的功能有:程序集加载,内存管理,,安全性,异常处理,线程同步.这些功能可由面向CLR的所有语言所使用.…
-d是directory 目录的意思 cls:清楚doc里面的内容 ipconfig:显示网络配置信息 java -version:检查安装的jdk版本信息 是类型自动向上转换.  在输出时,根据当前变量的数据类型,决定内容的输出.,这个时候,是将字符A的ASCII码赋值给变量b  此时变量b管理的内存块是一个数字 ,  char b='a';此时变量b的内存中存放的是字符'a',所以读取的时候,也是'a'  强转是有高级类型向低级类型转换 根据数据类型的范围 大的数据类型转小的数据类型 强制转…
Android 系统为开发者提供了什么? 四大组件 活动(Activity):界面 服务(Service):后台默默运行 广播接收器(Broadcast Receiver):接收.发送广播消息 内容提供器(Content Provider):应用程序之间共享数据 系统控件(界面控件) SQLite 数据库 多媒体 地理位置定位 日志 几种日志级别:verbose, debug, info, warn, error 源码 源码见:https://github.com/optor666/first-…
编译器将源代码编译为托管模块.托管木块包含: PE32或PE32+头 CLR头 元数据 IL(中间语言)代码 PE32头的文件可在32或64位的电脑上运行,PE32+的只能在64上运行.Window64位版本提供了一个WoW64的技术,允许32位的程序运行. CLRVer.exe能够列出一台电脑上安装的所有的CLR版本.-all命令可以查看正在运行的进程是使用的CLR版本号. /optimize /debug决定代码的IL优化和本地代码的优化质量. NGen.exe可以在一个应用程序安装到用户的…
前言: Artech觉得掌握ASP.NET MVC具有三个层次. 第一层了解基本的编程模式,掌握Controller和View的定义方式,知道路由如何注册以及验证规则如何定义. 第二个层次要求我们对ASP.NET MVC框架本身从请求接收到响应回复的整个流程具有一个清晰的认识,这包括请求如何被路由.目标Controller如何被激活.Model元数据如何被解析.Action方法如何被执行,View如何呈现等. 第三层ASP.NET MVC本身是一个极具可扩展的开发框架,合理利用其扩展性可以解决很…