您的浏览历史

C#高级编程(第3版)

促销活动

基本信息

编辑推荐

本书是开发人员必备的C#参考资料,是C#和.NET用户的良师益友。通过对本书的学习,您将对C#语言的各个方面有深入细致的理解。温馨提示:该书的第1版、第2版销量都不错,第3版的内容比前两版更加完善实用,而且翻译质量有了进一步的提高,质量一流!

内容简介回到顶部↑

C#与.NET为在Windows平台上编程提供了一个全新的开发环境,在此环境中几乎可以开发出所有基于Windows和Web的应用程序。本书全面介绍了C#的编程知识,同时提供了理解.NET体系结构工作原理所必需的背景知识,相对前两个版本新增了应用程序的部署和本地化等内容。
本书是开发人员必备的C#参考资料,是C#和.NET用户的良师益友。通过对本书的学习,您将对C#语言的各个方面有深入细致的理解,能够在.NET环境中应用C#,构建Windows窗体,用ADO.NET访问数据库,用ASP.NET编写组件,利用.NET为COM和COM+提供支持等。

本书主要内容
· 使用面向对象的C#语言编程
· 使用C#处理XML的方法
· 集成COM、COM+和Active Directory
· 编写Windows应用程序和Windows服务
· 使用.NET Remoting技术开发分布式应用程序
· 理解.NET程序集
· 用C#创建图形
· 控制.NET安全性的方式

本书读者对象
本书适用于已具有C++、Visual Basic或J++编程经验的开发人员,也适合那些希望深入学习的C#初级程序员。

作译者回到顶部↑

本书提供作译者介绍

李敏波,2001年1月获清华大学工学博士,随后在新加坡国立大学从事协同产品设计与门户的博士后研究。2002年11月至今 在金蝶软件(中国)公司中央研究院担任高级研究员,2004年10月将加入复旦大学软件学院零售管理系统中心从事教学和科研工作。
.. << 查看详细

目录回到顶部↑

第1章 .NET体系结构 1
1.1 C#与.NET的关系 1
1.2 公共语言运行库 1
1.3 中间语言 4
1.3.1 面向对象和接口的支持 5
1.3.2 值类型和引用类型 6
1.3.3 强数据类型 6
1.3.4 通过异常处理错误 12
1.3.5 特性的使用 12
1.4 程序集 12
1.4.1 私有程序集 13
1.4.2 共享程序集 14
1.4.3 反射 14
1.5 .NET Framework类 14
1.6 用C#创建.NET应用程序 16
1.6.1 创建ASP.NET应用程序 16
1.6.2 创建Windows窗体 18
1.6.3 Windows服务 18
1.7 C#在.NET企业体系结构中的作用 18
1.8 小结 20

译者序回到顶部↑

C#是专用于.NET平台的一种新型编程语言,不仅功能强大,而且用法灵活,利用它几乎可以开发出运行在Windows上的所有桌面应用程序和网络应用程序。2002年底,为了工作需要,我曾购买《C#入门经典》和《C#高级编程(第2版)》这两本作为参考书,并通读了这两本书。虽然我已经从事软件研发工作多年,曾阅读过很多程序设计类的图书,但是仍然觉得这两本书无论是从内容结构的安排,还是从实用性上考虑都值得推荐。其中《C#入门经典》适合那些不具备太多编程知识和经验的新手学习(此书对我来说有点浅),而《C#高级编程(第2版)》则适合我们这些有一定的编程经验但对C#了解不多的“老手”学习。在阅读《C#高级编程(第2版)》的过程中,我发现有几处翻译可能存在问题,就联系清华大学出版社的编辑,并帮助他们修订了其中的错误。自那以后,清华大学出版社的编辑就邀请我来翻译本书,出于对一本好书的出版支持与推荐,以及编辑的盛邀,我就答应抽出业余时间来翻译此书。
《C#高级编程》的第1版、第2版翻译自出版后,已帮助很多中国程序员走上了C#和.NET开发之路。第3版在前两版的基础上作了很大的改进,不仅对前两版中出现的问题给予了纠正,还增添了4章新内容,内容涉及到“部署”、“Windows 窗体”、“COM的互操作性”和 “Enterprise Services

前言回到顶部↑

对于开发人员来说,把C#语言及其相关环境.NET Framework描述为多年来最重要的新技术一点都不夸张。.NET提供了一种新环境。在这个环境中,可以开发出运行在Windows上的几乎所有应用程序,而C#是专门用于.NET的新编程语言。例如,使用C#可以编写出动态Web页面、XML Web服务、分布式应用程序的组件、数据库访问组件或传统的Windows桌面应用程序。本书介绍.NET Framework 1.1,即.NET Framework的第2版,但本书的大部分内容也适用于.NET Framework 1.0。如果使用1.0版本进行编码,就需要作一些修改,本书将在需要修改的地方指出要修改的内容。
不要被.NET这个名称所愚弄,这个名称仅强调Microsoft相信分布式应用程序是未来的趋势,即处理过程分布在客户机和服务器上,但C#不仅仅是编写Internet或与网络相关的应用程序的一种语言,它还提供了一种编写Windows平台上几乎任何类型的软件或组件的方式。另外,C#和.NET都对编写程序的方式进行了革新,更易于实现在Windows上编程。
这是一个相当重要的声明。毕竟,我们都知道计算机技术的发展速度非常快,每年Microsoft都会推出新软件、新的编程工具或Windows的新版本,并宣称这些对开发人员都非常有用,.NET和C#也不例外。
.NET和C#的重要性
为了理解.NET的重要性,考虑一下近10年来出现的许多Windows技术的本质会有一定的帮助。尽管所有的Windows操作系统在表面上看来完全不同,但从Windows 3.1(1992年)到Windows Server 2003,在内核上都有相同的Windows API。在我们转而使用Windows的新版本时,API中增加了非常多的新功能,但这是一个演化和扩展API的过程,并非是替换它。
开发Windows软件所使用的许多技术和架构也是这样。例如,COM (Component Object Model,组件对象模型)是作为OLE (Object Linking and Embedding,对象链接和嵌入)开发出来的,那时,它在很大程度上仅是把不同类型的办公文档链接在一起,所以利用它可以把一个小Excel电子表格放在Word文档中。之后,它逐步演化为COM、DCOM (Distributed COM,分布式组件对象模型)和最终的COM+。COM+是一种复杂的技术,它是几乎所有组件通信方式的基础,实现了事务处理、消息传输服务和对象池。
Microsoft选择这条道路的原因非常明显:它关注向后的兼容性。在过去的这些年中,第三方厂商编写了相当多的Windows软件,如果Microsoft每次都引入一项不遵循现有代码基础的新技术,Windows就不会获得今天的成功。
向后兼容性是Windows技术的极其重要的特性,也是Windows平台的一个长处,但它有一个很大的缺点。每次某项技术进行演化,增加了新功能后,都会比它以前更复杂。
很明显,对此必须进行改进。Microsoft不可能一直扩展这些开发工具和语言,使它们越来越复杂,既要保证能跟上最新硬件的发展步伐,又要与20世纪90年代初开始流行的Windows产品向后兼容。如果要得到一种简单而专业化的语言、环境和开发工具,让开发人员轻松地编写优秀的软件,就需要一种新的开端。
这就是C#和.NET的作用。粗略地说,.NET是一种在Windows上编程的新架构—— 一种新API。C#是一种新语言,它可以利用.NET Framework及其开发环境中的所有新特性,以及在最近20年来出现的面向对象的编程方法。
在继续介绍前,必须先说明,向后兼容性并没有在这个演化进程中失去。现有的程序仍可以使用,.NET也兼容现有的软件。软件组件在Windows上的通信,现在几乎都是使用COM实现的。因此,.NET能够提供现有COM组件的包装器(wrapper),以便.NET组件与之通信。
Microsoft已经扩展了C++,提供了一种新语言J#,还对VB进行了很多改进,把它转变成为功能更强大的VB.NET,并允许把用这些语言编写的代码用于.NET环境。但这些语言都因有多年演化的痕迹,所以不能完全用现在的技术来编写。
本书将介绍C#编程技术,同时提供.NET体系结构工作原理的必要背景知识。我们不仅会介绍C#语言的基础,还会给出使用各种相关技术的应用程序示例,包括数据库访问、动态的Web页面、先进的图形技术和目录访问等。惟一的要求是用户至少熟悉一门在Windows上使用的高级语言,例如C++、VB或J++。
.NET的优点
前面阐述了.NET的优点,但并没有说它会使开发人员的工作更易于完成。在本节中,我们将简要讨论.NET的改进特性。
● 面向对象的编程:.NET Framework和C#从一开始就完全是基于面向对象的。
● 优秀的设计:一个基类库,它是以一种非常直观的方式设计出来的。
● 语言的无关性:在.NET中,VB.NET、C#、J#和Managed C++等语言都可以编译为通用的中间语言(Intermediate Language)。这说明,语言可以用以前没有的方式交互操作。
● 对动态Web页面的支持:ASP具有很大的灵活性,但效率不是很高,这是因为它使用了解释性的脚本语言,且缺乏面向对象的设计,从而导致ASP代码比较凌乱。.NET使用一种新技术ASP.NET,它为Web页面提供了一种集成式的支持。使用ASP.NET,可以编译页面中的代码,这些代码还可以使用.NET高级语言来编写,例如C#、J#或VB.NET。
● 高效的数据访问:一组.NET组件,总称为ADO.NET,提供了对关系数据库和各种数据源的高效访问。这些组件也可以访问文件系统和目录。.NET内置了XML支持,可以处理从非Windows平台导入或导出的数据。
评论交流

共有178人开贴评论  320人参与评论  157人参与打分 查看

58人
 36%
用户平均打分
我要写评论 help如何参与评论和打分
53人
 33%
34人
 21%
8人
 5%
4人
 2%

LinWD

四级评论员
该会员在china-pub购买过此书
评价等级:  
发表于:2010-1-5 16:36:00
比较全面,可以作为手册使用。
您觉得呢? 送鲜花 (得0支)  扔鸡蛋 (得0个)

nitenike

专家级评论员
该会员在china-pub购买过此书
评价等级:  
发表于:2009-12-15 20:26:00
好书,很经典.但高级二字有些不妥.覆盖面广,内容齐全.
您觉得呢? 送鲜花 (得0支)  扔鸡蛋 (得0个)

bloodrose

专家级评论员
该会员在china-pub购买过此书
  
发表于:2009-10-18 21:46:00
我对这本书的印象是:罗嗦并且贵.
您觉得呢? 送鲜花 (得0支)  扔鸡蛋 (得0个)

digua009

一级评论员
该会员在china-pub购买过此书
评价等级:  
发表于:2008-5-10 13:45:00
看了一点点,感觉还好,从目录来看,内容很充实,很快的介绍了C#的基本语法之后就开始深入,不过我拿到手的书本身的质量一般,纸薄,封面有破损,书的整体也有些许破损,封面那黏合的也不好,感觉看不了多久就会散开,可能是书比较老了。。。

希望内容能够满足我最近学习的要求
您觉得呢? 送鲜花 (得0支)  扔鸡蛋 (得0个)

qcrsoft
三级评论员
该会员在china-pub购买过此书
评价等级:  
发表于:2006-11-8 20:04:00
这本书的翻译虽不拙劣,但只谈的上是一般,很多地方翻译的如果预先没有一定了解的话很难理解。其实很多翻译是都是这样,一穷二白的初学者想拿来入门的话,就费死劲了,只有你对那块已经一知半解了,读起来才能有所领悟。这和台湾书相成了强烈的反差,台湾书在它讲解的知识范围内可以把你从门外一直到到“理解”的境界。
不过这书写的很全面,所以备一本在案头也不错,学习到了某地,抓过来补充补充、提高提高,可以起到手册或者参考书的作用
回复 ( 1条评论-- 点击查看讨论 )
您觉得呢? 送鲜花 (得3支)  扔鸡蛋 (得0个)
我要写评论
查看所有评论交流(共178条)