C#和.NET 3.0第一步--适用Visual Studio 2005与Visual Studio 2008
基本信息
编辑推荐
全程全面掌握C#语言和.NET 3.0
完全适用Visual Studio 2005与最新的Visual Studio 2008
用通俗易懂的讲解与诙谐幽默的语言来阐述精深的技术
本书技术网站 www.pandaos.com
内容简介回到顶部↑
本书共分三篇,每篇十章,共三十章,兼顾理论和实际应用。三篇承上启下地讲解了vc#的开发技术和应用技巧。
第一篇介绍.net framework 3.0开发框架和c#语言的基础知识,透彻地讲解了面向对象开发思想在c#中的贯彻、基本的winform窗体编程模型、文件读写技术和注册表操作,使读者在学习完本篇之后能够使用winform进行小型的应用开发。
第二篇包含了c#语言相关的高级概念,如集合对象、泛型、程序集、多线程等等,重点讲述了vc#中数据处理的相关技术,如ado.net编程、数据集、数据绑定、datagridview控件、打印和报表等,同时,对面向对象的分析与设计、组件技术、三层架构,以及最新的wwf(工作流)都作了深入浅出的讲解和应用示范。
第三篇主要关注网络方面的知识,介绍了c#点对点通讯编程、internet访问,重点讲述了web开发的相关模型,包括asp.net web开发、asp.net ajax、web服务等,并引入最新的面向服务编程模型wcf和面向描述编程模型wpf,讲解了它们的概念和实际运用,同时,对与实际项目开发密切相关的安装与部署技术、单元测试和重构技术,以及代码的加密和混淆技术都作了讲解,使读者能够了解企业级网络应用的设计与开发。
本书在讲解具体的知识点时均采用直观短小的实例进行讲述,对书中的难点和疑点均采用相关的生活案例或图形图像来描述,使读者更容易掌握其技术的本质。在讲透具体的技术点后,则会给出项目级的实例来展示这些技术在实际中的运用,使读者能够对相关的企业级开发做到融会贯通。
本书适用于c#和.net初学者、开发者和讲授c#和.net的教师,也可作为大学及计算机培训班的c#和.net课程教材。
第一篇介绍.net framework 3.0开发框架和c#语言的基础知识,透彻地讲解了面向对象开发思想在c#中的贯彻、基本的winform窗体编程模型、文件读写技术和注册表操作,使读者在学习完本篇之后能够使用winform进行小型的应用开发。
第二篇包含了c#语言相关的高级概念,如集合对象、泛型、程序集、多线程等等,重点讲述了vc#中数据处理的相关技术,如ado.net编程、数据集、数据绑定、datagridview控件、打印和报表等,同时,对面向对象的分析与设计、组件技术、三层架构,以及最新的wwf(工作流)都作了深入浅出的讲解和应用示范。
第三篇主要关注网络方面的知识,介绍了c#点对点通讯编程、internet访问,重点讲述了web开发的相关模型,包括asp.net web开发、asp.net ajax、web服务等,并引入最新的面向服务编程模型wcf和面向描述编程模型wpf,讲解了它们的概念和实际运用,同时,对与实际项目开发密切相关的安装与部署技术、单元测试和重构技术,以及代码的加密和混淆技术都作了讲解,使读者能够了解企业级网络应用的设计与开发。
本书在讲解具体的知识点时均采用直观短小的实例进行讲述,对书中的难点和疑点均采用相关的生活案例或图形图像来描述,使读者更容易掌握其技术的本质。在讲透具体的技术点后,则会给出项目级的实例来展示这些技术在实际中的运用,使读者能够对相关的企业级开发做到融会贯通。
本书适用于c#和.net初学者、开发者和讲授c#和.net的教师,也可作为大学及计算机培训班的c#和.net课程教材。
作译者回到顶部↑
本书提供作译者介绍
周礼中,山大学计算机应用专业硕士;拥有高级程序员证书;文学作品多次获奖。
具有丰富的软件设计开发经验。曾任香港理工大学深圳研究院多媒体创新中心项目负责人(系统分析师)、台湾亚米多游戏科技有限公司开发工程师(高级软件工程师)、晨星资讯(深圳)有限公司项目负责人(系统工程师、分析师)、北大青鸟深圳鲲鹏培训中心.NET高级讲师。
先后负责及参与的项目包括:语音卡驱动、游戏引擎、流媒体传输播放项目、远程教育平台、分布式金融数据采集等系统。目前从事IT教.. << 查看详细
具有丰富的软件设计开发经验。曾任香港理工大学深圳研究院多媒体创新中心项目负责人(系统分析师)、台湾亚米多游戏科技有限公司开发工程师(高级软件工程师)、晨星资讯(深圳)有限公司项目负责人(系统工程师、分析师)、北大青鸟深圳鲲鹏培训中心.NET高级讲师。
先后负责及参与的项目包括:语音卡驱动、游戏引擎、流媒体传输播放项目、远程教育平台、分布式金融数据采集等系统。目前从事IT教.. << 查看详细
目录回到顶部↑
第一篇 门
第1章 进入microsoft.net世界
1.1 microsoft.net的理念
1.1.1 visual studi0.net的历史和延承
1.1.2 初识.net framework
1.2 net framework的架构
1.2.1 什么是公共语言运行时(clr)
1.2.2 微软中间语言——msil
1.2.3 net框架中的编程语言
1.2.4 多语言支持和语言互操作的基础—-cts和cls
1.2.5 了解.net类库
1.3 开发环境的安装
1.3.1 visual studi0的安装
1.3.2 安装.net framework 3.0环境
1.3.3 关于visual studi0 2007及visual studi0 2008
1.4 开始我们的应用程序
1.4.1 你的第一个c程序
1.4.2 visual studi0 2005介绍
1.4.3 帮助文档的使用
1.5 小结
第1章 进入microsoft.net世界
1.1 microsoft.net的理念
1.1.1 visual studi0.net的历史和延承
1.1.2 初识.net framework
1.2 net framework的架构
1.2.1 什么是公共语言运行时(clr)
1.2.2 微软中间语言——msil
1.2.3 net框架中的编程语言
1.2.4 多语言支持和语言互操作的基础—-cts和cls
1.2.5 了解.net类库
1.3 开发环境的安装
1.3.1 visual studi0的安装
1.3.2 安装.net framework 3.0环境
1.3.3 关于visual studi0 2007及visual studi0 2008
1.4 开始我们的应用程序
1.4.1 你的第一个c程序
1.4.2 visual studi0 2005介绍
1.4.3 帮助文档的使用
1.5 小结
前言回到顶部↑
从开始学习和使用计算机程序语言以来,我一直是一个忠实的C++爱好者。但如今我和其他很多新老程序员们一样被C#深深吸引,原因何在?要讨论这个问题还需要从头说起。大部分人,包括我,在开始学习程序语言时都会按照自己的想法和兴趣去学习,比如C太过经典,要学习它;C++可以做游戏,有趣,学习它;VB可以快速的开发,半天时间就能折腾出个管理系统什么的,学习它;Java程序员的薪水一直以来都很可观哦,牛啊,学习它……现在的问题是每一门语言你可能都要花很长的时间去学习,而且如果你没有开发项目的经验那么你始终掌握不了这门语言的精髓。另外,更重要的是,如果你是这门程序语言的初学者,那么你对即将要展开学习的这门语言很难有一个全面而正确的认识。.
作为一名程序设计技术的工程人员和培训教师,我始终在考虑关于如何学习程序语言的问题。如今的程序设计技术已是遍地开花,你想精通其中任何一个领域的技术都要花费几年甚至更长的时间。记得C++程序领域一直有这样一种说法,如果一个人搞过几年C++就声称自己精通C++,那么此人一定对C++还没有入门,因为即使有十年、二十年使用经验的人也不敢说自己精通C++,这是一门没有“顶”的语言。所以说,不要随随便便去学习一门新的程序设计语言,这是浪费时间的举动。这涉及到学习一门语言的出发点的问题,在选择学习一门新语言时,应该以经济利益和实际需要为出发点,而不是以自己的爱好和兴趣为出发点。
你可能对这个观点嗤之以鼻,我们不妨举个例子。假如在五百年前,你去习武,成为了一个武林高手,那么你会生活得很好;但在现在这个社会呢,你练了十年八年猴拳,你能干嘛?去当保镖,还是去打家劫舍落草为寇?这些似乎都不是很理想的职业。21世纪是需要人才,但已不太需要武林高手这样的人才。况且,当今的中国还是发展中国家,我们只是基本实现了小康,还没有过上物质极大丰富的生活,如果你花大量人力、物力来学习的东西最后变得毫无价值,不能给你带来经济上的利益和生活的改善,那么可以认为你做了毫无意义的事情。所以说学习程序语言意义重大,需要有选择的去学习。
程序语言就是一个工具,像其他很多工具一样,它是可以帮助我们创造价值的工具。一个工具的意义不在于它多有趣以及难度有多高,而在于它是否能创造价值。如果你操纵过工业流水线,你会发现制造一部手机并不比拿锤子做一把椅子更困难,但工业流水线比锤子有价值得多。同样,一门程序语言并不会因为它简单易懂而变得没有价值,关键在于它是否能创造价值。C#和Java相比C++来说都是操作相对简单的语言,但这并不能说明它们差,恰恰相反,它们更优秀,因为它们可以创造更多的价值。
这里要注意的是,我们通常所说的学习C#、掌握C++都不是指学习和掌握这门程序语言本身,而是指学习和掌握这门语言及这门语言背后的开发技术。而对于任何一门语言来说,它背后的知识都浩如烟海。以C++为例,据不完全统计,它已经在几百个领域有所作为,我们熟悉的领域有视频、游戏、科学计算、网络软件、操作系统、设备驱动程序、移动电话等,至于火星机器人智能驱动系统、导弹火控系统等都是常人所不能接触到的领域。通常每一个领域都需要相应的语言库或说技术来支持,比如,使用C++处理视频,你需要学习DirectShow或VFW,使用C++开发游戏你需要熟悉DirectX或OpenGL,使用C++开发驱动程序你得了解PCI总线协议以及DDK等。无论是DriectShow还是OpenGL,你花个一两年也只能算入门。这说明了一个问题,对于一门程序语言的知识,如果要想全部去掌握和学习是不可能的,我们只能有选择的且按照科学的顺序去学习。
C#语言是一门诞生不久的语言,在语法方面它兼顾了Java和C++的特点,在应用方面它吸收了VB、Java及C++的优点。它出生在微软这个豪门中,它的使命是让复杂的Java应用变得简单,使困难的C++应用变得容易,它势必成为平台和Web开发的新宠儿。正如我们所说,一门程序语言是否重要要看它能否带来巨大的价值,C#的价值似乎毫无争议,使用它你可以最快速地完成图书管理系统、人事管理系统、资产管理系统等信息系统,使用它你可以轻松地完成企业网站、电子商务等应用。从微软的白皮书来看,C#语言似乎已经无所不能,从普通的桌面和Web应用,到视频、游戏、科学计算等它都可以出色地完成。这一切都是你选择学习和使用C#的理由,因为一旦选择了C#就好比获得了一把尚方宝剑,人鬼妖魔它一切通杀。
同样,C#语言所包含的技术也是繁多的,如何学习它们成为一个难题。在如今这个知识爆炸的年代,似乎学习任何知识会都成为一个难题,难在不知道如何选择要学习的东西上。事实上,一百年前清朝的洋务派已经提出了“学以致用”的思想,这个思想放在今天也是适用的。学到的东西一定要是我们能用到的东西,这样的学习才有意义。对于编程语言也一样,一定要有选择地学习你所需要的或者你将来能够使用的技术,否则就是在浪费时间。比如你花大量的时间去学习如何使用C#编写网络游戏和设备驱动就是在浪费时间,因为C#的语言特性决定了它不适合做这些应用。本书关于C#内容的选择正是以“学以致用”为出发点来选择的,内容包括了在普通商业软件开发中需要的知识,而不是C#的所有知识。
另外,本书是按3W1H的思想来编写的。3W1H即What(是什么)、Why(为什么)、Where(用在哪里)、How(怎样用)。这个思想本来是我们这些IT培训讲师授课的思路,但我发现这也是一本好的书籍应该贯彻的思想。即本书在介绍所有知识点时,都会按照它是什么、为什么它是什么、该知识在实际开发中用在哪里及怎样使用的顺序来讲解,这样就有助于阅读的人全面、真正地获得知识。
3W1H中前两个比较容易实现,但后两个却很难做到,现实生活中也是这样。我以前认识一个快速切菜器的推销员,这个推销员时常在附近的超市门口推销它的快速切菜器。有意思的是,在他背后的超市里也有这种切菜器卖,而且价格还比他的便宜。奇怪的现象发生了,我发现超市里的切菜器根本没人买,而购买他商品的人却络绎不绝。问题出在哪里,难道是因为这个推销员特别能“忽悠”?不是!原因就在于推销员是一边演示他的商品一边卖,而超市只是把商品放在那里。推销员的演示告诉了人们怎样使用这种新型切菜器,这就是问题的根本。如果一个人不知道怎样使用这个商品,那买回去又有何用。同样,一本书在介绍知识的时候能否告诉读者这个知识用在哪里也至关重要,一个读者如果学习到不知道如何使用的知识那就是在浪费时间。..
至于C#详细的学习方法已经具体体现到了本书的每个章节里,在这里我只简单的提一下。我们知道,C#是微软公司鼓捣出来的语言,毫无疑问它会为微软的操作系统服务,因为微软的任何产品,包括游戏、数据库、开发工具都有这个任务(为Windows系列服务的义务)。也毫无疑问,VC#会取代VB、VC成为Windows操作系统桌面软件的首要开发语言,我们不敢说C#将在Web领域打败Java,但对于Windows操作系统平台开发,将没有哪门语言可以与其争锋。因此,你首先要了解C#关于桌面软件的开发知识。这些知识包括C#中的Windows Form、ADO.NET等知识。当然,学习这些知识的前提是你要掌握C#基本语法及通用操作,这部分知识包括变量、语句、类定义、字符串类、读写文件、异常操作等。
有了C#基本语法、通用操作及Windows Form等相关知识,你就可以制作相应的信息管理系统了,这些系统包括财务系统、人员管理系统、收支系统等等。在编写C#相关软件有了一定的心得体会以后,你就可以学习其线程、集合、组件等相关内容了,这些知识对于创建大中型的项目非常有帮助。此后,在对平台开发有了一定的基础后,再去学习复杂的Web开发技术你会觉得更容易上手,因为微软为桌面开发和Web开发提供了相似的开发模型。C#面向Web开发方面包括的内容有:ASP.NET、XML操作、Web服务等,这些知识可以使你创建普通的企业网站和电子商务应用。
所有这些都学完后,你就可以去了解一下怎样部署桌面程序和Web程序的相关知识了。因为软件在制作完成后还需要安装和部署才能使用,所以这一步骤也是必须的。最后,你如果想让你的项目达到可重用性、可读性等诸多“国际”标准,你还得研究一下设计模式、极限编程、单元测试、重构等开发思想和开发技术,它们会使你的代码更加精良,软件更有价值。
本书结构
本书分为三篇共三十章。
第一篇称为“门”,就是入门的意思。此篇介绍.NET Framework 3.0开发框架和C#语言的基础知识,讲解了面向对象开发思想在C#中的贯彻、基本的WinForm窗体编程模型、文件读写技术和注册表操作,使读者在学习完本篇之后能够使用WinForm进行小型的应用开发。
第二篇称为“质”,涉及C#中用处最大难度最高的一些知识,包含了C#语言相关的高级概念,如集合对象、泛型、程序集、多线程等等,重点讲述了VC#中数据处理的相关技术,如ADO.NET编程、数据集、数据绑定、DataGridView控件、打印和报表等,同时,对面向对象的分析与设计、组件技术、三层架构,以及最新的WWF(工作流)都作了深入浅出的讲解和应用示范。
第三篇称为“道”,包括Web技术等相关内容,是C#中最具特色的部分。此篇介绍了C#点对点通讯编程、Internet访问,重点讲述了Web开发的相关模型,包括ASP.NET Web开发、ASP.NET Ajax、Web服务等,并引入最新的面向服务编程模型WCF和面向描述编程模型WPF,讲解了它们的概念和实际运用,同时,对与实际项目开发密切相关的安装与部署技术、单元测试和重构技术,以及代码的加密和混淆技术都作了讲解,使读者能够了解企业级的网络应用的设计与开发。
每篇分十章,以递进的方式安排内容,在前面的章节中不会出现后面章节的知识,这样有助于阅读,因此也建议读者在阅读时从头开始阅读。
三篇共三十章基本囊括了C#企业开发用到的所有知识,详细解释如下:
第1章:详细介绍.NET 3.0平台的相关概念,使读者对.NET平台的运行机制有一个初步的了解。
作为一名程序设计技术的工程人员和培训教师,我始终在考虑关于如何学习程序语言的问题。如今的程序设计技术已是遍地开花,你想精通其中任何一个领域的技术都要花费几年甚至更长的时间。记得C++程序领域一直有这样一种说法,如果一个人搞过几年C++就声称自己精通C++,那么此人一定对C++还没有入门,因为即使有十年、二十年使用经验的人也不敢说自己精通C++,这是一门没有“顶”的语言。所以说,不要随随便便去学习一门新的程序设计语言,这是浪费时间的举动。这涉及到学习一门语言的出发点的问题,在选择学习一门新语言时,应该以经济利益和实际需要为出发点,而不是以自己的爱好和兴趣为出发点。
你可能对这个观点嗤之以鼻,我们不妨举个例子。假如在五百年前,你去习武,成为了一个武林高手,那么你会生活得很好;但在现在这个社会呢,你练了十年八年猴拳,你能干嘛?去当保镖,还是去打家劫舍落草为寇?这些似乎都不是很理想的职业。21世纪是需要人才,但已不太需要武林高手这样的人才。况且,当今的中国还是发展中国家,我们只是基本实现了小康,还没有过上物质极大丰富的生活,如果你花大量人力、物力来学习的东西最后变得毫无价值,不能给你带来经济上的利益和生活的改善,那么可以认为你做了毫无意义的事情。所以说学习程序语言意义重大,需要有选择的去学习。
程序语言就是一个工具,像其他很多工具一样,它是可以帮助我们创造价值的工具。一个工具的意义不在于它多有趣以及难度有多高,而在于它是否能创造价值。如果你操纵过工业流水线,你会发现制造一部手机并不比拿锤子做一把椅子更困难,但工业流水线比锤子有价值得多。同样,一门程序语言并不会因为它简单易懂而变得没有价值,关键在于它是否能创造价值。C#和Java相比C++来说都是操作相对简单的语言,但这并不能说明它们差,恰恰相反,它们更优秀,因为它们可以创造更多的价值。
这里要注意的是,我们通常所说的学习C#、掌握C++都不是指学习和掌握这门程序语言本身,而是指学习和掌握这门语言及这门语言背后的开发技术。而对于任何一门语言来说,它背后的知识都浩如烟海。以C++为例,据不完全统计,它已经在几百个领域有所作为,我们熟悉的领域有视频、游戏、科学计算、网络软件、操作系统、设备驱动程序、移动电话等,至于火星机器人智能驱动系统、导弹火控系统等都是常人所不能接触到的领域。通常每一个领域都需要相应的语言库或说技术来支持,比如,使用C++处理视频,你需要学习DirectShow或VFW,使用C++开发游戏你需要熟悉DirectX或OpenGL,使用C++开发驱动程序你得了解PCI总线协议以及DDK等。无论是DriectShow还是OpenGL,你花个一两年也只能算入门。这说明了一个问题,对于一门程序语言的知识,如果要想全部去掌握和学习是不可能的,我们只能有选择的且按照科学的顺序去学习。
C#语言是一门诞生不久的语言,在语法方面它兼顾了Java和C++的特点,在应用方面它吸收了VB、Java及C++的优点。它出生在微软这个豪门中,它的使命是让复杂的Java应用变得简单,使困难的C++应用变得容易,它势必成为平台和Web开发的新宠儿。正如我们所说,一门程序语言是否重要要看它能否带来巨大的价值,C#的价值似乎毫无争议,使用它你可以最快速地完成图书管理系统、人事管理系统、资产管理系统等信息系统,使用它你可以轻松地完成企业网站、电子商务等应用。从微软的白皮书来看,C#语言似乎已经无所不能,从普通的桌面和Web应用,到视频、游戏、科学计算等它都可以出色地完成。这一切都是你选择学习和使用C#的理由,因为一旦选择了C#就好比获得了一把尚方宝剑,人鬼妖魔它一切通杀。
同样,C#语言所包含的技术也是繁多的,如何学习它们成为一个难题。在如今这个知识爆炸的年代,似乎学习任何知识会都成为一个难题,难在不知道如何选择要学习的东西上。事实上,一百年前清朝的洋务派已经提出了“学以致用”的思想,这个思想放在今天也是适用的。学到的东西一定要是我们能用到的东西,这样的学习才有意义。对于编程语言也一样,一定要有选择地学习你所需要的或者你将来能够使用的技术,否则就是在浪费时间。比如你花大量的时间去学习如何使用C#编写网络游戏和设备驱动就是在浪费时间,因为C#的语言特性决定了它不适合做这些应用。本书关于C#内容的选择正是以“学以致用”为出发点来选择的,内容包括了在普通商业软件开发中需要的知识,而不是C#的所有知识。
另外,本书是按3W1H的思想来编写的。3W1H即What(是什么)、Why(为什么)、Where(用在哪里)、How(怎样用)。这个思想本来是我们这些IT培训讲师授课的思路,但我发现这也是一本好的书籍应该贯彻的思想。即本书在介绍所有知识点时,都会按照它是什么、为什么它是什么、该知识在实际开发中用在哪里及怎样使用的顺序来讲解,这样就有助于阅读的人全面、真正地获得知识。
3W1H中前两个比较容易实现,但后两个却很难做到,现实生活中也是这样。我以前认识一个快速切菜器的推销员,这个推销员时常在附近的超市门口推销它的快速切菜器。有意思的是,在他背后的超市里也有这种切菜器卖,而且价格还比他的便宜。奇怪的现象发生了,我发现超市里的切菜器根本没人买,而购买他商品的人却络绎不绝。问题出在哪里,难道是因为这个推销员特别能“忽悠”?不是!原因就在于推销员是一边演示他的商品一边卖,而超市只是把商品放在那里。推销员的演示告诉了人们怎样使用这种新型切菜器,这就是问题的根本。如果一个人不知道怎样使用这个商品,那买回去又有何用。同样,一本书在介绍知识的时候能否告诉读者这个知识用在哪里也至关重要,一个读者如果学习到不知道如何使用的知识那就是在浪费时间。..
至于C#详细的学习方法已经具体体现到了本书的每个章节里,在这里我只简单的提一下。我们知道,C#是微软公司鼓捣出来的语言,毫无疑问它会为微软的操作系统服务,因为微软的任何产品,包括游戏、数据库、开发工具都有这个任务(为Windows系列服务的义务)。也毫无疑问,VC#会取代VB、VC成为Windows操作系统桌面软件的首要开发语言,我们不敢说C#将在Web领域打败Java,但对于Windows操作系统平台开发,将没有哪门语言可以与其争锋。因此,你首先要了解C#关于桌面软件的开发知识。这些知识包括C#中的Windows Form、ADO.NET等知识。当然,学习这些知识的前提是你要掌握C#基本语法及通用操作,这部分知识包括变量、语句、类定义、字符串类、读写文件、异常操作等。
有了C#基本语法、通用操作及Windows Form等相关知识,你就可以制作相应的信息管理系统了,这些系统包括财务系统、人员管理系统、收支系统等等。在编写C#相关软件有了一定的心得体会以后,你就可以学习其线程、集合、组件等相关内容了,这些知识对于创建大中型的项目非常有帮助。此后,在对平台开发有了一定的基础后,再去学习复杂的Web开发技术你会觉得更容易上手,因为微软为桌面开发和Web开发提供了相似的开发模型。C#面向Web开发方面包括的内容有:ASP.NET、XML操作、Web服务等,这些知识可以使你创建普通的企业网站和电子商务应用。
所有这些都学完后,你就可以去了解一下怎样部署桌面程序和Web程序的相关知识了。因为软件在制作完成后还需要安装和部署才能使用,所以这一步骤也是必须的。最后,你如果想让你的项目达到可重用性、可读性等诸多“国际”标准,你还得研究一下设计模式、极限编程、单元测试、重构等开发思想和开发技术,它们会使你的代码更加精良,软件更有价值。
本书结构
本书分为三篇共三十章。
第一篇称为“门”,就是入门的意思。此篇介绍.NET Framework 3.0开发框架和C#语言的基础知识,讲解了面向对象开发思想在C#中的贯彻、基本的WinForm窗体编程模型、文件读写技术和注册表操作,使读者在学习完本篇之后能够使用WinForm进行小型的应用开发。
第二篇称为“质”,涉及C#中用处最大难度最高的一些知识,包含了C#语言相关的高级概念,如集合对象、泛型、程序集、多线程等等,重点讲述了VC#中数据处理的相关技术,如ADO.NET编程、数据集、数据绑定、DataGridView控件、打印和报表等,同时,对面向对象的分析与设计、组件技术、三层架构,以及最新的WWF(工作流)都作了深入浅出的讲解和应用示范。
第三篇称为“道”,包括Web技术等相关内容,是C#中最具特色的部分。此篇介绍了C#点对点通讯编程、Internet访问,重点讲述了Web开发的相关模型,包括ASP.NET Web开发、ASP.NET Ajax、Web服务等,并引入最新的面向服务编程模型WCF和面向描述编程模型WPF,讲解了它们的概念和实际运用,同时,对与实际项目开发密切相关的安装与部署技术、单元测试和重构技术,以及代码的加密和混淆技术都作了讲解,使读者能够了解企业级的网络应用的设计与开发。
每篇分十章,以递进的方式安排内容,在前面的章节中不会出现后面章节的知识,这样有助于阅读,因此也建议读者在阅读时从头开始阅读。
三篇共三十章基本囊括了C#企业开发用到的所有知识,详细解释如下:
第1章:详细介绍.NET 3.0平台的相关概念,使读者对.NET平台的运行机制有一个初步的了解。
书摘回到顶部↑
第1章进入Microsoft.NET世界
从1946年德国工程师楚则(Kollrad Zuse)第一次使用程序语言,到现在大约刚好一甲子(60年)的时间。在此期间,程序语言经历了从无到有,发展到了现在百家争鸣的历史新阶段。如果我们把这六十年放到一天里,那么一小时就有2.5年。照此推算,德国的楚则在午夜零点躲藏在巴伐利亚的阿尔皮斯山脉(Bavarian Alps),开始使用程序语言开发一些在他看来很有意义的东西,比如象棋等,到凌晨一点十分左右Short Code开始将程序语言用于电子计算装置,那还是一个靠手工编译的语言,到凌晨两点,工作在雷明顿街的Grace Hopper改善了编译方法,发明了一种叫“MATH-MATIC”系统,这是最早的比较成熟的程序语言编写器,它大大方便了程序的编写工作。
直到凌晨四点二十分左右,我们的主角开始登场了,这就是第一个面向科学计算的高级计算机语言——-Fonran语言,它是由John Backus领导的小组完成的,后来他们将这个语言提交给了ALGOL公司组织。到凌晨五点的时候LISP语言和面向数据系统的COBOL语言相继诞生,随后的几小时编程语言基本上停留在科学等专业领域。直到凌晨l0点钟C语言产生,作为程序语言的里程碑,C语言有着划时代的意义,此后大部分复杂低级的程序语言逐渐被C语言取代。又过了几小时,大约在中午1点半时SmallTalk80出现了,它也带来了变革,它将程序语言引入面向对象领域。大约下午4点的时候划时代的c++登场了,随后的很长一段时间它都统治着程序界,到晚上8点左右Java的出现似乎更进一步体现了自己的个性——面向对象,此时程序界开始分化,抽象语言和底层语言(c语言等)开始平分江山互不相干,Java也开始在自己的领域称霸。
C#大约出现在晚上10点左右,起初它似乎并没有引起人们的注意,因为人们还在为C++的深沉和Java的博学争吵着。这个结合了C++的深沉和Java的博学的混血儿能否带领人们迎接即将到来的新的黎明似乎还有待考验。
……
从1946年德国工程师楚则(Kollrad Zuse)第一次使用程序语言,到现在大约刚好一甲子(60年)的时间。在此期间,程序语言经历了从无到有,发展到了现在百家争鸣的历史新阶段。如果我们把这六十年放到一天里,那么一小时就有2.5年。照此推算,德国的楚则在午夜零点躲藏在巴伐利亚的阿尔皮斯山脉(Bavarian Alps),开始使用程序语言开发一些在他看来很有意义的东西,比如象棋等,到凌晨一点十分左右Short Code开始将程序语言用于电子计算装置,那还是一个靠手工编译的语言,到凌晨两点,工作在雷明顿街的Grace Hopper改善了编译方法,发明了一种叫“MATH-MATIC”系统,这是最早的比较成熟的程序语言编写器,它大大方便了程序的编写工作。
直到凌晨四点二十分左右,我们的主角开始登场了,这就是第一个面向科学计算的高级计算机语言——-Fonran语言,它是由John Backus领导的小组完成的,后来他们将这个语言提交给了ALGOL公司组织。到凌晨五点的时候LISP语言和面向数据系统的COBOL语言相继诞生,随后的几小时编程语言基本上停留在科学等专业领域。直到凌晨l0点钟C语言产生,作为程序语言的里程碑,C语言有着划时代的意义,此后大部分复杂低级的程序语言逐渐被C语言取代。又过了几小时,大约在中午1点半时SmallTalk80出现了,它也带来了变革,它将程序语言引入面向对象领域。大约下午4点的时候划时代的c++登场了,随后的很长一段时间它都统治着程序界,到晚上8点左右Java的出现似乎更进一步体现了自己的个性——面向对象,此时程序界开始分化,抽象语言和底层语言(c语言等)开始平分江山互不相干,Java也开始在自己的领域称霸。
C#大约出现在晚上10点左右,起初它似乎并没有引起人们的注意,因为人们还在为C++的深沉和Java的博学争吵着。这个结合了C++的深沉和Java的博学的混血儿能否带领人们迎接即将到来的新的黎明似乎还有待考验。
……
评论交流
共有34人开贴评论 38人参与评论 30人参与打分 查看
评价等级:







发表于:2009-3-30 11:01:00
最近正在拜讀這本書,總體來講,這本書很不錯,很適合初學,講解比較細致,并給出了很多比喻來對其中的關鍵點進行解釋。
但是還是給該書指出幾點問題所在:
1.第一章的VS截圖中居然出現了版權所有人---番茄花園,不知道微軟的人看到了會不會有什么想法.
2. 在講解Ajax那一章的時候我發現里面的文字跟博客園中TerryLee所寫的《ASP.NET AJAX入门系列》基本一模一樣啦。當然不知道是誰COPY誰的。參照地址http://www.cnblogs.com/Terrylee/archive/2006/11/12/ASPNET_AJAX_QuickStarts.html 3.前幾章的基礎講的太細太細了,即使沒有任何開發經驗的人來看也是有點太細了,個人認為學習一門技術, 包括開發語言,越快的能讓人學會和理解并使用才是王道。
花了一天時間讀了前幾張基礎并有選擇的看了一下,值得推薦,但是希望能把書中的紕漏進行修改,并對講解進行加精,如果簡單的一句話就能講清楚的東西就不要用很大的篇幅來介紹了。
但是還是給該書指出幾點問題所在:
1.第一章的VS截圖中居然出現了版權所有人---番茄花園,不知道微軟的人看到了會不會有什么想法.
2. 在講解Ajax那一章的時候我發現里面的文字跟博客園中TerryLee所寫的《ASP.NET AJAX入门系列》基本一模一樣啦。當然不知道是誰COPY誰的。參照地址http://www.cnblogs.com/Terrylee/archive/2006/11/12/ASPNET_AJAX_QuickStarts.html 3.前幾章的基礎講的太細太細了,即使沒有任何開發經驗的人來看也是有點太細了,個人認為學習一門技術, 包括開發語言,越快的能讓人學會和理解并使用才是王道。
花了一天時間讀了前幾張基礎并有選擇的看了一下,值得推薦,但是希望能把書中的紕漏進行修改,并對講解進行加精,如果簡單的一句話就能講清楚的東西就不要用很大的篇幅來介紹了。
| 我要写评论 |
| 查看所有评论交流(共34条) |


点击看大图





加载中...