内容简介
  随着.NET功能的整体增强,Visual Basic的功能也得到极大的提升,应用也越来越广。本书通过大量示例详细阐述Visual Basic 2005的新特性、各种编程知识和开发方法,适合那些有一点Visual Basic .NET基础知识的初级程序员或者想迁移到Visual Basic 2005的其他程序员。该书与《Visual Basic 2005入门经典(第4版)》以及它们的早期版本一直是中国VB程序员学习.NET技术的优秀图书。
2002年,伴随着VB.NET的引入,Visual Basic产生了自发布以来最大的变革。十几年来,VB一直没有进行大的修订。但.NET已经远远超出了这种修订,它改变了软件开发的几乎所有方面。从集成Internet功能到创建面向对象的架构,VB.NET向传统的VB开发人员发出了挑战,要求他们学习全新的概念和技术。 2005年,Microsoft对Visual Basic语言做了进一步的改进(重命名为VB 2005)。作为一种真正的面向对象语言,VB 2005引入了很多新增功能。传统的VB6开发人员必须从头学习这些内容。 首先,需要学习VB 2005和旧版本之间的区别。在一些情况下,相同的功能要采用不同的方式来实现。这些改变不是任意的,而是有很充足的理由。我们必须抛弃一些旧习惯,培养新习惯。 接着,必须接受新概念。完全面向对象的概念、新的组件技术、新的用于本地和Internet界面的可视化工具,所有这些都是在VB 2005中高效开发应用程序的必备技能。 本书将全面阐述VB 2005:首先讨论.NET Framework,最后讨论部署.NET 应用程序的最佳方式。中间部分讨论从数据库访问到与诸如XML等其他技术集成的一切内容,并详细地介绍新增功能。您将会看到,VB 2005已经成为一种强大且易于使用的语言。在编写网络程序时,就如同编写桌面程序一样得心应手。 Visual Basic的重要性 在.NET的早期应用中,Microsoft的新语言C#得到了广泛的关注。但随着.NET应用的增多,VB的重要性也逐渐显现出来。Microsoft对外宣称,当生产率是最重要因素时,VB.NET是开发应用程序的最佳语言。 VB的未来开发将强调以最高效的方式访问整个.NET Framework的能力,而C#开发强调的是编写代码的经验,这非常切合VB的传统作用:语言开发人员在现实世界中使用它尽可能快地创建商务应用程序。 区别不仅仅在学术方面。.NET Framework的一个最重要的优点是,它允许用非常少的代码编写应用程序。在商务应用程序中,主要目标是编写业务逻辑,尽可能减少例程编码任务。其价值在新的.NET Framework中不是编写出许多代码,而是用尽可能少的代码编写出更健壮、有效的应用程序。 VB非常适合于这种类型的开发,因此成为目前既经济又实惠的软件开发工具,将来它还会为此目的做进一步的细化和改进。 本书读者对象 本书主要针对有经验的、希望深入学习VB 2005的开发人员。本书讨论了最常见的编程任务和概念,既适合于从早期版本过渡到VB 2005版本的开发人员,也适合于以前使用过VB.NET,目前需要更深入理解的开发人员。 本书对VB概念进行了全面的介绍,但.NET Framework的内容广博而丰富,不可能在一本书里讲清楚,本书没有把Web开发作为最重要的内容,但包含了VB中基于浏览器的编程内容,专业的Web开发人员应该参考清华大学出版社引进并出版的《ASP.NET 2.0高级编程》。 使用本书需要的条件 尽管可以使用.NET Framework SDK中的命令行工具来创建VB应用程序,但是本书的大半部分内容仍将使用VS 2005(专业版或更高)进行举例。如果您使用的是VS.NET 2002或者VS.NET 2003,那么本书的很多例子将无法运行,因为代码中的很多功能都是旧版本中没有的。 此外: ● 某些章节使用了SQL Server 2005。但您也可以使用VS 2005自带的SQL Express来运行样例代码。 ● 某些章节使用了Internet Information Services(IIS)。IIS包含在Windows 2003 Server、Windows 2000 Server、Windows 2000 Professional和Windows XP中,但它不会被默认安装。 ● 第21章在介绍排队事务时使用了MSMQ。MSMQ包含在Windows 2003 Server、Windows 2000 Server、Windows 2000 Professional和Windows XP中,但它也不会被默认安装。 本书主要内容 第1章解释了.NET的重要性和它对应用程序开发的影响。为了理解.NET的重要性以及当前开发技术存在的缺陷,我们首先讨论了包括COM和DNA在内的体系结构模式,然后讲述.NET如何使用公共语言运行库(CLR)来纠正这些技术中的缺点。 第2章讨论了一个VB 2005应用程序。在开发这个应用程序时,我们将讨论VS 2005的一些新功能。 第3章将讨论Visual Basic中的许多常用类型。本章的主要目的是让读者熟悉值类型和引用类型,帮助具有VB6背景的开发人员理解VB 2005中定义变量的方式的主要差异。 第4章论述VB 2005中面向对象编程的特性。本章将定义对象、类、实例、封装、抽象、多态性和继承性。 第5章讲述了继承的概念及在VB 2005中如何利用继承。我们将解释如何创建简单和抽象的基类,如何创建可以派生其他类的基类。 第6章探讨了.NET平台的核心—— 公共语言运行库。CLR负责管理.NET平台编译的代码的执行。我们将论述版本变化和部署、内存管理、跨语言集成、元数据和IL Disassembler。 第7章把第4章和第5章的理论应用于实践。我们将讨论4个主要的面向对象概念(抽象性、封装性、多态性、继承),以及如何将这些概念应用到设计和开发中,创建高效的面向对象的应用程序。 第8章介绍了新版本最大的改进之一——泛型。泛型是一个通用的强类型集合,它可以减少出错几率,提高性能,并为集合提供Intellisense支持。 第9章介绍了命名空间及其层次结构。解释了命名空间的概念和某些常用的命名空间。此外,还介绍了如何创建新的命名空间,以及在项目中如何导入命名空间,如何给命名空间起别名。本章还介绍了VB 2005新引入的My命名空间。 第10章通过详细讨论CLR异常处理程序和新的Try…Catch…Finally结构,描述了VB 2005中错误处理的原理。除此之外,还描述了错误和跟踪的记录,以及如何利用这些方法获取程序工作方式的反馈。 第11章集中讨论了需要了解的ADO.NET对象模型,以便能够建立灵活、快速和可伸缩的数据访问对象和应用程序。该章还讲述了ADO向ADO.NET的转化,讨论了为了建立对.NET应用程序的数据访问而需要理解的ADO.NET主要对象。 第12章展示了.NET Framework提供的用于生成和处理XML的功能。我们介绍了.NET Framework的XML相关命名空间并详细讨论了一部分命名空间中的类。本章还涉及到一些利用XML的技术,比如ADO.NET和SQL Server。 第13章介绍了.NET提供的安全功能和相关工具。Caspol.exe和Permview.exe可以帮助建立和维护各种安全策略。System.Security.Permissions命名空间可用于管理权限。我们还通过代码演示了System.Security.Cryptography命名空间的功能。 第14章讲述了Windows窗体,主要讨论了窗体和内置控件。还讨论了哪些是新的,哪些是对Visual Basic以前版本的修改,还讨论了System.Windows.Forms命名空间。 第15章讨论了在构建Windows窗体应用程序时会用到的高级功能。 第16章探讨了Web窗体以及如何从它们的使用中受益。本章通过使用越来越复杂的示例,讲述了如何利用快速应用程序开发(Rapid Application Development,一般与Windows应用程序相关)的强大功能开发Web应用程序。 第17章介绍了很多在ASP.NET 2.0中新引入的功能。我们举例说明了跨页面发送、主从页面、站点导航以及个性化等高级功能。 第18章讨论了程序集的概念和在CLR中的作用。我们还学习了程序集的结构、内容以及包含的信息。 第19章介绍了程序集清单,说明了清单在部署过程中的作用。还介绍了VS 2005和CLR提供的各种应用程序部署方法。 第20章介绍了COM和.NET组件的互操作性,Microsoft提供了哪些工具将这两项技术链接起来。 第21章探讨了.NET组件服务,特别讨论了事务处理和排队组件。 第22章将学习线程,理解.NET Framework中的各种对象如何让用户开发出多线程的应用程序。我们将讨论如何创建线程,如何将它们与进程关联在一起,以及多任务和多线程之间的差异。 第23章探讨了如何利用VB.NET创建和使用Web服务。该章还讨论了CLR提供的用于建立和利用Web服务的抽象类,论述了一些支持Web服务的技术。 第24章讨论如何在传统的3层应用程序设计中使用远程服务。本章将论述远程服务的基本体系结构,并建立一个基本服务器和客户程序,使用一个对象将客户的请求传递到业务层上。接着介绍如何使用串行化把服务器上更复杂的对象传递给客户,以及如何使用调用环境(call context),在每个调用中,把额外的数据从客户端传递给服务器,但无须改变对象模型。 第25章讨论了在Windows服务的生成过程中,如何使用VB 2005。该章将讨论Windows服务的创建、安装、运行和调试。 第26章介绍了开发网络应用程序时需要使用的各种协议。我们还讨论了如何把庞大的网络融合到自己的应用程序中。 第27章介绍了如何从Web上下载资源,如何设计自己的通信协议,如何在应用程序中复用Web浏览器控件。 附录A介绍了VB编译器vbc.exe所提供的功能。 附录B列出了一些可用的VB资源。 用户支持 我们总是想知道您对本书的看法,您喜欢哪些内容,您不喜欢哪些内容,这些信息将有助于我们下一次做得更好。如果您有什么意见和建议,请向fwkbook@tup.tsinghua.edu.cn发邮件。但是,请您一定要在您的信中注明本书的书名。 如何下载本书的示例代码 在您登录到Wrox站点/时,只需使用Search工具或使用书名列表就可以找到本书。接着在Code栏中单击Download链接,或单击本书信息页面上的Download Code链接,就可以获得本书所有的源代码。另外,您也可以从本书的合作站点www.tupwk.com.cn/downpage上下载本书的所有源代码。 从以上站点上下载的文件使用WinZip进行了压缩。在把文件保存到硬盘的一个文件夹中时,需要使用解压缩软件(如WinZip 或 PKUnzip)对该文件解压缩。在解压缩时,代码常常放在各自的章节文件夹中。在开始解压缩过程时,一定要将解压缩软件WinZip 或 PKUnzip设置为使用文件夹名。 勘误表 尽管我们已经尽了各种努力来保证文章或代码中不出现错误,但是错误总是难免的,如果您在本书中找到了错误,例如拼写错误或代码错误,请告诉我们,我们将非常感激。通过勘误表,可以让其他读者避免受挫,当然,这还有助于提供更高质量的信息。请给fwkbook@tup.tsinghua.edu.cn发电子邮件,我们就会检查您的信息,如果是正确的,就把它发送到该书的勘误表页面上,或在本书的后续版本中采用。 要在网站上找到勘误表,可以登录,通过Advanced Search工具或书名列表查找本书,然后在本书的信息页面上,单击Book Errata链接。 E-Mail支持 如果您希望直接就本书的问题向对本书知之甚多的专家咨询,那么,就向support@wrox. com发电子邮件,在电子邮件的“主题”(Subject)栏中,加上本书的名称和ISBN的最后4位号码。典型的电子邮件应该包括下列内容: ● 在“主题”栏加上书的名称、ISBN的最后4位数字(5368)和问题所在的页码。 ● 在邮件的正文中加上您的姓名、联系信息和问题。 我们不会发给您垃圾邮件。我们只需要详细的情况以节省您的宝贵时间和我们的时间。当您发送电子邮件时,它会直接链接到以下支持链: ● 客户支持—— 您的消息会传送到我们的客户支持人员,他们是阅读信息的第一人。他们有常见问题的文件,会迅速回答一般性的问题。他们回答关于本书和网站的一般性问题。 ● 编辑支持—— 更深的问题会转发到负责本书的技术编辑处。他(或)她具有编程或特殊产品的经验,能够回答某个主题的详细技术问题。 ● 作者支持—— 最后,在编辑都不能回答问题的情况下(这种情况很少出现),这些问题将转发到作者。我们试图保护作者不要从写作中分心,但是,我们也很愿意将特殊的问题转发给他们。所有的Wrox作者帮助支持他们的书籍。他们向客户和编辑回复电子邮件,所有的读者都会从中受益。 Wrox支持过程只能提供直接与已出版的图书相关的问题。对于超出此范围的问题可以通过/论坛的团体列表来提供支持。 P2P邮件列表是为作者和同行的讨论而设立的。我们在邮件列表、论坛和新闻组中提供“程序员到程序员的支持”(programmer to programmer support),还包括一对一的电子邮件支持系统。如果把问题发送给P2P,就可以相信,您的问题不仅仅是由支持专家解答,而且还要提供给我们邮件列表中的许多Wrox作者和其他业界专家。在上,可以从许多不同的列表中获得帮助,不仅在阅读本书时获得帮助,还可以在开发应用程序时获得帮助。在网站的.NET类别中,最适合本书的是beginning_vb和vb_dotnet列表。 要订阅一个邮件列表,可以遵循下面的步骤: (1) 进入。 (2) 从左侧的菜单栏中选择合适的列表。 (3) 单击想加入的邮件列表。 (4) 按照指示订阅和填写电子邮件地址和密码。 (5) 回复接收到的确认电子邮件。 (6) 使用订阅管理器加入更多的列表,设置自己的邮件设置。 为什么这个系统提供最好的支持 您可加入该邮件列表中,也可以每周分类接收它们。如果您没有时间或设备接收该邮件列表,可以搜索我们的在线文档。垃圾邮件和广告邮件会被删除,您自己的电子邮件地址会被独特的Lyris系统保护起来。任何加入或退出列表的查询,或者与列表相关的一般问题,都应发送到listsupport@。