Programming C-(中文版)(第4版)

相关资料

[

前言

大约每隔十年,都会出现新的技术,改变我们对应用程序开发的思维方式。20世纪80年代早期,可以运行在桌面上的操作系统Unix和强大的新语言C(由AT&T公司开发)是新技术的代表。而20世纪90年代早期出现了Windows和C++。这些技术进展都标志着程序设计方法上的一次沧海桑田般的革命。在2000年,.NET和C# 成为另一次浪潮,而.NET 2.0使这一变迁最终完成。
微软将整个公司的明天都赌在.NET上了。当具有如此规模和影响的公司投入数十亿计美元,重组了整个公司结构,全力支持一个新平台的时候,作为程序员,我们必须对此高度重视。.NET代表着程序设计思维方式的一次巨大变革。简而言之,它是为了推动面向对象的Internet开发而专门设计的全新开发平台。而这个平台的首选编程语言就是C#,一种在C(高性能)、C++(面向对象结构)、Java(垃圾回收,高度的安全性)和VB(快速开发)等语言众多经验教训之上设计出来的,非常适合用来开发以组件为基础的、多层分布式Web应用程序的新语言。
C# 2.0,作为.NET 2005的首选语言,与生俱来的是更新的工具和强大的崭新开发平台。它代表了微软研发的最高成就,简直是太酷了。
关于本书
About This Book
本书是一部教程,讲述C# 和如何用C#编写.NET应用程序。
如果你已经是一名熟练的C# 1.1程序员,只希望了解C# 2.0中的新特性,那么请将本书放下,购买Visual C# 2005: A Developer’s Notebook (O’Reilly出版.) 一书。

相反,如果你的目的是复习各种C#技巧,或者你已经熟练掌握了一门编程语言比如C++或者Java,或者这是你要学习的第一种编程语言,那么本书正适合你。
使用本书的需求
What You Need To Use This Book
从Visual Studio Whidbey的Beta版 (2005) 开始,获取微软开发中的产品大大方便了。有好几种方式可供选择——和Visual Studio以许多种形式发布一样,.NET 2.0和Visual Studio 2005的预发布版本的获取形式也是多种多样。
下载SDK
Beta版的SDK包括命令行编译器、文档和其他工具,可以免费从http://msdn.microsoft.com/ netframework/downloads/updates/default.aspx下载。下载文件不大,但是你需要自己配备代码编辑器(从记事本到SharpDevelop,都可以)。
Express Edition
这是微软发布的Visual Studio简化版,下载文件比较小,所以可以很快上手运行。可以从http://lab.msdn.microsoft.com/vs2005/(译注1)下载各种语言的Express Edition。本书的大多数例子将使用Visual C# Express。有些例子需要Visual Web Developer Express,有些ADO.NET的例子需要安装SQL Server Express或者MSDE (Microsoft Data Engine,微软数据引擎)。
Beta版和社区技术预览版
微软还使Visual Studio 2005的完整版也可以通过下载获取。形式有两种:社区技术预览版(Community Technology Preview, CTP),相对比较粗糙;和功能完整的Beta版。在本书写作时,Visual Studio Professional, Standard和Team System的社区技术预览版已经提供给MSDN订阅者。Visual Studio Professional的Beta 1版已经提供给MSDN订阅者,非订阅者支付运费也可以获得。更多信息,请访问 http://lab.msdn.microsoft.com/vs2005/get/default. aspx。
Mono
Mono项目是一个基于.NET的开源开发平台。它是由Novell公司发起的,运行在Linux, Mac OS X和其他操作系统上。虽然当前版本仅面向.NET 1.1,但是安装时可以选择具备对一些.NET 2.0特性的支持。更多信息,请访问 http://www.mono-project.com/about/index.html。
本书将适用于所有这些环境。但是,因为每种环境版本上都稍有差异,所以有些屏幕图会和你实际看到的不同。

本书的组织
How the Book Is Organized
第一部分集中讲述语言细节,第二部分讨论如何编写.NET程序,第三部分讲述如何结合使用C#和.NET CLR和FCL。
第一部分 C#语言
Part I, The C# Language
第1章“C#与.NET框架”,介绍C#语言和.NET平台。
第2章“起步走:‘Hello World’”,演示了一个简单程序,从而为以后的内容提供背景,还介绍了Visual Studio 集成开发环境以及许多C#语言概念。
第3章“C#语言基础”,阐述了语言的基础知识,从内置数据类型到关键字。
类(class)能够定义新的类型,程序员可以用它来扩展语言,更好地为要解决的问题建模。第4章“类与对象”将解释这些构成C#灵魂与心脏的元素。
类可以是现实世界各种事物复杂的表示和抽象。第5章“继承与多态”将讨论类之间的各种关系和操作。
第6章“操作符重载”,教授如何在用户定义类型中添加操作符。
第7章“结构体”和第8章“接口”分别介绍两种很像类的语法构造——结构体和接口。结构体(struct)是一种轻量级的类,比类更严格,对操作系统和内存的要求也更少。接口(interface)就是协定(contract,译注2),它描述了类的工作方式,使其他程序员的程序能够以明确定义的方式与我们的对象互相操作。
面向对象的程序可能需要创建大量的对象。将对象分组,放在一起处理通常会比较方便,C#为此提供了丰富的集合(collection)支持。第9章“数组,索引器与集合”探讨了FCL(Framework Class Library,框架类库)提供的集合类、新的泛型集合以及如何使用泛型创建自己的集合类型。
第10章“字符串与正则表达式”讨论了如何使用C#处理文本字符串和正则表达式。大多数Windows和Web程序都要与用户交互。而在用户界面方面,字符串发挥着极为重要的作用。
第11章“异常处理”解释了如何处理异常(exception),提供了一种面向对象的处理非紧急情况的机制。
Windows应用程序和Web应用程序都是事件驱动的。在C#中,事件是语言中的一类成员(译注3)。第12章“委托与事件”集中讨论了如何管理事件,如何用委托(delegate,一

种面向对象的类型安全的回调机制)支持事件处理。
第二部分 C#编程
Part II,Programming with C#
第二部分详细讲述了如何编写.NET程序;包括用Windows Forms编写桌面应用程序和用Web Forms编写Web应用程序。而且,第二部分还讲述了数据库操作和Web服务的创建。
在.NET基础架构之上是操作系统的高层抽象,专门设计用来帮助面向对象软件开发的。这层抽象包括ASP.NET和Windows Forms。ASP.NET中包括用于Web应用程序快速开发的Web Forms,和用于创建无用户界面Web对象(即Web服务)的Web Services。所谓Web 服务就是通过标准Web协议(最常见的是XML和HTTP)提供功能的一种分布式应用程序。
C#提供了以前只有VB中才有的那种RAD(快速程序开发)模型。第13章“构建Windows程序”讲述了如何以这种模型使用Windows Forms开发环境创建专业质量的Windows程序。
无论是面向Web还是桌面,大多数程序都要依赖于大量数据的管理和处理。第14章“用ADO.ENT访问数据”阐述了.NET框架的ADO.NET层,以及如何与Microsoft SQL Server及其他数据提供程序互操作。
第15章“Web Forms和Web Services程序设计”主要讨论ASP.NET技术的两个方面:Web Forms和Web Services。
第16章“集大成”将第二部分中讲述的许多技术结合起来,说明如何构建一个集成应用程序。
第三部分 C#与.NET CLR
Part III,The CLR and the .NET Framework
运行库(runtime)是程序的执行环境。CLR(Common Language Runtime,公共语言运行库)是.NET的核心。它包括整个平台都要遵循的一个数据类型系统(译注4),这也是所有为.NET所开发的语言所共有的。CLR负责处理内存管理和对象的引用计数等等事宜。
.NET CLR的另一个关键功能是垃圾回收(garbage collection)。与传统的C/C++编程不同,C#中开发人员不用负责对象的销毁。花费大量时间查找内存泄漏已经成为历史。CLR将在对象不再使用时负责将其清除。CLR的垃圾回收器将检查堆中不再引用的对象,并释放这些对象占用的内存。

.NET平台和类库向上扩展到了中间层平台,从中可以找到容纳了许多支持类的一个基础架构,包括用于进程间通信、XML、线程处理、I/O、安全性、诊断等的类型。中间层还包括总称为ADO.NET的数。

]

内容简介

[

本书是经典C#语言书Programming c#的*新版第4版。著名作者Jesse Liberty为有经验的IT从业人员快速掌握并运用这种新型语言提供了所需要的信息。本书从C的关键字和基本概念开始介绍,并告诉你如何结合三个核心的应用程序平台——ASP.NET、Windows窗体和ADO.NET——来应用C#1语言创建典型的桌面和网络应用程序,你将会学到如何运用NET平台的丰富功能来开发应用。本书中的所有文字和例子都已经更新为与Visual Studio 2005、框架2.0以及C#2.0相适应。本书适合NET平台开发应用程序的程序员。

]

目录

前言 XI
**部分 C#语言
第1章 C#与.NET框架 3
.NET平台 3
.NET框架 4
编译过程与MSIL 6
C#语言 7
第2章 出发:“Hello World” 9
类、对象与类型 9
开发“Hello World” 16
使用Visual Studio .NET调试器 21
第3章 C#语言基础 24
类型 24
变量与常量 29
表达式 37
空白 37
语句 38
操作符 54
预处理指令 63
第4章 类与对象 67
定义类 68
创建对象 73
使用静态成员 80
销毁对象 85
传递参数 88
重载方法和构造方法 94
用属性封装数据 97
只读字段 101
第5章 继承与多态 104
具体化与一般化 104
继承 107
多态 107
抽象类 115
万类之根:Object 119
类型的装箱和拆箱 121
嵌套类 124
第6章 操作符重载 127
使用operator关键字 127
支持其他.NET语言 128
创建有用的操作符 128
逻辑操作符对 129
等于操作符 129
转换操作符 130
第7章 结构体 136
定义结构体 136
创建结构体 139
第8章 接口 144
实现接口 145
访问接口方法 154
重定义接口的实现 162
显式接口实现 166
第9章 数组、索引器与集合 176
数组 176
foreach语句 181
索引器 197
集合接口 206
约束 210
List 215
队列 226
栈 229
字典 232
第10章 字符串与正则表达式 235
字符串 236
正则表达式 251
第11章 异常处理 263
抛出和捕获异常 264
Exception对象 274
自定义异常 278
重新抛出异常 280
第12章 委托与事件 286
委托 287
多重委托 298
事件 302
使用匿名方法 315
从多重委托获取值 316
第二部分 C#编程
第13章 创建Windows应用程序 327
创建一个简单的Windows窗体 328
创建Windows Forms程序 332
XML文档型注释 357
第14章 用ADO.NET访问数据 360
关系型数据库与SQL 360
ADO.NET对象模型 364
开始使用ADO.NET 366
使用OLE DB托管提供程序 369
使用数据绑定控件 371
第15章 ASP.NET程序与Web Services编程 380
理解网页窗体 381
创建一个网页窗体 385
添加空间 389
数据绑定 391
Web Service 401
SOAP、WSDL和发现 402
创建一个Web Service 403
创建代理 407
第16章 综合运用 414
总体设计 414
建立网络服务客户端 414
显示结果 424
根据分类检索 433
第三部分 C#与.NET CLR
第17章 程序集和版本控制 441
PE文件 441
元数据 441
安全边界 442
清单 442
多模块程序集 443
专用程序集 451
共享程序集 452
第18章 属性和反射 459
属性 459
反射 466
第19章 封送和远程编程 478
程序域 479
上下文 489
远程访问 491
第20章 线程与同步 503
线程 504
同步 513
竞赛状态和死锁(Race Conditions and Deadlocks) 523
第21章 Streams 525
文件和目录 526
读写数据 537
异步I/O 544
网络I/O 549
网页流 569
序列化 572
独立存储 581
第22章 COM组件在.NET平台上的编程 585
导入ActiveX控件 585
导入COM组件 593
导出.NET组件 602
P/Invoke 604
指针 608
附录 C#关键字 613
索引 619

封面

Programming C-(中文版)(第4版)

书名:Programming C-(中文版)(第4版)

作者:刘基诚

页数:644

定价:¥78.0

出版社:电子工业出版社

出版日期:2007-10-01

ISBN:9787121045929

PDF电子书大小:62MB 高清扫描完整版

百度云下载:http://www.chendianrong.com/pdf

发表评论

邮箱地址不会被公开。 必填项已用*标注