【作 者】 刘晓华
【出版社】 电子工业出版社
【书 号】 750537768X
【开 本】 16开
【页 码】 844
【出版日期】 2002年8月
简介
《精通.Net核心技术原理与构架》是.NET核心技术的基础入门篇,首先扼要介绍整体的.NET框架,然后介绍.NET的基本类库、基本类型的操作,接下来介绍.NET程序设计的核心要素也是开发人员的最大的学习难点:程序集。围绕程序集讲解了其创建、反射机制、引用、版本控制、资源、特性编程等问题。一旦掌握了程序集,读者对.NET的掌握将上升到一个新的境界。之后带领开发人员熟悉.NET中的伪进程应用域和线程。围绕这两个基本概念,详细介绍了.NET中进程通信、多线程、异步调用等关键技术。《精通.Net核心技术原理与构架》还包括其他一些介绍.NET框架提供的服务的相对独立的章节:例如异常处理、特性编程、垃圾回收、多语言编程等内容。
目录
第1章 .NET和.NET框架概览
1.1 什么是.NET
1.2 什么是.NET框架
1.2.1 公共语言运行库的功能
1.2.2 .NET框架类库
1.2.3 客户端应用程序开发
1.2.4 服务器应用程序开发
1.3 小结
第2章 公共语言运行库
2.1 公共语言运行库概述
2.2 托管代码的创建
2.2.1 选择编译器
2.2.2 编译为MSIL
2.2.3 将MSIL编译为本机代码
2.2.4 执行代码
2.3 自动内存管理
2.3.1 分配内存
2.3.2 释放内存
2.3.3 生成结果和性能
2.3.4 为非托管资源释放内存
2.4 跨语言互用性
2.4.1 概述
2.4.2 公共语言规范简介
2.4.3 编写符合CLS的代码
2.5 元数据
2.5.1 元数据的优点
2.5.2 元数据和PE文件结构
2.5.3 元数据在运行时的作用
2.6 小结
第3章 通用类型系统
3.1 通用类型系统概述
3.1.1 类型的类别
3.1.2 值和对象
3.1.3 类型和程序集
3.1.4 类型和命名空间
3.2 类型成员
3.2.1 成员特征
3.2.2 重载
3.2.3 继承、重写和隐藏成员
3.3 值类型
3.3.1 内置值类型
3.3.2 用户定义的值类型
3.4 枚举类型
3.5 引用类型
3.5.1 类
3.5.2 接口
3.5.3 委托
3.5.4 指针
3.5.5 数组
3.6 类型转化
3.6.1 概述
3.6.2 类型转换表
3.7 格式化类型
3.7.1 格式化概述
3.7.2 格式说明符和格式提供程序
3.7.3 复合格式化
3.8 字符串转化为基类型
3.8.1 分析数值字符串
3.8.2 分析日期和时间字符串
3.8.3 分析其他字符申
3.9 小结
第4章 .NET框架类库
4.1 框架类库概述
4.1.1 基本功能
4.1.2 命名约定
4.1.3 类库和程序集
4.2 命名空间
4.2.1 完全限定名
4.2.2 命名空间级语句
4.2.3 NET系统命名空间
4.3 使用类库
4.4 小结
第5章 .NET框架编程规范
5.1 命名指南
5.1.1 大写样式
5.1.2 区分大小写
5.1.3 缩写
5.1.4 用词
5.1.5 避免类型名称混淆
5.1.6 命名空间命名规范
5.1.7 类命名规范
5.1.8 接口命名规范
5.1.9 属性命名规范
5.1.10 枚举类型命名规范
5.1.11 静态字段命名规范
5.1.12 参数命名规范
5.1.13 方法命名规范
5.1.14 属性命名规范
5.1.15 事件命名规范
5.2 类型使用规范
5.2.1 值类型使用规范
5.2.2 委托使用规范
5.2.3 特性使用规范
5.2.4 基类使用规范
5.3 类成员使用规范
5.3.1 造函数使用规范
5.3.2 方法使用规范
5.3.3 属性使用规范
5.3.4 事件使用规范
5.3.5 字段使用规范
5.3.6 参数使用规范
5.4 小结
第6章 初识程序集
6.1 程序集概述
6.1.1 基本功能
6.1.2 创建程序集
6.1.3 程序集的优点
6.1.4 程序集内容
6.1.5 程序集清单
6.2 用Ildasm查看程序集内容
6.3 创建程序集
6.3.1 命令行调用编译器
6.3.2 漫步命令行编译器创建程序集
6.3.3 用程序集链接器(Al.exe)创建程序集
6.4 使用程序集
6.4.1 通过引用使用程序集
6.4.2 动态加载程序集
6.4.3 部分引用
6.5 小结
第7章 版本控制
7.1 概述
7.1.1 程序集绑定请求解析过程
7.1.2 版本信息
7.1.3 区域性
7.1.4 强名称及强名程序集
7.2 强名程序集
7.2.1 强名方案
7.2.2 创建强名程序集
7.2.3 延迟签名
7.2.4 引用强名程序集
7.3 程序集定位过程
7.3.1 第1步:检查配置文件
7.3.2 第2步:检查以前引用的程序集
7.3.3 第3步:检查全局程序集缓存
7.3.4 第4步:通过代码基或探测定位程序集
7.4 .NET框架配置工具配置版本策略
7.4.1 将程序集加载到全局缓冲区
7.4.2 从全局程序集缓存中删除程序集
7.4.3 在机器范围内配置程序集的版本策略
7.4.4 设置强名程序集的全局版本策略
7.4.5 删除组件的全局版本策略
7.4.6 定制应用程序的版本策略
7.5 使用发行者策略控制组件版本
7.6 版本控制实践
7.6.1 实例1:透明引用程序集
7.6.2 实例2:同一应用程序中使用多个版本的DLL
7.6.3 实例3:使用私有路径
7.6.4 实例4:用配置文件控制程序集版本
7.7 小结
第8章 程序集高级技术
8.1 反射
8.1.1 反射的用途
8.1.2 运行时查看类型信息
8.1.3 动态调用
8.2 动态创建程序集
8.2.1 使用动态创建程序集的几种情形
8.2.2 动态创建
8.3 小结
第9章 动态产生和编译源代码
9.1 代码文档对象模型简介
9.2 利用CodeDOM类型动态产生源代码
9.2.1 获得代码生成器
9.2.2 创建命名空间
9.2.3 创建注释
9.2.4 引入命名空间
9.2.5 在命名空间下定义类型
9.2.6 添加类型成员
9.2.7 编写语句和表达式
9.2.8 利用代码生成器生成代码
9.2.9 动态产生源代码实例
9.3 动态编译
9.3.1 获得编译器对象
9.3.2 构造编译单元
9.3.3 设置编译选项
9.3.4 编译
9.4 综合示例
9.4.1 步骤1:设计界面
9.4.2 步骤2:引入相应的名字空间
9.4.3 步骤3:声明代理,添加代理变量
9.4.4 步骤4:动态产生代码
9.4.5 步骤5:显示测试结果
9.5 小结
第10章 创建和使用资源
10.1 什么是资源
10.2 资源的形式
10.2.1 resource文件
10.2.2 资源程序集
10.3 资源的定位
10.3.1 定位resources文件
10.3.2 定位资源程序集
10.4 创建资源
10.4.1 手工创建资源
10.4.2 程序创建资源
10.4.3 示例
10.5 使用资源
10.5.1 通过资源管理器使用资源
10.5.2 使用ResourceReader读取资源
10.5.3 自定义资源读取器
10.5.4 自定义资源管理器
10.5.5 在Asp.NET中使用资源
10.6 共享资源
10.7 小结
第11章 特性编程
11.1 特性概述
11.2 应用特性
11.3 编写自定义特性
11.3.1 应用AttributeUsage—Attribute
11.3.2 声明特性类
11.3.3 声明构造函数
11.3.4 声明属性
11.3.5 自定义特性示例
11.4 检索存储在特性中的信息
11.4.1 检索特性的一个实例
11.4.2 检索应用到同一范围的特性的多个实例
11.4.3 检索应用到不同范围的特性的多个实例
11.5 小结
第12章 序列化对象
12.1 概述
12.2 让类支持序列化
12.2.1 简单序列化
12.2.2 通过实现ISerializable接口定制序列化
12.3 获得流
12.4 格式器
12.4.1 IFormatter接口
12.4.2 使用格式器
12.4.3 自定义格式器
12.5 实例
12.6 小结
第13章 应用域
13.1 基本概念
13.1.1 应用域和进程的关系
13.1.2 应用域和线程的关系
13.1.3 应用域和程序集的关系
13.1.4 应用域和对象的关系
13.2 AppDomain类
13.2.1 静态方法和静态属性
13.2.2 主要的实例属性
13.2.3 主要的实例方法
13.2.4 公共事件
13.3 操作应用域
13.3.1 获得当前应用域
13.3.2 创建应用域
13.3.3 卸载应用域
13.3.4 操作应用域属性
13.3.5 在应用域中创建对象
13.3.6 在应用域中加载程序集
13.3.7 在应用域中执行程序
13.3.8 跨应用域回调
13.3.9 处理应用域事件
13.4 应用域局部存储
13.4.1 示例一 一个线程中操作多个应用域的局部存储
13.4.2 示例二 多个线程中操作一个应用域的局部存储
13.5 小结
第14章 多线程编程
14.1 线程的基本概念
14.2 Thread类
14.2.1 公共静态属性
14.2.2 公共静态方法
14.2.3 构造函数
14.2.4 公共实例属性
14.2.5 公共实例方法
14.3 操作线程
14.3.1 操作实例
14.3.2 结束线程
14.4 操作线程池
14.5 互斥和同步
14.5.1 互斥
14.5.2 同步
14.6 处理周期事件
14.6.1 System.WinForms Timer
14.6.2 ThrealdPool
14.6.3 System.Threading.Timer
14.6.4 System.Timers.Timer
14.7 线程局部存储(TLS)
14.8 线程静态成员
14.9 线程调用上下文
14.10 小结
第15章 异步调用
15.1 基本概念
15.2 实现异步调用
15.2.1 声明委托类型
15.2.2 实例化调用委托
15.2.3 启动异步调用
15.2.4 获得结果
15.3 异步调用中的互斥处理
15.3.1 使用关键字lock/SyncLock
15.3.2 使用Monitor
15.4 小结
第16章 自动垃圾收集
16.1 基本概念
16.2 对象的Finalize方法
16.3 垃圾收集线程
16.4 垃圾收集器
16.5 Finalize队列
16.6 优化垃圾收集
16.6.1 定义GenObj类
16.6.2 为App类添加Generation—Demo方法
16.7 显式回收
16.7.1 添加DisposeObj类
16.7.2 为App类添加Dispose—Demo
16.8 重用对象
16.8.1 使用强引用
16.8.2 使用弱引用
16.9 小结
第17章 异常处理
17.1 异常处理概述
17.1.1 基本概念
17.1.2 运行库对异常的处理
17.1.3 筛选运行库异常
17.1.4 .NET中的异常
17.1.5 Exception类
17.2 异常引发和捕获
17.3 自定义异常
17.4 定制应用域的默认异常处理
17.5 跨语言的异常处理
17.6 跨应用域异常处理
17.7 有关异常处理的建议
17.8 小结
第18章 安全性
18.1 基础概念
18.1.1 权限
18.1.2 类型安全和安全性
18.1.3 安全策略
18.1.4 身份验证
18.1.5 授权
18.2 代码访问安全性
18.2.1 代码访问安全性介绍
18.2.2 编写安全类库
18.2.3 创建自己的代码访问权限
18.3 基于角色的安全性
18.3.1 基于角色的安全性介绍
18.3.2 Principal和Identity对象
18.3.3 基于角色的安全检查
18.3.4 与COM十1.0安全性相互操作
18.4 加密服务
18.4.1 加密概述
18.4.2 .NET框架加密模型
18.4.3 加密任务
18.4.4 创建加密方案
18.4.5 配置加密类
18.5 安全策略管理
18.5.1 安全策略模型
18.5.2 权限授予
18.5.3 默认安全策略
18.5.4 管理安全策略
18.5.5 InternetExplorer安全性和托管执行
18.6 小结
第19章 安全性工具
19.1 概述
19.2 证书创建工具(Makecert.exe)
19.3 证书管理器工具(Certmgr.exe)
19.4 发行者证书测试工具(Cert2spc.exe)
19.5 文件签名工具(SignCode.exe)
19.6 证书验证工具(Chktrust.exe)
19.7 权限查看工具(Permview:exe)
19.8 Secutil工具
19.9 小结