首页>参考读物>计算机科学与技术>软件与程序设计

C#程序设计
作者 : (美)Charles Petzold
译者 : 杨涛 等
丛书名 : 计算机科学丛书
出版日期 : 2004-04-07
ISBN : 7-111-13988-7
定价 : 30.00元
扩展资源下载
扩展信息
语种 : 简体中文
页数 : 320
开本 : 16开
原书名 : Programming in the Key of C#
原出版社: Charles Petzold
属性分类: 店面
包含CD :
绝版 : 已绝版
图书简介

由获奖作家Charles Petzold撰写的这本书对C#语言做了深入浅出、循序渐进的论述。不论是第一次接触程序设计还是第一次接触C#语言,你都会迅速掌握使用C#语言开发应用程序的技巧。

图书特色

图书前言

本书是为那些希望学习C#程序设计语言的人们编写的。本书尽量避免对读者此前的程序设计经验做出任何假设。本书将从最基本的变量开始讲起,最后以一个实现演奏音乐功能的程序结束。
  C#是微软公司开发的一种面向对象的现代程序设计语言。这种语言是微软公司在2000年夏季发布的.NET战略的一个组成部分。读者可以用C#和.NET编写Web应用或者在Microsoft Windows环境下运行的程序。
  C#并不是进行.NET程序设计时惟一可用的程序设计语言。微软公司提出的CLS(Common Language Specification,通用语言标准)对能被用来编写.NET程序的语言的最小功能集做出了规定。许多现有的程序设计语言都符合CLS的有关规定,但C#是专为.NET而设计和开发的程序设计语言,它最接近.NET战略的功能要求。
  正如其名称所暗示的那样,C#是各种C和C++语言的后代,它与同样受到C和C++语言很深影响的Java语言有很多相似之处。人们把由C语言衍生出来的这些语言统称为“C家族”语言,它们有着相同或近似的语法,但在具体实现细节上却有着很大的不同。就拿C#来说,它是目前程序设计语言“以效率换安全”发展潮流的一个产物。正如本书第1章讨论的那样,C和C++之所以如此流行,部分原因是因为用它们编写出来的程序运行速度都非常快,占用的内存也最少。但这些语言是在“程序员都非常聪明、不会犯任何错误”的假设下才获得如此之高的效率的;它们本身并没有提供任何能够检查程序行为是否正确(比如程序是否会去访问不允许它去访问的内存等)的检查机制。C和C++程序可能执行得非常快,但代码里通常会存在一些很难诊断的漏洞。
  如今的计算机速度越来越快,内存也越来越便宜,所以程序本身的执行效率已不再是人们关注的焦点—人们如今更关心程序中的漏洞是否尽可能地少。虽说没有一种程序设计语言能够让程序员编写出完全没有漏洞的程序,但与C和C++相比,C#在这方面已经有了巨大的进步。因此,C#程序运行起来更安全。
  C#程序的安全性还体现在其他方面。对于经由网络传播的程序,用户需要确定它们不会对自己的计算机和数据造成任何破坏。C#(以及Java)在这方面是有保障的。传统上程序员使用的基本工具之一是能把源代码(程序员写出来的代码)转换为可执行代码(由计算机去执行的代码)的编译器。但C#编译器却把源代码转换为一个包含有中间语言(intermediate language,简称IL)代码的文件,而这个文件是不能在计算机上直接执行的。IL必须被转换为一个可执行文件才能执行,而这一步骤将由.NET中的CLR组件(Common Language Runtime,通用语言运行库)负责完成。
  本人在2000年初次接触C#语言,但它很快就成为我最喜欢用的程序设计语言。C#沿袭了C语言语法的简洁性—这种简洁性是我从1985年开始学习C语言起就一直非常欣赏的,但摒弃了C语言中那些用处不大的东西并增加了许多现代的、面向对象的特性。C#语言是各种新、旧程序设计语言的一种近乎完美的组合。
  在开始使用C#不久,我就意识到它是一种非常适合新程序员学习的入门级程序设计语言。C#既精致又强大,能帮助新程序员避免犯很多常见的错误。这促使我下决心编写本书。
  前面讲过,C#非常适合用来编写.NET Web应用程序或基于Windows的应用程序,但这不过是些用户操作界面而已,不属于本书的讨论重点。这本书是关于C#程序设计语言本身的。因此,在编写本书时,我尽量把讨论重点放在C#语言本身并希望不会让大家有所分心,但今后打算用C#来做些什么却完全取决于读者自己。当然了,程序总是要与外部世界进行某种形式的通信。在本书中,将使用“控制台”来作为有关程序的用户操作界面。控制台的好处是它本身非常简单,但它涉及的知识却适用于任何形式的程序。比如说,在学完本书之后,如果你想编写一些基于Windows的应用程序,可以直接跳到我的另一本书《Programming Microsoft Windows with C#》(Microsoft 出版公司2001年出版)中的第2章。

系统要求
  读者可以用很多种软件开发工具来编写和编译C#程序,这类工具会越来越多。我已尽量使本书独立于各种开发工具,但在某些不得不涉及C#程序创建过程的示例里,将重点介绍两种办法。
  用C#编写程序的标准做法是购买一套Microsoft Visual C# .NET Standard Edition(其零售价大概是100美元)或Microsoft Visual Studio .NET Professional Edition软件(其零售价大概是1000美元)。Visual Studio .NET还包含有对C++、Microsoft Visual Basic .NET以及其他一些高级功能的支持。在本书中,在不需要区分这两种开发工具的场合下,将使用Visual C# .NET来指称它们。要想运行Visual C# .NET,需要运行Windows 2000或Windows XP,而硬件配置至少应该满足以下要求:Pentium III 600 MHz、160MB内存、2GB硬盘可用空间(Visual Studio .NET需要4.2 GB)、1024×768×256色的显示能力。
  如果使用的是2002版本的Visual C# .NET(而不是2003或更高版本的Visual C# .NET或者任何版本的Visual Studio .NET),就必须再增加一个小文件才能创建空白项目。这方面的具体细节可以在我的Web站点http://www.charlespetzold.com上的“Programming in the Key of C#”页面里查到。
  我不知道Visual C# .NET是否是最适合初学者使用的开发工具。它体积庞大,功能复杂,有很多初学者根本用不上的东西。因此,我特意为大家准备了一个相对小一点的程序,我把这个程序叫作“Key of C#”,读者可以从我的Web站点免费下载它。要想使用“Key of C#”,首先要下载和安装.NET Framework Software Development Kit(SDK),你们可以在http://msdn.microsoft.com/downloads/list/netdevframework.asp处找到它(任何版本的.NET Framework SDK都能配合本书使用;需要运行Windows 2000、Windows XP或更高版本的Windows;下载文件的大小大约是100MB),再到http://www.charlespetzold.com站点上的“Programming in the Key of C#”页面里找到并安装“Key of C#”就行了。
  如果你已经安装了Visual C# .NET,在安装和使用“Key of C#”之前就用不着再下载和安装.NET Framework SDK了。这个SDK里的所有东西都已经包括在Visual C# .NET里。
  如果读者喜欢在Windows下的MS-DOS命令行上进行工作并希望能够继续这样做,也可以在下载并安装了.NET Framework SDK(或Visual C# .NET)之后打开一个MS-DOS窗口来进行编程。在我的Web站点上的“Programming in the Key of C#”页面里有很多关于如何使用C#命令行编译器来配合本书学习的信息。

支持
  本书中的示例程序可以从Microsoft出版公司的Web站点http://www.microsoft.com/mspress/books/6261.asp处下载:点击该页面右边“More Information”(更多信息)菜单里的“Companion Content”(相关内容)链接,打开“Companion Content”页面后,就可以从中选择想要下载的示例文件(在我的Web站点http://www.charlespetzold.com上的“Programming in the Key of C#”页面里也有一个指向Microsoft出版公司Web站点的链接)。示例程序文件包括解决方案文件(.sln)、适用于Visual C# .NET环境的C#项目文件(.csproj)以及适用于我的“Key of C#”程序的“Key of C#”项目文件(.kcsproj)。
  我们已尽了最大努力来保证本书及有关源代码内容的准确性。Microsoft出版公司通过下面这个网址为其出版的各种书籍提供了勘误表:
http://www.microsoft.com/mspress/support
如果想直接进入Microsoft出版公司的知识库并查询某个具体的问题,请访问下面这个站点:
http://www.microsoft.com/mspress/support/search.asp
  如果有与本书有关的评论、疑问或者建议,可以通过以下两条途径发送给Microsoft出版公司:
普通邮件: Microsoft Press
Attn: Programming in the Key of C#
One Microsoft Way
Redmond, WA 98052-6399
电子邮件: mspinput@microsoft.com
  注意,上面这个电子邮件地址不提供对有关软件产品的支持。如果有Visual C# .NET、Visual Studio .NET或.NET Framework等方面的问题,请访问微软公司的产品支持站点:
http://support.microsoft.com
  至于与“Key of C#”程序有关的支持,请访问我的Web站点:
http://www.charlespetzold.com
  虽然没有微软公司那么多的资源,但我将尽量支持好“Key of C#”程序。

Charles Petzold
纽约
2003年6月

作者简介

(美)Charles Petzold:Charles Petzold: 1994年,Charles Petzold被《Windows Magazine》和Microsoft公司授予“Windows Pioneer”奖,以表彰他对Microsoft Windows程序设计的贡献。Charles Petzold从1984年开始编写PC程序,从1985年开始编写Microsoft Windows程序。他在《Microsoft Systems Journal》1986年12月号上发表了第一篇关于Windows程序设计的论文。在1986年至1995年期间,他为《PC Magazine》撰写“Environments”专栏,向读者介绍了Windows和OS/2程序设计的许多内容。

译者简介

杨涛 等:暂无简介

图书目录

第1章  基础 1
1.1  变量 5
1.2  变量的声明 9
1.3  编辑、编译、运行 14
1.4  控制台输出 17
1.5  算术运算 21
1.6  注释 28
第2章  基本数据类型 33
2.1  整数与.NET Framework 33
2.2  文本字符串 43
2.3  堆栈和堆 49
2.4  字符串转换 52
2.5  控制台输入 56
2.6  常数 59
2.7  十进制数 62
2.8  浮点数 67
2.9  数据的输出格式 72
2.10  方法与字段 76
2.11  数组 89
2.12  布尔运算 104
2.13  字符与字符串 108
第3章  条件与循环 115
3.1  比较 115
3.2  判断与决策 119
3.3  条件操作符 131
3.4  while循环 134
3.5  异常的捕获与处理 145
3.6  for和foreach语句 153
3.7  饱受争议的goto语句 165
3.8  switch和case语句 168
3.9  二进制位操作与.NET中的枚举类型 172
3.10  参数与输入参数 182
第4章  对象 191
4.1  数据的封装 191
4.2  实例方法 197
4.3  构造器 205
4.4  相等的概念 213
4.5  字段与属性 220
4.6  继承 229
4.7  虚拟性 236
4.8  操作符的重载 248
4.9  类与库 260
4.10  .NET Framework简介 270
4.11  C#编程实战 282

教学资源推荐
作者: 郑阿奇
作者: [美]梁勇(Y.Daniel Liang) 著
作者: (美)Y.Daniel Liang 著
作者: [英] 约翰·M. 斯图尔特(John M. Stewart) 著
参考读物推荐
作者: [美] 戴维·亨德里克森(Dave Hendricksen)著
作者: 张德立 编著
作者: 丘祐玮(Yu-Wei Chiu)著