精通.net核心技术 原理与构架
2009-03-19 10:34
295 查看
begin @ 2009-3-18
第二章 公共语言运行库
编绎器把托管代码编绎为MSIL和元数据.存放于基于以前pe格式的文件中.
再由JIT编绎器把它们翻译为本机代码.(两种:一种为运行时动态编绎,一种为安装时代码生成的编绎模式)
工作接到一个项目,忙了几天,
到现在才继续这本书... 郁闷
mark @2009-3-22
公共语言规范(cls)
元数据是一种二进制信息,用以对存储在公共语言运行库可移植可执行文件 (PE) 文件或存储在内存中的程序进行描述。将您的代码编译为 PE 文件时,便会将元数据插入到该文件的一部分中,而将代码转换为 Microsoft 中间语言 (MSIL) 并将其插入到该文件的另一部分中。在模块或程序集中定义和引用的每个类型和成员都将在元数据中进行说明。当执行代码时,运行库将元数据加载到内存中,并引用它来发现有关代码的类、成员、继承等信息
toString() 格式化输出.
字符串,数字,日期,枚举格式化.
IFormatProvider接口
复合格式化
int i = 111;
Console.WriteLine("{0:C}", i);
//显示:¥111.00
对齐
字符串与值类型,日期,枚举,==之间的转换.
-----------------------------------------
Exception 总是以 Exception结尾
事件命名原则
用EventHandloer后缀命名事件处理程序,如下列所示。
public delegate void MouseEventHandler(object sender, MouseEvent e);
使用名为sender和e的两个参数。
Sender参数代表提出事件的对象。Sender参数永远是一个类型对象,即使它可能使用了更为特定的类型。
与事件相关的状态被封装在一个名为e的事件类范例中。要使用这个类型的正确的、特定的事件类。
public delegate void MouseEventHandler(object sender, MouseEvent e);
用EventArgs后缀命名事件自变量类,如下例所示。
public class MouseEventArgs : EventArgs {
int x;
int y;
public MouseEventArgs(int x, int y)
{ this.x = x; this.y = y; }
public int X { get { return x; } }
public int Y { get { return y; } }
}
命名事件名时,需要有之前和之后的时态概念,因此要使用现在时态和过去时态(不要使用BeforeXxx\AfterXxx的方式)。例如,可以被取消的结束事件就有Closing事件和Closed事件。
public event ControlEventHandler ControlAdded {
//..
}
用动词命名事件。
一般用CallBack后缀命名回调函数
第二章 公共语言运行库
编绎器把托管代码编绎为MSIL和元数据.存放于基于以前pe格式的文件中.
再由JIT编绎器把它们翻译为本机代码.(两种:一种为运行时动态编绎,一种为安装时代码生成的编绎模式)
工作接到一个项目,忙了几天,
到现在才继续这本书... 郁闷
mark @2009-3-22
公共语言规范(cls)
元数据是一种二进制信息,用以对存储在公共语言运行库可移植可执行文件 (PE) 文件或存储在内存中的程序进行描述。将您的代码编译为 PE 文件时,便会将元数据插入到该文件的一部分中,而将代码转换为 Microsoft 中间语言 (MSIL) 并将其插入到该文件的另一部分中。在模块或程序集中定义和引用的每个类型和成员都将在元数据中进行说明。当执行代码时,运行库将元数据加载到内存中,并引用它来发现有关代码的类、成员、继承等信息
toString() 格式化输出.
字符串,数字,日期,枚举格式化.
IFormatProvider接口
复合格式化
int i = 111;
Console.WriteLine("{0:C}", i);
//显示:¥111.00
对齐
字符串与值类型,日期,枚举,==之间的转换.
-----------------------------------------
Exception 总是以 Exception结尾
事件命名原则
用EventHandloer后缀命名事件处理程序,如下列所示。
public delegate void MouseEventHandler(object sender, MouseEvent e);
使用名为sender和e的两个参数。
Sender参数代表提出事件的对象。Sender参数永远是一个类型对象,即使它可能使用了更为特定的类型。
与事件相关的状态被封装在一个名为e的事件类范例中。要使用这个类型的正确的、特定的事件类。
public delegate void MouseEventHandler(object sender, MouseEvent e);
用EventArgs后缀命名事件自变量类,如下例所示。
public class MouseEventArgs : EventArgs {
int x;
int y;
public MouseEventArgs(int x, int y)
{ this.x = x; this.y = y; }
public int X { get { return x; } }
public int Y { get { return y; } }
}
命名事件名时,需要有之前和之后的时态概念,因此要使用现在时态和过去时态(不要使用BeforeXxx\AfterXxx的方式)。例如,可以被取消的结束事件就有Closing事件和Closed事件。
public event ControlEventHandler ControlAdded {
//..
}
用动词命名事件。
一般用CallBack后缀命名回调函数
相关文章推荐
- 精通.net核心技术 原理与构架(二)
- 精通.net核心技术 原理与构架(三)
- 精通.net核心技术 原理与构架(四)
- 精通.NET核心技术——原理与构架目录
- 精通.net核心技术 原理与构架(五)
- 精通.NET核心技术原理与构架(奋斗的小鸟)_PDF 电子书
- 精通.NET核心技术
- 《精通.Net核心技术高级特性》pdf电子书免费下载
- 精通.NET核心技术—高级特性目录
- 精通.NET核心技术高级特性(奋斗的小鸟)_PDF 电子书
- 大型网站技术架构-核心原理与案例分析-阅读笔记3
- 大型网站技术架构-核心原理与案例分析-阅读笔记4
- Java核心技术- Java内存分配原理
- 一起谈.NET技术,深入解读Silverlight的布局原理
- 学习笔记8:《大型网站技术架构 核心原理与案例分析》之 随需应变:网站的可扩展架构
- 【转】分布式环境下5种session处理策略(大型网站技术架构:核心原理与案例分析 里面的方案)
- 大型网站技术架构-核心原理与案例分析-阅读笔记6
- 大型网站技术架构:核心原理与案例分析
- [笔记] 大型网站技术架构——核心原理与案例分析 [三]
- [笔记] 大型网站技术架构——核心原理与案例分析 [六]