《Visual C# 2010入门经典》一导读


ds

前 言

Visual C# 2010入门经典
1998年12月底,Microsoft着手推出一种全新的开发平台,旨在提供一种创建和运行下一代应用程序和Web服务的全新方式。这种新平台名为.NET Framework,于2000年6月发布。

.NET Framework将原有Windows接口和服务融合到单个应用程序编程接口(API)下,并将众多新出现的行业标准(如简单对象访问协议[SOAP])和众多原有的Microsoft技术(如Microsoft组件对象模型[COM和COM+]和Active Server Pages[ASP])加入其中。除提供一致的开发体验外,.NET Framework还提供了最大的类库之一,让开发人员能够重点关注应用程序逻辑,而不是常见的编程任务。

最后,应用程序在托管运行环境中运行,而这种环境自动处理内存分配并提供了沙箱(限制访问),这减少甚至消除了众多常见的编程错误。

10年后的今天,.NET Framework在不断发展,它支持新的技术和行业标准,支持动态语言,提供了更多的类。在2008年举行的Microsoft专业开发人员大会(PDC)上,主题之一是“让简单的事情容易,让艰难的事情可能”。.NET Framework第1版秉承了这种宗旨,而每个新版本都在不断向这个目标迈进。

C#编程语言是Anders Hejlsberg、Scott Wiltamuth和Peter Golde为.NET Framework开发的,于2000年7月首次发布。鉴于C#是专门为.NET Framework开发的,很多人将其视为.NET Framework的御用语言。作为编程语言,C#借鉴了Delphi 5、C++和Java 2的语法和主要功能,它是一种类型安全的面向对象通用语言,可用于编写任何类型的应用程序。随着.NET Framework不断发展,C#也在不断发展,以适应.NET Framework的新变化并引入新功能,从而让简单的事情容易,让艰难的事情可能。

虽然.NET Framework支持的语言有50多种,但C#始终是最受欢迎的现代通用语言之一。

针对的读者及组织结构
本书是为刚涉足.NET的程序员和想学习C#的.NET程序员编写的。如果您刚开始学习编程,本书也会有所帮助,但它并非编程入门。本书旨在让读者尽快学会如何使用C#完成编程任务,进而提高编程效率。它全面概述了C#语言,重点是其功能如何帮助您解决问题,旨在让您对C#有最全面的认识。

本书分5部分,每个部分都关注C#的不同方面:从简单的基本知识到高级主题,因此建议按顺序阅读。

第一部分“C#基础”介绍.NET Framework、C#的面向对象编程功能以及C#类型系统和事件的基本知识。

第二部分“C#编程”阐述基本的编程知识。您将学习如何执行循环以及如何使用字符串、正则表达式和集合;接下来,将转向更高级的主题,如异常管理和泛型;最后,将介绍匿名函数(Lambda)、查询表达式(LINQ)以及如何与动态语言交互。

第三部分“使用数据”演示如何与文件系统和流交互、创建和查询XML文档以及操作数据库。

第四部分“使用Visual Studio创建应用程序”首先简要地介绍了Visual Studio 2010和应用程序调试,然后创建了一个使用数据绑定和数据验证的Windows客户端应用程序,最后阐述了如何创建Web应用程序。

第五部分“深入探索”简要地介绍了特性编程、动态类型和语言互操作性等高级概念。您将首先学习.NET Framework如何组织内存、垃圾收集器如何工作、.NET Framework提供的确定性终结机制等基本知识;接下来,您将学习如何使用多个线程和并行处理;最后,您将了解Microsoft在.NET Framework的基础上提供的一些新技术,如Silverlight、PowerShell和实体框架。

本书提供了大量的示例,旨在演示现实世界的问题以及如何使用C#和.NET Framework解决这些问题。在第四部分,还利用前3部分介绍的技能从空白开始创建了一些完整的应用程序。

目 录

第一部分 C#基础
第1章 .NET Framework和C#
1.1 .NET Framework
1.2 C#语言
1.3 Visual Studio 2010
1.4 编写第一个程序
1.5 总结
1.6 问与答
1.7 作业
第2章 理解C#类型
第3章 理解C#类和对象
第4章 继承、接口和抽象类
第5章 创建枚举类型和结构
第6章 事件及其处理
第二部分 C#编程
第7章 控制程序流程
第8章 使用字符串和正则表达式
第9章 使用数组和集合
第10章 使用异常处理错误
第11章 理解泛型
第12章 理解查询表达式
第三部分 使用数据
第13章 使用文件和流
第14章 使用XML
第15章 使用数据库
第四部分 使用Visual Studio创建应用程序
第16章 在Visual Studio中调试程序
第17章 创建Windows应用程序
第18章 使用数据绑定和验证
第19章 创建Web应用程序
第五部分 深入探索
第20章 特性编程
第21章 动态类型和语言互操作性
第22章 内存组织和垃圾收集
第23章 理解线程、并发性和并行
第24章 Silverlight、PowerShell和实体框架

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
此为完整去密码锁定,可自由编辑打印,共三部分,此为I部分 原书名: Microsoft Visual C# 2010 Step by Step 原出社: Microsoft Press 作者: (英)John Sharp 译者: 周靖 丛书名: 微软技术丛书 出社:清华大学出社 ISBN:9787302234289 上架时间:2010-9-6 出日期:2010 年8月 开本:16开 页码:652 次:1-1 所属分类:计算机 > 软件与程序设计 > C# 内容简介 书籍 计算机书籍   c#作为微软的旗舰编程语言,深受程序员喜爱,是他们编写高效应用程序的首选语言。visual c# 2010新增了大量可圈可点的丰富特性,本书围绕着基础知识和这些新特性全面介绍了如何利用visual studio 2010和.net framework 4.0编写应用程序。书中沿袭深受读者欢迎的step by step风格,通过丰富的练习引导读者逐步构建windows应用程序,访问sql server数据库,开发asp.net web应用程序,创建并使用web服务等。   全书共29章,结构清晰,叙述清楚。所有练习均在visual studio 2010简体中文上进行过全面演练。无论是刚开始接触面向对象编程的新手,还是打算转移到c#的具有c,c++或者java基础的程序员,都可以从本书中吸取到新的知识。 作译者 john sharp,content master首席技术专家。content master隶属于cm集团,cm集团是英国一家从事技术文档创作和咨询的专业公司。john sharp是负责net framework和互操作性问题的专家,已经针对分布式系统、web服务和c#语言发布了大量相关的教程、白皮书和演示文档。他具有丰富 目录 第i部分 visual c#visual studio 2010概述 第1章 欢迎进入c#编程世界 3 1.1 开始在visual studio 2010环境中编程 3 1.2 编写第一个程序 8 1.3 使用命名空间 12 1.4 创建图形应用程序 15 第1章快速参考 22 第2章 使用变量、操作符和表达式 25 2.1 理解语句 25 2.2 使用标识符 26 2.3 使用变量 27 2.3.1 命名变量 27 2.3.2 声明变量 28 2.4 使用基本数据类型 28 2.4.1 未赋值的局部变量 29 2.4.2 显示基本数据类型值 29 2.5 使用算术操作符 33 2.5.1 操作符和数据类型 33 2.5.2 深入了解算术操作符 35 2.5.3 控制优先级 37 .2.5.4 使用结合性对表达式进行求值 38 2.5.5 结合性和赋值操作符 38 2.6 变量的递增和递减 39 2.7 声明隐式类型的局部变量 40 第2章快速参考 42 第3章 方法和作用域 43 3.1 创建方法 43 3.1.1 声明方法 43 3.1.2 从方法返回数据 44 3.1.3 调用方法 46 3.2 使用作用域 48 3.2.1 定义局部作用域 48 3.2.2 定义类的作用域 49 3.2.3 重载方法 50 3.3 编写方法 50 3.4 使用可选参数和命名参数 57 3.4.1 定义可选参数 58 3.4.2 传递命名参数 58 3.4.3 消除可选参数和命名参数的歧义 59 第3章快速参考 63 第4章 使用决策语句 65 4.1 声明布尔变量 65 4.2 使用布尔操作符 66 4.2.1 理解相等和关系操作符 66 4.2.2 理解条件逻辑操作符 66 4.2.3 短路求值 67 4.2.4 操作符的优先级和结合性总结 68 4.3 使用if语句来做出决策 68 4.3.1 理解if语句的语法 69 4.3.2 使用代码块来对语句进行分组 70 4.3.3 嵌套if语句 70 4.4 使用switch语句 75 4.4.1 理解switch语句的语法 75 4.4.2 遵守switch语句的规则 76 第4章快速参考 79 第5章 使用复合赋值和循环语句 81 5.1 使用复合赋值操作符 81 5.2 使用while语句 82 5.3 编写for语句 86 5.4 编写do语句 88 第5章快速参考 95 第6章 管理错误和异常 97 6.1 处理错误 97 6.2 尝试执行代码和捕捉异常 98 6.2.1 未处理的异常 99 6.2.2 使用多个catch处理程序 100 6.2.3 捕捉多个异常 100 6.3 使用checked和unchecked整数运算 104 6.3.1 编写checked语句 105 6.3.2 编写checked表达式 106 6.4 抛出异常 107 6.5 使用finally块 111 第6章快速参考 112 第ii部分 理解c#语言 第7章 创建并管理类和对象 117 7.1 理解分类 117 7.2 封装的目的 118 7.3 定义并使用类 118 7.4 控制可访问性 119 7.4.1 使用构造器 120 7.4.2 重载构造器 121 7.5 理解静态方法和数据 128 7.5.1 创建共享字段 129 7.5.2 使用const关键字创建静态字段 130 7.5.3 静态类 130 7.5.4 匿名类 132 第7章快速参考 134 第8章 理解值和引用 135 8.1 复制值类型的变量和类 135 8.2 理解null值和可空类型 139 8.2.1 使用可空类型 140 8.2.2 理解可为空类型的属性 141 8.3 使用ref和out参数 142 8.3.1 创建ref参数 142 8.3.2 创建out参数 143 8.4 计算机内存的组织方式 145 8.5 system.object类 147 8.6 装箱 147 8.7 拆箱 148 8.8 数据类型的安全转换 149 8.8.1 is操作符 150 8.8.2 as操作符 150 第8章快速参考 152 第9章 使用枚举和结构来创建值类型 155 9.1 使用枚举 155 9.1.1 声明枚举 155 9.1.2 使用枚举 156 9.1.3 选择枚举文字常量值 157 9.1.4 选择枚举的基本类型 157 9.2 使用结构 159 9.2.1 声明结构 161 9.2.2 理解结构和类的区别 162 9.2.3 声明结构变量 163 9.2.4 理解结构的初始化 164 9.2.5 复制结构变量 167 第9章快速参考 170 第10章 使用数组和集合 171 10.1 什么是数组 171 10.1.1 声明数组变量 171 10.1.2 创建数组实例 172 10.1.3 初始化数组变量 173 10.1.4 创建隐式类型的数组 173 10.1.5 访问单独的数组元素 174 10.1.6 遍历数组 175 10.1.7 复制数组 176 10.1.8 使用多维数组 177 10.1.9 使用数组来玩牌 178 10.2 什么是集合类 184 10.2.1 arraylist集合类 185 10.2.2 queue集合类 187 10.2.3 stack集合类 188 10.2.4 hashtable集合类 189 10.2.5 sortedlist集合类 190 10.2.6 使用集合初始化器 191 10.2.7 比较数组和集合 192 10.2.8 使用集合类来玩牌 192 第10章快速参考 195 第11章 理解参数数组 197 11.1 使用数组参数 199 11.1.1 声明params数组 200 11.1.2 使用params object[] 201 11.1.3 使用params数组 203 11.2 比较参数数组和可选参数 205 第11章快速参考 207 第12章 使用继承 207 12.1 什么是继承 207 12.2 使用继承 208 12.2.1 调用基类构造器 209 12.2.2 类的赋值 210 12.2.3 声明new方法 212 12.2.4 声明virtual方法 213 12.2.5 声明override方法 214 12.2.6 理解protected访问 217 12.3 理解扩展方法 222 第12章快速参考 225 第13章 创建接口和定义抽象类 227 13.1 理解接口 227 13.1.1 定义接口 228 13.1.2 实现接口 228 13.1.3 通过接口来引用一个类 230 13.1.4 使用多个接口 230 13.1.5 显式实现接口 230 13.1.6 接口的限制 232 13.1.7 定义和使用接口 233 13.2 抽象类 241 13.3 密封类 243 13.3.1 密封方法 243 13.3.2 实现并使用一个抽象类 243 第13章快速参考 248 第14章 使用垃圾回收和资源管理 251 14.1 对象的生存期 251 14.1.1 编写析构器 252 14.1.2 为什么要使用垃圾回收器 254 14.1.3 垃圾回收器的工作机理 255 14.1.4 慎用析构器 255 14.2 资源管理 256 14.2.1 disposal方法 256 14.2.2 异常安全的disposal方法 257 14.2.3 using语句 257 14.2.4 从析构器中调用dispose方法 259 14.3 实现异常安全的disposal 260 第14章快速参考 263 第iii部分 创 建 组 件 第15章 实现属性以访问字段 267 15.1 使用方法来实现封装 267 15.2 什么是属性 269 15.2.1 使用属性 271 15.2.2 只读属性 271 15.2.3 只写属性 272 15.2.4 属性的可访问性 272 15.3 理解属性的局限性 273 15.4 在接口中声明属性 275 15.5 生成自动属性 277 15.6 使用属性来初始化对象 279 第15章快速参考 283 第16章 使用索引器 285 16.1 什么是索引器 285 16.1.1 没有使用索引器的例子 285 16.1.2 使用索引器的同一个例子 287 16.1.3 理解索引器的accessor 289 16.1.4 对比索引器和数组 290 16.2 接口中的索引器 292 16.3 在windows应用程序中使用索引器 293 第16章快速参考 297 第17章 中断程序流程并处理事件 299 17.1 声明和使用委托 299 17.1.1 自动化工厂的例子 300 17.1.2 不使用委托来实现工厂 300 17.1.3 使用委托来实现工厂 301 17.1.4 使用委托 303 17.2 lambda表达式和委托 308 17.2.1 创建方法适配器 308 17.2.2 将lambda表达式作为适配器使用 309 17.2.3 lambda表达式的形式 309 17.3 启用事件通知 311 17.3.1 声明事件 311 17.3.2 订阅事件 312 17.3.3 取消订阅事件 313 17.3.4 引发事件 313 17.4 理解wpf用户界面事件 313 第17章快速参考 319 第18章 泛型概述 321 18.1 object存在的问题 321 18.2 泛型解决方案 323 18.2.1 对比泛型类与泛化类 325 18.2.2 泛型和约束 325 18.3 创建泛型类 325 18.3.1 二叉树理论 325 18.3.2 使用泛型构造二叉树类 328 18.4 创建泛型方法 337 18.5 可变性和泛型接口 340 18.5.1 协变接口 341 18.5.2 逆变接口 343 第18章快速参考 345 第19章 枚举集合 347 19.1 枚举集合中的元素 347 19.1.1 手动实现枚举器 348 19.1.2 实现ienumerable接口 352 19.2 使用迭代器来实现枚举器 354 19.2.1 一个简单的迭代器 354 19.2.2 使用迭代器为tree(titem) 类定义枚举器 356 第19章快速参考 358 第20章 使用查询表达式来查询内存中的数据 361 20.1 什么是语言集成查询 361 20.2 在c#应用程序中使用linq 362 20.2.1 选择数据 363 20.2.2 筛选数据 366 20.2.3 排序、分组和聚合数据 366 20.2.4 联接数据 368 20.2.5 使用查询操作符 370 20.2.6 查询tree(titem)对象中的数据 372 20.2.7 linq和推迟求值 377 第20章快速参考 380 第21章 操作符重载 383 21.1 理解操作符 383 21.1.1 操作符的限制 384 21.1.2 重载的操作符 384 21.1.3 创建对称操作符 385 21.2 理解复合赋值 387 21.3 声明递增操作符和递减操作符 388 21.4 比较结构和类中的操作符 389 21.5 定义操作符对 390 21.6 实现操作符 391 21.7 理解转换操作符 397 21.7.1 提供内建转换 397 21.7.2 实现用户自定义的转换操作符 398 21.7.3 再论创建对称操作符 399 21.7.4 添加隐式转换操作符 399 第21章快速参考 402 第iv部分 操纵windows应用程序 第22章 windows presentation foundation概述 405 22.1 创建wpf应用程序 405 22.2 在窗体上添加控件 418 22.2.1 使用wpf控件 418 22.2.2 动态更改属性 425 22.3 处理wpf窗体中的事件 429 第22章快速参考 434 第23章 收集用户输入 437 23.1 菜单设计原则和样式 437 23.2 菜单和菜单事件 438 23.2.1 创建菜单 438 23.2.2 处理菜单事件 443 23.3 快捷菜单 449 23.4 windows通用对话框 453 23.5 增强wpf应用程序的响应能力 456 第23章快速参考 464 第24章 执行校验 467 24.1 验证数据 467 用户输入验证策略 467 24.2 示例:订票系统 468 24.2.1 使用数据绑定执行校验 469 24.2.2 改变校验时机 484 第24章快速参考 487 第v部分 管 理 数 据 第25章 查询数据库中的信息 491 25.1 使用ado.net查询数据库 491 25.1.1 northwind数据库 492 25.1.2 创建数据库 492 25.1.3 使用ado.net查询订单信息 494 25.2 使用linq to sql查询数据库 503 25.2.1 定义实体类 503 25.2.2 创建并运行linq to sql查询 505 25.2.3 推迟取回和立即取回 507 25.2.4 联接表和创建关系 507 25.2.5 再论推迟取回和立即取回 511 25.2.6 定义自定义的datacontxt类 512 25.2.7 用linq to sql查询订单信息 513 第25章快速参考 517 第26章 使用实体框架和数据绑定显示和编辑数据 519 26.1 通过实体框架进行数据绑定 520 26.2 通过数据绑定修改数据 534 26.2.1 更新现有数据 534 26.2.2 处理冲突的更新 535 26.2.3 添加和删除数据 537 第26章快速参考 545 第vi部分 使用visual studio 2010构建专业解决方案 第27章 任务并行库入门 549 27.1 为何使用并行处理来执行多任务处理 550 27.2 在桌面应用程序中实现多任务处理 551 27.2.1 任务、线程和线程池 552 27.2.2 创建、运行和控制任务 553 27.2.3 使用task类实现并行处理 557 27.2.4 使用parallel类对任务进行抽象 564 27.2.5 什么时候不使用parallel类 568 27.2.6 从任务返回值 571 27.3 任务和ui线程一起使用 574 27.4 取消任务和处理异常 578 27.4.1 协作式取消的原理 578 27.4.2 使用aggregateexception类处理任务异常 586 27.4.3 为canceled和faulted任务使用延续任务 589 第27章快速参考 590 第28章 执行并行数据访问 593 28.1 用plinq并行进行声明式 数据访问 593 28.1.1 用plinq增强遍历集合时的性能 594 28.1.2 指定plinq查询选项 598 28.1.3 取消plinq查询 598 28.2 同步并发的命令式数据访问 599 28.2.1 锁定数据 602 28.2.2 tpl提供的同步基元 603 28.2.3 取消和同步基元 609 28.2.4 并发集合类 609 28.2.5 使用并发集合和锁来实现线程安全的数据访问 611 第28章快速参考 620 第29章 创建和使用web服务 623 29.1 web服务的定义 623 29.2 web服务架构 624 29.2.1 soap web服务 625 29.2.2 rest web服务 627 29.3 构建web服务 628 29.3.1 创建productinformation soap web服务 628 29.3.2 soap web服务、客户端 和代理 635 29.3.3 消费productinformation soap web服务 636 29.3.4 创建productdetails rest web服务 641 28.3.5 使用productdetails rest web服务 647 第29章快速参考 651
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值