内容简介
第Ⅰ部分 OOP语言
第1章 C#简介
1.1 .NET Framework的含义
1.1.1 .NET Framework的内容
1.1.2 使用.NET Framework编写应用程序
1.2 C#的含义
1.2.1 用C#能编写什么样的应用程序
1.2.2 本书中的C#
1.3 Visual Studio 2015
1.3.1 Visual Studio Express 2015产品
1.3.2 解决方案
1.4 本章要点
第2章 编写C#程序
2.1 Visual Studio 2015开发环境
2.2 控制台应用程序
2.2.1 Solution Explorer窗口
2.2.2 Properties窗口
2.2.3 Error List窗口
2.3 桌面应用程序
2.4 本章要点
第3章 变量和表达式
3.1 C#的基本语法
3.2 C#控制台应用程序的基本结构
3.3 变量
3.3.1 简单类型
3.3.2 变量的命名
3.3.3 字面值
3.4 表达式
3.4.1 数学运算符
3.4.2 赋值运算符
3.4.3 运算符的优先级
3.4.4 名称空间
3.5 练习
3.6 本章要点
第4章 流程控制
4.1 布尔逻辑
4.1.1 布尔按位运算符和赋值运算符
4.1.2 运算符优先级的更新
4.2 分支
4.2.1 三元运算符
4.2.2 if语句
4.2.3 switch语句
4.3 循环
4.3.1 do循环
4.3.2 while循环
4.3.3 for循环
4.3.4 循环的中断
4.3.5 无限循环
4.4 练习
4.5 本章要点
第5章 变量的更多内容
5.1 类型转换
5.1.1 隐式转换
5.1.2 显式转换
5.1.3 使用Convert命令进行显式转换
5.2 复杂的变量类型
5.2.1 枚举
5.2.2 结构
5.2.3 数组
5.3 字符串的处理
5.4 练习
5.5 本章要点
第6章 函数
6.1 定义和使用函数
6.1.1 返回值
6.1.2 参数
6.2 变量的作用域
6.2.1 其他结构中变量的作用域
6.2.2 参数和返回值与全局数据
6.3 Main()函数
6.4 结构函数
6.5 函数的重载
6.6 委托
6.7 练习
6.8 本章要点
第7章 调试和错误处理
7.1 Visual Studio中的调试
7.1.1 非中断(正常)模式下的调试
7.1.2 中断模式下的调试
7.2 错误处理
7.2.1 try...catch...finally
7.2.2 列出和配置异常
7.3 练习
7.4 本章要点
第8章 面向对象编程简介
8.1 面向对象编程的含义
8.1.1 对象的含义
8.1.2 一切皆对象
8.1.3 对象的生命周期
8.1.4 静态成员和实例类成员
8.2 OOP技术
8.2.1 接口
8.2.2 继承
8.2.3 多态性
8.2.4 对象之间的关系
8.2.5 运算符重载
8.2.6 事件
8.2.7 引用类型和值类型
8.3 桌面应用程序中的OOP
8.4 练习
8.5 本章要点
第9章 定义类
9.1 C#中的类定义
9.2 System.Object
9.3 构造函数和析构函数
9.4 Visual Studio中的OOP工具
9.4.1 Class View窗口
9.4.2 对象浏览器
9.4.3 添加类
9.4.4 类图
9.5 类库项目
9.6 接口和抽象类
9.7 结构类型
9.8 浅度和深度复制
9.9 练习
9.10 本章要点
第10章 定义类成员
10.1 成员定义
10.1.1 定义字段
10.1.2 定义方法
10.1.3 定义属性
10.1.4 重构成员
10.1.5 自动属性
10.2 类成员的其他主题
10.2.1 隐藏基类方法
10.2.2 调用重写或隐藏的基类方法
10.2.3 嵌套的类型定义
10.3 接口的实现
10.4 部分类定义
10.5 部分方法定义
10.6 示例应用程序
10.6.1 规划应用程序
10.6.2 编写类库
10.6.3 类库的客户应用程序
10.7 Call Hierarchy窗口
10.8 练习
10.9 本章要点
第11章 集合、比较和转换
11.1 集合
11.1.1 使用集合
11.1.2 定义集合
11.1.3 索引符
11.1.4 给CardLib添加Cards集合
11.1.5 键控集合和IDictionary
11.1.6 迭代器
11.1.7 迭代器和集合
11.1.8 深度复制
11.1.9 给CardLib添加深度复制
11.2 比较
11.2.1 类型比较
11.2.2 值比较
11.3 转换
11.3.1 重载转换运算符
11.3.2 as运算符
11.4 练习
11.5 本章要点
第12章 泛型
12.1 泛型的含义
12.2 使用泛型
12.2.1 可空类型
12.2.2 System.Collections.Generic名称空间
12.3 定义泛型类型
12.3.1 定义泛型类
12.3.2 定义泛型接口
12.3.3 定义泛型方法
12.3.4 定义泛型委托
12.4 变体
12.4.1 协变
12.4.2 抗变
12.5 练习
12.6 本章要点
第13章 高级C#技术
13.1 ::运算符和全局名称空间限定符
13.2 定制异常
13.3 事件
13.3.1 事件的含义
13.3.2 处理事件
13.3.3 定义事件
13.4 扩展和使用CardLib
13.5 特性
13.5.1 读取特性
13.5.2 创建特性
13.6 初始化器
13.6.1 对象初始化器
13.6.2 集合初始化器
13.7 类型推理
13.8 匿名类型
13.9 动态查找
13.10 高级方法参数
13.10.1 可选参数
13.10.2 命名参数
13.11 Lambda表达式
13.11.1 复习匿名方法
13.11.2 把Lambda表达式用于匿名方法
13.11.3 Lambda表达式的参数
13.11.4 Lambda表达式的语句体
13.11.5 Lambda表达式用作委托和表达式树
13.11.6 Lambda表达式和集合
13.12 练习
13.13 本章要点
第Ⅱ部分 Windows编程
第14章 基本桌面编程
14.1 XAML
14.1.1 关注点分离
14.1.2 XAML基础知识
14.2 动手实践
14.2.1 WPF控件
14.2.2 属性
14.2.3 事件
14.3 控件布局
14.3.1 堆叠顺序
14.3.2 对齐、边距、填充和尺寸
14.3.3 Border控件
14.3.4 Canvas控件
14.3.5 DockPanel控件
14.3.6 StackPanel控件
14.3.7 WrapPanel控件
14.3.8 Grid控件
14.4 游戏客户端
14.4.1 About窗口
14.4.2 Options窗口
14.4.3 数据绑定
14.4.4 使用ListBox控件启动游戏
14.5 练习
14.6 本章要点
第15章 高级桌面编程
15.1 主窗口
15.1.1 菜单控件
15.1.2 路由命令和菜单
15.2 创建控件并设置样式
15.2.1 样式
15.2.2 模板
15.2.3 值转换器
15.2.4 触发器
15.2.5 动画
15.3 WPF用户控件
15.4 把所有内容结合起来
15.4.1 重构域模型
15.4.2 视图模型
15.4.3 大功告成
15.5 练习
15.6 本章要点
第Ⅲ部分 云编程
第16章 基本的云编程
16.1 云、云编程和云优化堆栈
16.2 云模式和最佳实践
16.3 使用Microsoft Azure C#库创建存储容器
16.4 创建使用存储容器的ASP.NET 4.6 网站
16.5 练习
16.6 本章要点
第17章 高级云编程和部署
17.1 创建ASP.NET Web API
17.2 在Microsoft Azure上部署和使用ASP.NET Web API
17.3 扩展Microsoft Azure平台上的ASP.NET Web API
17.4 练习
17.5 本章要点
第Ⅳ部分 数据访问
第18章 文件
18.1 用于输入和输出的类
18.1.1 File类和Directory类
18.1.2 FileInfo类
18.1.3 DirectoryInfo类
18.1.4 路径名和相对路径
18.2 流
18.2.1 使用流的类
18.2.2 FileStream对象
18.2.3 StreamWriter对象
18.2.4 StreamReader对象
18.2.5 异步文件访问
18.2.6 读写压缩文件
18.3 监控文件系统
18.4 练习
18.5 本章要点
第19章 XML和JSON
19.1 XML基础
19.2 JSON基础
19.3 XML模式
19.4 XML文档对象模型
19.4.1 XmlDocument类
19.4.2 XmlElement类
19.4.3 修改节点的值
19.5 把XML转换为JSON
19.6 用XPath搜索XML
19.7 练习
19.8 本章要点
第20章 LINQ
20.1 使用LINQ to XML
20.1.1 LINQ to XML函数构造方式
20.1.2 处理XML片段
20.2 LINQ提供程序
20.3 LINQ查询语法
20.3.1 用var关键字声明结果变量
20.3.2 指定数据源:from子句
20.3.3 指定条件:where子句
20.3.4 选择元素:select子句
20.3.5 完成:使用foreach循环
20.3.6 延迟执行的查询
20.4 LINQ方法语法
20.4.1 LINQ扩展方法
20.4.2 查询语法和方法语法
20.4.3 Lambda表达式
20.5 排序查询结果
20.6 orderby子句
20.7 查询大型数据集
20.8 使用聚合运算符
20.9 单值选择查询
20.10 多级排序
20.11 组合查询
20.12 Join查询
20.13 练习
20.14 本章要点
第21章 数据库
21.1 使用数据库
21.2 安装SQL Server Express
21.3 Entity Framework
21.4 Code First数据库
21.5 数据库的位置
21.6 导航数据库关系
21.7 处理迁移
21.8 在已有的数据库中创建和查询XML
21.9 练习
21.10 本章要点
第Ⅴ部分 其他技术
第22章 Windows Communication Foundation
22.1 WCF的含义
22.2 WCF概念
22.2.1 WCF通信协议
22.2.2 地址、端点和绑定
22.2.3 协定
22.2.4 消息模式
22.2.5 行为
22.2.6 驻留
22.3 WCF编程
22.3.1 WCF测试客户端程序
22.3.2 定义WCF服务协定
22.3.3 自驻留的WCF服务
22.4 练习
22.5 本章要点
第23章 通用应用程序
23.1 入门
23.2 通用应用程序
23.3 应用程序概念和设计
23.3.1 屏幕方向
23.3.2 菜单和工具栏
23.3.3 磁贴和徽章
23.3.4 应用程序的生存期
23.3.5 锁屏应用程序
23.4 应用程序的开发
23.4.1 自适应显示
23.4.2 沙箱应用程序
23.4.3 在页面之间导航
23.4.4 CommandBar控件
23.4.5 管理状态
23.5 Windows Store应用程序的常见元素
23.6 Windows Store
23.6.1 打包应用程序
23.6.2 创建包
23.7 练习
23.8 本章要点
附录A 习题答案