搜索
高级检索
高级搜索
书       名 :
著       者 :
出  版  社 :
I  S  B  N:
文献来源:
出版时间 :
C#揭秘
0.00    
图书来源: 浙江图书馆(由图书馆配书)
  • 配送范围:
    全国(除港澳台地区)
  • ISBN:
    9787115222213
  • 作      者:
    (美)Joe Mayo著
  • 出 版 社 :
    人民邮电出版社
  • 出版日期:
    2010
收藏
编辑推荐
  LINQ、WPF、WF、WCF,无所不包
  全面、深入,适合各个层次需要
  C#与.NET平台开发必备
  C#作为.NET平台上的第一语言,自发布以来不断增强,已经成为目前功能最强大的通用语言之一。
  《C#揭秘》是C#页域内的权威之作,秉承了Unleashed系列书的一贯风格,内容系统、全面,实践性、可操作性强。书中不仅系统阐述了C#3.0的语言规范、面向对象编程和常用技巧。而且还透彻讲解了与.NET Framework 3.5相关的一些新特性。此外。《C#揭秘》还涵盖.NET CLR、LINQ、XML、WPF、AJAX、WF、WCF、网络通信等重要的.NET技术。
  初学者可从《C#揭秘》的基础内容中了解C#的各个方面。有一定.NET开发经验的开发者可以凭借此书更好地完成日常工作。
展开
作者简介
  Joe Mayo,使用C#的先驱,拥有20多年丰富的开发经验,精通C、C++和Java等多种编程语言。在C#这个新语言推出不久,他就创建了C# Station网站,在其上公开C#教程,为全世界的Web开发人员所欢迎。除本书外,他还著有LINQ Programming一书。
展开
内容介绍
  C#提供了很多强大的特性,特别是通过使用 lambda表达式、扩展方法和 LINQ,方便地引入了函数式编程,使 C#程序员如虎添翼。《C#揭秘》以 C#语言的预备知识开篇,最后以部署代码结束全书,全面深入地讲解了 .NET技术的各个知识点,在广度和深度上恰到好处。《C#揭秘》不仅系统地阐述了 C#开发相关的重要理论知识,而且还提供了大量的实例和解决常见问题的最佳方案,是 .NET开发人员必备的参考书。
  《C#揭秘》适合于各层次的.NET开发人员阅读。
展开
精彩书评
  本书讲解全面、透彻,是迄今为止我看到的最好的C#书。
  ——Rick Harrison,软件咨询师
展开
精彩书摘
  通常,contacts数组的创建将在另一个对象中完成,该对象从一个数据源创建每一个对象,或者获取一个数组的缓存版本。然而,我将它放在了这里,这样你可以明确看到每一个对象的编译时类型和运行时类型。
  在循环中有一个switch语句,它基于每一个查看的对象类型来进行条件判断。注意到由System.Object所获得的Get Type方法的用法,它用来得出对象的运行时类型是什么。在Get Type上调用To string创建了每个对象全限定名称的字符串。通过case语句,你可以看到它们都是什么,我将每一个类都设计为Chapter-09命名空间的成员。
  再次重申,每一个对象的编译时类型是Contact,但是我们需要知道每个对象的运行时类型,以便判断出调用的是哪个方法。当程序遇到一个特定的case语句时,我们知道对象的运行时类型,并且可以安全地将contact转换为那个类型。我们需要运行时类型的原因是因为我们需要在恰当的对象类型上调用SendAlert方法。否则,将总是调用Contact中的SendAlert,因为那是编译器所知道的关于当前对象的全部信息。
  这很麻烦,也很复杂,对吧?对于维护来说,它也打开了一个充满着蠕虫的罐头,swich语句可以用各种方式来修改,并且随着时间的推移重复的功能会很容易出现。每一个需要提供SendAlert功能的新类也必须要添加。提前知道这些是整理出一个优雅设计的关键,这个设计可以尽早地避免这样的问题,并且使代码更容易处理。
展开
目录
第一部分 C#基础
第1章 .NET平台简介
1.1 .NET是什么
1.2 CLR
1.2.1 为什么CLR如此重要
1.2.2 CLR特性
1.2.3 CLR执行过程
1.3 .NET FCL
1.4 C#和其他.NET语言
1.5 CTS
1.6 CLS
1.7 小结

第2章 C#和Visual Studio 2008概述
2.1 编写一个简单的C#程序
2.2 创建一个VS2008项目
2.2.1 运行新项目向导
2.2.2 理解解决方案和项目
2.2.3 使用VS2008编写代码
2.2.4 生成和运行程序
2.2.5 设置编译器选项
2.3 注释代码
2.3.1 多行注释
2.3.2 单行注释
2.3.3 XML文档注释
2.4 标识符和关键字
2.4.1 标识符
2.4.2 关键字
2.5 约定和风格
2.6 变量和类型
2.6.1 变量
2.6.2 简单类型
2.7 明确赋值
2.8 与程序交互
2.8.1 与控制台屏幕通信
2.8.2 与命令行通信
2.8.3 VS2008中的命令行选项
2.8.4 从程序返回值
2.9 小结

第3章 编写C#表达式和语句
3.1 C#运算符
3.1.1 一元运算符
3.1.2 二元运算符
3.1.3 关系运算符
3.1.4 逻辑运算符
3.1.5 赋值运算符
3.1.6 三元运算符
3.1.7 其他运算符
3.2 语句
3.3 块和作用域
3.4 标签
3.5 运算符优先级和结合性
3.6 选择和循环语句
3.6.1 if语句
3.6.2 switch语句
3.6.3 C#循环
3.6.4 goto语句
3.6.5 break语句
3.6.6 continue语句
3.6.7 return语句
3.7 小结

第4章 理解引用类型和值类型
4.1 引用类型和值类型简介
4.2 统一类型系统
4.2.1 统一类型系统的工作原理
4.2.2 使用object进行通用编程
4.2.3 装箱和拆箱对性能的潜在影响
4.3 引用类型和值类型的内存分配
4.3.1 引用类型内存分配
4.3.2 值类型内存分配
4.4 引用类型和值类型赋值
4.4.1 引用类型赋值
4.4.2 值类型赋值
4.5 引用类型和值类型之间的更多区别
4.5.1 引用类型和值类型继承的区别
4.5.2 引用类型和值类型构建和终结的区别
4.5.3 引用类型和值类型对象大小的考虑
4.6 C#和.NET框架类型
4.6.1 C#别名和CTS
4.6.2 使用System.Guid
4.6.3 操作System.DateTime
4.7 可空类型
4.8 小结

第5章 操作字符串
5.1 C#字符串类型
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 通过驻留池影响CLR的字符串处理
5.2 StringBuilder类
5.2.1 Append方法
5.2.2 AppendFormat方法
5.2.3 EnsureCapacity方法
5.2.4 ToString()方法
5.3 正则表达式
5.3.1 基本的正则表达式操作
5.3.2 深入了解正则表达式
5.3.3 练习正则表达式的应用程序
5.4 小结

第6章 数组和枚举
6.1 数组
6.1.1 一维数组
6.1.2 多维数组
6.1.3 交错数组
6.2 System.Array类
6.2.1 数组边界
6.2.2 搜索和排序
6.3 使用枚举类型
6.4 System.Enum结构
6.4.1 枚举类型、整型和字符串之间的转换
6.4.2 迭代枚举类型成员
6.4.3 其他System.Enum成员
6.5 小结

第7章 用Visual Studio 2008调试
应用程序
7.1 单步调试代码
7.1.1 调试示例程序
7.1.2 设置断点
7.1.3 检查程序状态
7.1.4 单步调试代码
7.1.5 其他必备的调试命令
7.1.6 使用调试器找出程序错误
7.1.7 附加到进程
7.2 小结

第二部分 使用C#面向对象编程
第8章 设计对象
8.1 对象成员
8.2 实例和静态成员
8.3 字段
8.3.1 常量字段
8.3.2 readonly字段
8.4 方法
8.5 属性
8.5.1 声明属性
8.5.2 使用属性
8.5.3 自动实现属性
8.5.4 VS2008属性代码段
8.6 索引器
8.7 回顾一下哪里适合使用分部类型
8.8 静态类
8.9 System.Object类
8.9.1 检查对象类型
8.9.2 比较引用
8.9.3 检查相等性
8.9.4 获得散列值
8.9.5 克隆对象
8.9.6 将对象作为字符串使用
8.10 小结

第9章 设计面向对象程序
9.1 继承
9.1.1 基类
9.1.2 调用基类成员
9.1.3 隐藏基类成员
9.1.4 版本控制
9.1.5 密封类
9.2 封装对象内部信息
9.2.1 数据隐藏
9.2.2 使用修饰符支持封装
9.2.3 用于对象的访问修饰符
9.2.4 包含和继承
9.3 多态
9.3.1 仔细查看多态解决的问题
9.3.2 使用多态来解决问题
9.3.3 属性多态
9.3.4 索引器多态
9.3.5 覆写System.Object类成员
9.4 小结

第10章 编写方法和自定义操作符
10.1 方法
10.1.1 定义方法
10.1.2 本地变量
10.1.3 方法参数
10.2 重载方法
10.3 操作符重载
10.3.1 用于自定义类型的算数操作符重载
10.3.2 自定义类型上的逻辑操作符重载
10.3.3 其他操作符重载技巧
10.4 转换和转换操作符重载
10.4.1 隐式转换与显式转换
10.4.2 自定义值类型转换操作符
10.4.3 自定义引用类型转换操作符
10.5 部分方法
10.6 扩展方法
10.7 小结

第11章 错误处理和异常处理
11.1 为什么需要异常处理
11.2 异常处理的语法:try/catch块的基础
11.3 使用finally块确保资源清理
11.4 处理异常
11.4.1 处理不同的异常类型
11.4.2 处理并传递异常
11.4.3 从异常中恢复
11.5 自定义异常
11.6 checked和unchecked语句
11.7 小结

第12章 使用委托和事件进行基于事件的编程
12.1 揭示委托
12.1.1 定义委托
12.1.2 创建委托的方法处理器
12.1.3 在委托上附加处理器
12.1.4 通过委托调用方法
12.1.5 使用委托实现多播
12.1.6 检查委托的相等性
12.2 实现委托推断
12.3 匿名方法
12.4 事件
12.4.1 定义事件处理程序
12.4.2 注册事件
12.4.3 实现事件
12.4.4 触发事件
12.4.5 修改事件的add/remove方法
12.5 小结

第13章 使用命名空间命名和组织类型
13.1 为什么需要命名空间
13.1.1 组织代码
13.1.2 避免命名冲突
13.2 命名空间指令
13.2.1 using指令
13.2.2 别名指令
13.3 创建命名空间
13.4 命名空间成员
13.5 作用域与可见性
13.6 命名空间别名修饰符
13.7 外部命名空间别名
13.8 小结

第14章 抽象类和接口
14.1 抽象类
14.2 抽象类与接口的不同
14.3 实现接口
14.4 定义接口类型
14.4.1 方法
14.4.2 属性
14.4.3 索引
14.4.4 事件
14.5 隐式实现接口
14.5.1 单个类的接口实现
14.5.2 模拟多态行为
14.6 显式实现接口
14.7 接口映射
14.8 接口继承
14.9 小结

第三部分 应用C#高级语言特性
第15章 管理对象生命周期
15.1 对象初始化
15.1.1 实例构造函数
15.1.2 构造函数的重载
15.1.3 默认构造函数
15.1.4 私有构造函数
15.1.5 继承和实例化的顺序
15.1.6 静态构造函数
15.2 对象初始化器
15.3 对象终结器
15.4 自动内存管理
15.4.1 内存分配
15.4.2 垃圾收集器揭秘
15.4.3 GC优化
15.5 正确的资源清理方式
15.5.1 终结器带来的问题
15.5.2 Dispose模式
15.5.3 using语句
15.6 和垃圾收集器交互
15.7 小结

第16章 特性与反射
16.1 特性
16.1.1 使用特性
16.1.2 使用多个特性
16.2 特性参数
16.2.1 定位参数
16.2.2 命名参数
16.3 特性目标
16.4 创建自定义特性
16.5 反射
16.6 在特性上反射
16.6.1 动态创建代码
16.6.2 使用Reflection.Emit构建
16.7 小结

第17章 泛型与迭代器
17.1 非泛型集合
17.2 理解泛型的优点
17.2.1 泛型解决的问题
17.2.2 泛型是面向对象的
17.2.3 在数组、非泛型集合和泛型集合之间选择
17.3 构建泛型类型
17.3.1 使用泛型实现单链表
17.3.2 超越集合应用泛型
17.3.3 使用泛型定义类型
17.4 实现迭代器
17.4.1 GetEnumerator迭代器
17.4.2 方法迭代器
17.4.3 属性迭代器
17.4.4 索引迭代器
17.4.5 运算符迭代器
17.4.6 迭代器作为一个值的序列
17.4.7 销毁迭代器
17.5 小结

第18章 lambda表达式和表达式树
18.1 lambda表达式
18.1.1 lambda的语法
18.1.2 使用lambda
18.1.3 委托和lambda
18.2 表达式树
18.2.1 将lambda转换为表达式树
18.2.2 将表达式树转换为lambda
18.3 小结

第四部分 学习LINQ和.NET数据访问
第19章 使用LINQ访问数据
第20章 使用ADO.NET管理数据
第21章 操作XML数据
第22章 使用ADO.NET实体框架创建数据抽象
第23章 ADO.NET数据服务在云计算数据中的应用

第五部分 创建桌面用户界面
第24章 挖掘控制台应用程序极限
第25章 编写Windows Forms应用程序
第26章 创建WPF应用程序

第六部分 设计Web用户界面
第27章 使用ASP.NET创建Web 应用程序
第28章 用ASP.NET AJAX加强Web应用程序的交互性
第29章 用Silverlight精心制作丰富的Web应用程序

第七部分 使用.NET技术通信
第30章 使用.NET网络通信技术
第31章 创建Windows服务应用程序
第32章 Remoting
第33章 编写传统ASMX Web服务
第34章 使用WCF创建Web服务

第八部分 .NET应用程序架构设计示例
第35章 使用Visual Studio 2008类设计器
第36章 C#中的设计模式样例
第37章 创建N级/层系统
第38章 使用WF自动化逻辑

第九部分 体验更多的.NET框架类库
第39章 进程和线程管理
第40章 本地化和国际化
第41章 互操作(P/Invoke和COM)与不安全代码
第42章 使用System.Diagnostics中的类型诊断应用

第十部分 部署代码
第43章 程序集和版本控制
第44章 代码安全
第45章 创建Visual Studio 2008 安装项目
第46章 部署桌面应用程序
第47章 发布Web应用程序

第十一部分 附录
附录A 编译程序
附录B 获取.NET框架帮助
展开
加入书架成功!
收藏图书成功!
我知道了(3)
发表书评
读者登录

请选择您读者所在的图书馆

选择图书馆
浙江图书馆
点击获取验证码
登录
没有读者证?在线办证