正版现货:C#入门经典(第6版)9787302343394pdf下载pdf下载

正版现货:C#入门经典(第6版)9787302343394百度网盘pdf下载

作者:
简介:本篇主要提供正版现货:C#入门经典(第6版)9787302343394pdf下载
出版社:
出版时间:2014-01
pdf下载价格:0.00¥

免费下载


书籍下载


内容介绍

基本信息

  • 商品名:正版现货:C#入门经典(第6版)9787302343394
  • ISBN:9787302343394
  • 定价:98.00
  • 出版社:清华大学出版社
  • 作者:[美]Karli Watson,Jacob Vibe Hammer,Jon D Reid,等

参考信息(以实物为准)

  • 出版时间:2014-01-01
  • 印刷时间:2014-01-01
  • 版次:6
  • 印次:1
  • 包装:平装
  • 开本:16开
  • 用纸:胶版纸
  • 页数:868
  • 字数:

产品特色

 

 

 

 

编辑推荐

内容简介

  《C#入门经典》系列是屡获殊荣的C#名著和超级畅销书。全新版的《C#入门经典(第6版) 》 面向编程新手,全面介绍使用C# 2012和.NET Framework编写程序的基础知识。本书无与伦比的作者团队与您分享多年积累的C#和.NET Framework使用经验,首先简明扼要地介绍这两种技术,解释其含义、相互关系以及使用原因,然后循序渐进地讨论编程基础知识、Web编程、桌面编程以及数据访问技术。本书的讲解详明透彻,以通俗易懂的方式分步骤解析大量基础性示例,为您提供了在实践中锻炼运用新学知识的机会。
  主要内容
  ◆ 介绍编程基础知识,如变量、流程控制和面向对象编程
  ◆ 着重介绍初学者在编写C#程序时常用的工具:Visual Studio 2012中的Visual C# 2012开发环境
  ◆ 阐述调试和错误处
  ◆ 详细讲解集合、比较和转换,探讨C#语言的新增功能
  ◆ 深入分析WPF以及其他可用于创建和部署桌面应用程序的重要技术
  ◆ 探讨Windows Store应用程序
  ◆ 介绍ASP.NET Web编程和Web应用程序的部署
  ◆ 分析文件系统数据、XML和LINQ

前言序言

  C#是Microsoft于2000年7月推出.NET Framework的□□版时提供的一种全新语言。C#从那时起迅速流行开来,成为使用.NET Framework的桌面和Web开发人员无可争议的选择。他们喜欢C#的一个原因是其派生于C/C++的简洁明了的语法,这种语法简化了以前一些给程序员带来困扰的问题。尽管做了这些简化,但C#仍保持了C++原有的功能,所以现在没理由不从C++转向C#。C#语言并不难,也非常适合于学习基本编程技术。易于学习,再加上.NET Framework的功能,使C#成为开始您编程生涯的□□方式。  
  C#的□新版本C# 5是.NET Framework 4.5的一部分,它建立在已有的成功基础之上,还添加了一些更吸引人的功能。Visual Studio的□新版本Visual Studio 2012和开发工具的Visual Studio Express 2012系列也有许多变化和改进,这大大简化了编程工作,显著提高了效率。  
  本书将全面介绍C#编程的所有知识,从该语言本身一直到桌面和Web编程,再到数据源的使用,□后是一些新的高级技术。我们还将学习Visual Studio 2012的功能和利用它开发应用程序的各种方式。  
  本书文笔优美流畅,阐述清晰,每一章都以前面章节的内容为基础,便于读者掌握高级技术。每个概念都会根据需要来介绍和讨论,而不会突然冒出某个技术术语来妨碍读者的阅读和理解。本书尽量减少使用的技术术语数量,但如果需要,将根据上下文进行正确的定义和布置。  
  本书的作者都是各自领域的专家,都是C#语言和.NET Framework的爱好者,没有人比他们更有资格讲授C#了,他们将在您掌握从基本规则到高级技术的过程中为您保驾护航。除了基础知识外,本书还有许多有益的提示、练习、完全成熟的示例代码(可从p2p.wrox.com上下载),在您的职业生涯中一定会反复用到它们。  
  本书将毫无保留地传授这些知识,希望读者能通过阅读本书成为□优秀的程序员。  
  0.1  本书读者对象  
  本书主要针对想学习如何使用.NET Framework编写C#程序的所有人。本书针对的是想要通过学习一种干净、现代、优雅的编程语言来掌握程序设计的完完全全的初学者。但是,对于熟悉其他语言、想要探索.NET平台的人们,以及想要了解Microsoft .NET使用的旗舰语言的.NET开发人员,本书同样有用。  
  0.2  本书内容  
  本书前面的章节介绍该语言本身,读者不需要具备任何编程经验。以前对其他语言有一定了解的开发人员,会觉得这些章节的内容非常熟悉。C#语法的许多方面都与其他语言相同,许多结构对所有的编程语言来说都是相通的(例如,循环和分支结构)。但是,即使是有经验的程序员也可以从这些章节中获益,理解这些技术应用于C#的特征。  
  如果读者是编程新手,就应从头开始学习,了解基本的编程概念,并熟悉C#和支持C#的.NET平台。如果读者对.NET Framework比较陌生,但知道如何编程,就应阅读□□章,然后快速跳读后面几章,这样就能掌握C#语言的应用方式了。如果读者知道如何编程,但以前从未接触过面向对象的编程语言,就应从第8章开始阅读以后的章节。  
  如果读者对C#语言比较了解,就可以集中精力学习那些详细论述□新.NET Framework和C#语言开发的章节,尤其是集合、泛型和C#语言的新增内容(□□1~14章),或者完全跳过本书的第I部分,从□□5章开始学习。  
  本书章节的编排方式可以达到两个目的:可以按顺序阅读这些章节,将其视为C#语言的一个完整教程;还可以按照需要深入学习这些章节,将其作为一本参考资料。  
  除核心内容外,从第3章开始,每章末尾还包含一组习题,完成这些习题有助于读者理解所学的内容。习题包括简单的选择题、判断题以及需要修改或建立应用程序的较难问题。附录A给出了全部习题的答案,还可在www.wrox.com/remtitle.cgi?isbn=9781118314418上的Download Code部分找到这些习题。  
  本书特别注重与C# 5、.NET 4.5的一致性。每一章都进行了彻底的检查,删掉了不太相关的内容,增加了新材料。所有代码都在□新版本的开发工具上进行了测试,所有屏幕截图都在Windows 8上重新截取,以提供□新的窗口和对话框。  
  尽管我们不喜欢承认失误,但还是修订了前几版中的错误,处理了许多其他的读者评论。我们希望不要出现太多的新错误,但一旦发现了错误,我们的Web专家就会联机修改它们。  
  本版本的亮点包括:  
  ● 增加并改进了代码示例。  
  ● 对桌面应用程序的讨论从使用原来的方式(Windows Forms)改为使用新方式(Wiondows Presentation Foundation),让你紧跟技术的发展。  
  ● 涵盖C# 5和.NET 4.5的所有新内容,包括如何创建Windows Store应用程序。  
  ● 十分合理地介绍高级技术,重点是适合于新手、较容易理解的内容。  
  0.3  本书结构  
  本书分为6个部分。  
  ● 前言:概述本书的内容。  
  ● C#语言:介绍了C#语言的所有内容,从基础知识到面向对象的技术,一应俱全。  
  ● Windows编程:介绍如何用C#编写桌面和Windows Store应用程序,如何部署它们。  
  ● Web编程:描述Web应用程序的开发和部署。  
  ● 数据访问:介绍如何在应用程序中使用数据,包括存储在硬盘文件中的数据、以XML格式存储的数据和数据库中的数据。  
  ● 其他技术:讲述使用C#和.NET Framework的一些额外方式,包括由.NET 3.0引入然后经.NET 4和.NET 4.5改进的WCF和WF技术。  
  下面介绍本书5个重要部分中的章节。  
  0.3.1  C#语言(□□~14章)  
  □□章介绍C#及其与.NET的关系,了解在这个环境下编程的基础知识,以及Visual Studio 2012(VS)与它的关系。  
  第2章开始介绍如何编写C#应用程序,学习C#的语法,并将C#和示例命令行、Windows应用程序结合起来使用。这些示例将说明C#如何快速轻松地启动和运行,并附带介绍VS开发环境以及本书将要使用的基本窗口和工具。  
  接着将学习C#的基础知识。第3章介绍变量的含义以及如何操纵它们。第4章将用流程控制(循环和分支)改进应用程序的结构,第5章介绍一些高级变量类型,如数组。第6章开始以函数形式封装代码,这样就更易于执行重复的操作,使代码更容易让人理解。  
  从第7章开始将运用C#语言的基础知识,调试应用程序。这包括在运行应用程序时输出跟踪信息,使用VS查找错误,在强大的调试环境中找出解决问题的办法。  
  第8章将学习面向对象编程(Object-Oriented Programming,OOP)。首先了解这个术语的含义,回答“什么是对象?”OOP初看起来是较难的问题。我们将用一整章的篇幅来介绍它,解释对象的强大之处。直到该章的□后才会真正使用C#代码。  
  第9章将理论知识应用于实践,开始在C#应用程序中使用OOP时,这才体现出C#的真正威力。在第9章介绍如何定义类和接口之后,□□0章将探讨类成员(包括字段、属性和方法),在这一章的□后将开始创建一个扑克牌游戏应用程序,这个应用程序将在几章中开发完成,它非常有助于理解OOP。  
  学习了OOP在C#中的工作原理后,□□1章将介绍几种常见的OOP场景,包括处理对象集合、比较和转换对象。□□2章讨论.NET 2.0中C#引入的一个非常有用的特性—— 泛型,利用它可以创建非常灵活的类。□□3章通过一些其他技术(主要是事件,它在Windows编程中非常重要)继续讨论C#语言和OOP。□后,□□4章介绍C# 3.0、4和5中引入的新特性。  
  0.3.2  Windows编程(□□5~18章)  
  □□5章开始介绍Windows编程概念,理解在VS中如何实现Windows编程。该章主要关注如何使用WPF以图形化方式构建桌面应用程序,以及用□少的时间和精力创建高级应用程序。你将首先学习WPF编程的基础知识,然后在该章和□□6章逐渐拓展相关知识。□□6章介绍了在应用程序中如何使用.NET Framework提供的丰富控件。  
  □□7章介绍了如何创建Windows 8中新增的Windows Store应用程序。Windows Store应用程序是一种令人兴奋的新应用程序类型,可以为用户提供愉悦的全屏体验。该章还将介绍如何准备应用程序以便在Windows Store中进行销售。  
  □□8章讨论应用程序的部署,包括建立安装程序,以便用户快速安装和运行应用程序。  
  0.3.3  Web编程(□□9~20章)  
  该部分的结构与桌面编程部分类似。首先,□□9章描述了构成□简单Web应用程序的控件,如何把它们组合在一起,让它们使用ASP.NET执行任务。接着介绍了更高级的技术、ASP.NET AJAX、各种控件、Web上下文下的状态管理以及Web标准的遵循。  
  然后,第20章探讨Web应用程序和服务的部署,尤其是可以通过单击按钮把应用程序发布到Web上的VS特性。  
  0.3.4  数据访问(第21~24章)  
  第21章介绍了应用程序如何将数据保存到磁盘以及如何检索磁盘上的数据(作为简单的文本文件或者更复杂的数据表示方式)。该章还将讨论如何压缩数据,如何操纵旧数据(例如CSV文件),如何监视和处理文件系统的变化。  
  第22章学习数据交换的事实标准XML。之前的章节接触过XML几次,而该章将讨论XML的基本规则,论述XML的所有功能。  
  该部分其余章节介绍LINQ(这是内置于.NET Framework□新版本中的查询语言)。第23章简要介绍LINQ。第24章使用LINQ访问数据库和其他数据。  
  0.3.5  其他技术(第25和第26章)  
  本书□后一部分将讨论.NET Framework□新版本中出现的几项新技术。第25章介绍Windows Communication Foundation(WCF),它为在企业级以编程方式跨本地网络和Interent访问信息和功能提供了许多工具。该章将介绍如何以平台无关的方式使用WCF,向Web应用程序和桌面应用程序公开复杂的数据和功能。  
  本书□后一章是第26章,介绍了Windows Workflow Foundation(WF),它允许在应用程序中执行工作流功能,因此可以定义一些操作,这些操作由外部的交互操作控制,按特定顺序执行,这对许多类型的应用程序都很有帮助。  
  0.4  使用本书的要求  
  本书中C#和.NET Framework的代码和描述都适用于C# 5和.NET 4.5。除了Framework之外,不需要其他东西就可以理解本书的这个方面,但许多示例都需要使用开发工具。本书将Visual Studio 2012作为主要开发工具,但是,如果没有安装此工具,可以使用免费的Visual Studio Express 2012产品系列。在本书的第I部分,可使用Visual Studio Express 2012 for Windows Desktop创建桌面和控制台应用程序。对于其余章节,可使用Visual Studio Express 2012 for Windows 8创建Windows Store应用程序,使用Visual Studio Express for Web创建Web应用程序,并在需要访问数据库的应用程序中使用SQL Server Express 2012。一些功能只能在Visual Studio 2012中使用,但这不会妨碍练习本书的示例。 

目录

第Ⅰ部分 C# 语 言

□□ 章 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 2012
1.3.1 Visual Studio Express 2012产品
1.3.2 解决方案
1.4 小结
1.5 本章要点

第2 章 编写C#程序
2.1 Visual Studio 2012 开发环境
2.2 控制台应用程序
2.2.1 Solution Explorer 窗口
2.2.2 Properties 窗口
2.2.3 Error List 窗口
2.3 桌面应用程序
2.4 小结
2.5 本章要点

第3 章 变量和表达式
3.1 C#的基本语法
3.2 C#控制台应用程序的基本结构
3.3 变量
3.3.1 简单类型
3.3.2 变量的命名
3.3.3 字面值
3.3.4 变量的声明和赋值
3.4 表达式
3.4.1 数学运算符
3.4.2 赋值运算符
3.4.3 运算符的优先级
3.4.4 名称空间
3.5 小结
3.6 练习
3.7 本章要点

第4 章 流程控制
4.1 布尔逻辑
4.1.1 布尔赋值运算符
4.1.2 按位运算符
4.1.3 运算符优先级的更新
4.2 goto 语句
4.3 分支
4.3.1 三元运算符
4.3.2 if 语句
4.3.3 switch 语句
4.4 循环
4.4.1 do 循环
4.4.2 while 循环
4.4.3 for 循环
4.4.4 循环的中断
4.4.5 无限循环
4.5 小结
4.6 练习
4.7 本章要点

第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 练习
5.6 本章要点

第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 练习
6.9 本章要点

第7 章 调试和错误处理
7.1 Visual Studio 中的调试
7.1.1 非中断(正常)模式下的调试
7.1.2 中断模式下的调试
7.2 错误处理
7.2.1 try.catch.finally
7.2.2 列出和配置异常
7.2.3 异常处理的注意事项
7.3 小结
7.4 练习
7.5 本章要点

第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 练习
8.6 本章要点

第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 练习
9.11 本章要点

□□0 章 定义类成员
10.1 成员定义
10.1.1 定义字段
10.1.2 定义方法
10.1.3 定义属性
10.1.4 在类图中添加成员
10.1.5 重构成员
10.1.6 自动属性
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 练习
10.10 本章要点

□□1 章 集合、比较和转换
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 练习
11.6 本章要点

□□2 章 泛型
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 练习
12.7 本章要点

□□3 章 其他OOP 技术
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.7 练习
13.8 本章要点

□□4 章 C#语言的改进
14.1 初始化器
14.1.1 对象初始化器
14.1.2 集合初始化器
14.2 类型推理
14.3 匿名类型
14.4 动态查找
14.4.1 动态类型
14.4.2 IDynamicMetaObject-Provider
14.5 高级方法参数
14.5.1 可选参数
14.5.2 命名参数
14.5.3 命名参数和可选参数的规则
14.6 扩展方法
14.7 Lambda 表达式
14.7.1 复习匿名方法
14.7.2 把Lambda 表达式用于匿名方法
14.7.3 Lambda 表达式的参数
14.7.4 Lambda 表达式的语句体
14.7.5 Lambda 表达式用作委托和表达式树
14.7.6 Lambda 表达式和集合
14.8 调用方信息特性
14.9 小结
14.10 练习
14.11 本章要点

□□5 章 基本桌面编程
15.1 XAML
15.1.1 关注点分离
15.1.2 XAML 基础知识
15.2 动手实践
15.2.1 WPF 控件
15.2.2 属性
15.2.3 事件
15.3 控件布局
15.3.1 堆叠顺序
15.3.2 对齐、边距、填充和尺寸
15.3.3 Border 控件
15.3.4 Canvas 控件
15.3.5 DockPanel 控件
15.3.6 StackPanel 控件
15.3.7 Grid 控件
15.4 游戏客户端
15.4.1 About 窗口
15.4.2 Options窗口
15.4.3 数据绑定
15.4.4 启动游戏
15.5 小结
15.6 练习
15.7 本章要点

□□6 章 高级桌面编程
16.1 主窗口
16.1.1 菜单控件
16.1.2 路由命令和菜单
16.2 创建控件并设置样式
16.2.1 样式
16.2.2 模板
16.2.3 值转换器
16.2.4 触发器
16.2.5 动画
16.3 WPF 用户控件
16.4 把所有内容结合起来
16.4.1 重构域模型
16.4.2 视图模型
16.4.3 大功告成
16.5 小结
16.6 练习
16.7 本章要点

□□7 章 Windows Store 应用程序
17.1 入门
17.2 Windows Store 应用程序与桌面应用程序
17.3 开发Windows Store应用程序
17.3.1 视图模式
17.3.2 磁贴和锁屏提醒
17.3.3 应用程序的生存期
17.4 应用程序的开发
17.4.1 WPF 与Windows Store应用程序的XAML 差异
17.4.2 模板和页面
17.4.3 沙箱应用程序
17.4.4 在页面之间导航
17.4.5 管理状态
17.5 修改KarliCards 游戏(
□□ 部分)
17.5.1 创建CardLib 项目
17.5.2 可视化方面的修改
17.5.3 转换用户控件
17.6 Windows Store 应用程序中的常见元素
17.6.1 AppBar 控件
17.6.2 设置面板
17.6.3 磁贴、锁屏提醒以及初始屏幕
17.7 修改KarliCards 游戏(
第2 部分)
17.8 Windows 应用商店
17.9 小结
17.10 练习
17.11 本章要点

□□8 章 部署桌面应用程序
18.1 部署概述
18.2 ClickOnce 部署
18.2.1 实现ClickOnce 部署
18.2.2 用ClickOnce 安装应用程序
18.2.3 创建和使用应用程序的更新包
18.3 InstallShield Limited Edition
18.4 小结
18.5 练习
18.6 本章要点

第Ⅲ部分 Web 编 程

□□9 章 ASP.NET Web 编程
19.1 Web 应用程序概述
19.2 ASP.NET 运行库
19.3 创建简单的Web页面
19.4 服务器控件.
19.5 ASP.NET 回送
19.6 ASP.NET AJAX 回送
19.7 输入的有效性验证
19.8 状态管理
19.8.1 客户端的状态管理
19.8.2 服务器端的状态管理
19.9 样式
19.10 母版页
19.11 站点导航
19.12 身份验证和授权
19.12.1 身份验证的配置
19.12.2 使用安全控件
19.13 读写SQL Server数据库
19.14 小结
19.15 练习
19.16 本章要点

第20 章 部署Web 应用程序
20.1 Internet Information Services
20.2 IIS 配置
20.3 复制Web 站点
20.4 发布Web 站点
20.5 小结
20.6 练习
20.7 本章要点

第Ⅳ部分 数 据 访 问

第21 章 文件系统数据
21.1 流
21.2 用于输入和输出的类
21.2.1 File 类和Directory 类
21.2.2 FileInfo 类
21.2.3 DirectoryInfo类
21.2.4 路径名和相对路径
21.2.5 FileStream对象
21.2.6 StreamWriter对象
21.2.7 StreamReader对象
21.2.8 异步文件访问
21.2.9 读写压缩文件
21.3 序列化对象
21.4 监控文件系统
21.5 小结
21.6 练习
21.7 本章要点

第22 章 XML
22.1 XML 文档
22.1.1 XML 元素
22.1.2 特性
22.1.3 XML 声明
22.1.4 XML 文档的结构
22.1.5 XML 名称空间
22.1.6 格式良好并有效的XML
22.1.7 验证XML 文档
22.2 在应用程序中使用XML.
22.2.1 XML 文档对象模型
22.2.2 选择节点
22.2.3 XPath
22.3 小结.
22.4 练习.
22.5 本章要点.

第23 章 LINQ 简介
23.1
□□个LINQ 查询
23.1.1 用var 关键字声明
结果变量
23.1.2 指定数据源:from 子句
23.1.3 指定条件:where 子句
23.1.4 选择元素:select 子句
23.1.5 完成:使用foreach 循环
23.1.6 延迟执行的查询
23.2 使用LINQ 方法语法.
23.2.1 LINQ 扩展方法
23.2.2 查询语法和方法语法
23.3 排序查询结果
23.4 orderby 子句
23.5 用方法语法排序
23.6 查询大型数据集
23.7 聚合运算符.
23.8 查询复杂的对象
23.9 投影:在查询中创建新对象
23.10 投影:方法语法
23.11 单值选择查询
23.12 Any()和All()方法
23.13 多级排序.
23.14 多级排序方法语法:ThenBy
23.15 组合查询.
23.16 Take()和Skip()方法
23.17 First()和FirstOrDefault()方法
23.18 LINQ 集运算符
23.19 Join 查询
23.20 小结
23.21 练习
23.22 本章要点

第24 章 应用LINQ
24.1 LINQ 的变体
24.2 给数据库使用LINQ
24.3 安装SQL Server 和Northwind 示例数据
24.3.1 安装SQL Server Express .
24.3.2 安装Northwind 示例数据库
24.4
□□个LINQ 数据库查询
24.5 浏览数据库关系
24.6 使用LINQ to XML
24.7 LINQ to XML 函数构造方式
24.8 保存和加载XML 文档
24.8.1 从字符串中加载XML
24.8.2 已保存的XML文档内容
24.9 处理XML 片段
24.10 从数据库中生成XML
24.11 查询XML 文档的方法
24.12 使用LINQ to XML查询成员
24.12.1 Elements()
24.12.2 Descendants()
24.12.3 Attributes()
24.13 小结
24.14 练习
24.15 本章要点

第Ⅴ部分 其 他 技 术

第25 章 Windows Communication Foundation
25.1 WCF 的含义
25.2 WCF 概念
25.2.1 WCF 通信协议
25.2.2 地址、端点和绑定
25.2.3 协定
25.2.4 消息模式
25.2.5 行为
25.2.6 驻留
25.3 WCF 编程
25.3.1 WCF 测试客户端程序
25.3.2 定义WCF 服务协定
25.3.3 自驻留的WCF 服务
25.4 小结
25.5 练习
25.6 本章要点

第26 章 Windows Workflow Foundation
26.1 Hello World
26.2 工作流和活动
26.2.1 If 活动
26.2.2 While 活动
26.2.3 Sequence 活动
26.3 实参和变量
26.4 定制活动
26.4.1 工作流扩展
26.4.2 活动的有效性验证
26.4.3 活动设计器
26.5 小结
26.6 练习
26.7 本章要点

附录A 习题答案

精彩书摘

  8.1面向对象编程的含义
  面向对象编程是创建计算机应用程序的一种相当新的方法,它解决了传统编程技巧的许多问题。前面介绍的编程方法称为函数(或过程)化编程,常常会导致所谓的单一应用程序,即所有的功能都包含在几个代码模块中(常常是一个代码模块)。而使用OOP技术,常常要使用许多代码模块,每个模块都提供特定的功能。而且,每个模块都是孤立的,甚至与其他模块完全独立。这种模块化编程方法提供了非常大的多样性,大大增加了重用代码的机会。
  为进一步说明这个问题,把计算机上的一个高性能应用程序想象成一辆□□赛车。如果使用传统的编程技巧,这辆赛车就是一个单元。如果要改进这辆车,就必须替换整车,把它送回厂商那里,让汽车专家升级它,或者购买一辆新车。如果使用OOP技术,就只需从厂商处购买新的引擎,自己按照其说明替换它,而不必用钢锯切割车体。
  在传统的应用程序中,执行流常是简单的、线性的。把应用程序加载到内存中,从A点开始执行,在B点结束,然后从内存中卸载,在这个过程中可能用到其他各种实体,例如存储介质上的文件或显卡的功能,但处理的主体总是位于一个地方。用到的代码一般与使用各种数学和逻辑方式处理数据相关。处理方法通常比较简单,使用基本的数据类型(例如整型和布尔值)建立比较复杂的数据表达方式。
  而使用OOP,事情就不是这么直接了。尽管可以获得相同的效果,但其实现方式是完全不同的。OOP技术以结构、数据的含义以及数据和数据之间的交互操作为基础。这通常意味着要把更多的精力放在项目的设计阶段,其好处是项目的可扩展性比较高。一旦对某种类型的数据的表达方式达成一致,这种表达方式就会应用到应用程序以后的版本中,甚至是全新的应用程序中。这种一致的表达方式可以极大地减少开发时间。这就是上述赛车示例的工作原理。这里的一致是指"引擎"的代码是结构化的,这样就可以很容易地替换□□代码(即新引擎),而不需要找厂商帮忙。这也表示,引擎创建出来后可以用于其他目的,可以把它安装到另一辆车上,或者用它驱动潜艇。
  除了数据表达方式的一致性外,OOP编程还常常可以简化任务,因为较抽象实体的结构和用法也是一致的。例如,不仅把输出结果发送给设备(如打印机)所使用的数据格式是一致的,而且与该设备交换数据的方法也是一致的,这包括它理解的指令等。回到赛车的示例上,要达成的一致的做法包括引擎如何连接到油箱上,如何把驱动力传送给车轮等。
  顾名思义,OOP技术要使用对象。
  ……

作者简介

  Karli Watson,一位作者、IT承包商,现居伦敦。

  Jacob Vibe Hammer,丹麦Kamstrup A/S公司的一名软件架构师和开发人员。Jacob已与他人合著了多本图书。

  Jon D Reid,Indigo Biosystems有限公司的系统工程总监。

  Morgan Skinner,自2001年就一直效力于Microsoft。

  Daniel Kemper,一名软件工程师,专门研究报表和富客户端技术。

  Christian Nagel,Microsoft技术代言人(Microsoft RD)、Microsoft MVP;Christian是Thinktecture的联合创始人,也是CN innovation的创始人。