本书是由世界著名编程语言教材专家组织编写,讲解了C#这种基于.NET平台的通用编程语言,并介绍了如何使用它开发多层结构、客户/服务器、集中式数据库、基于Interner和Web的应用程序。内容浅显易懂,辅之以大量实例,帮助读者迅速掌握C#。本书既可作为计算机及相关专业教材,也可供编程爱好者参阅。
欢迎来到C#世界,并使用VisualStudio和.NET平台进行Windows、因特网和万维网编程。本书是新版.NET How To Program丛书中的第2册,书中给出了.NET平台范围内各式各样的前沿计算技术。
C#是C和C++发展的下一个阶段,是特别为微软的.NET平台开发的语言。C#提供了对编程人员来说极其重要的性能,诸如,面向对象编程、字符串、图形、图形用户界面(GUI)组件、异常处理、多线程、多媒体(音频、图像、动画和视频)、文件处理、预封装数据结构、数据库处理、基于因特网和万维网的客户机/服务器网络以及分布式计算等。C#语言非常适合实现基于因特网和万维网的应用程序,这些应用程序可以与基于PC的应用程序无缝连接。
.NET平台提供了强大的软件开发和部署能力,包括独立于特定的语言和平台。与其让开发人员学习新的编程语言,倒不如让他们可以使用任何(或若干)他们所熟知的.NET语言(诸如C++,Visual Basic .NET,Visual C++ .NET及其他)书写代码,为同一软件项目工作。除了提供语言独立性之外,.NET通过启用应用程序在多平台上驻留和相互通信,扩展了程序的可移植性,因而使得通过因特网传递Web服务更为容易。.NET平台使得基于Web的应用程序分布于消费类电子设备(诸如移动电话和个人数字助理)之中,就像分布在台式机上一样。微软公司并人到.NET平台的功能创立了全新的软件开发典范,大大提高了编程人员的生产率并缩短了开发周期。
本书中的新特性
本版包含许多新的特性和增强内容,包括:
● 突出显示——本书为了更加醒目,将关键元素突出显示,示例如下:
comments
keywords
literal values
errors and ASP .NET directives
text, class,method and variable names
● “代码清洗”——这一术语用于本书中程序格式化的应用过程,使得程序具有细致的注释和开放的布局。考虑到全书包含了近23 500行代码,因此采用突出显示并分组为小段的、编档良好的片段,这极大改善了代码的可读性,这也是我们的一个特别重要的目的。
● Web服务和ASP.NET——微软的.NET战略将Internet和Web包含为一个整体应用到软件开发和部署过程中。Web服务是这种战略中的一个关键技术,应用标准的Internet协议和技术进行信息共享、商业活动和其他交互活动(诸如HTTP,SOAP和XMI。等)。Web服务使得编程人员可以将Web转变为可重用软件组件库的形式,用这种形式将应用程序功能打包。在第21章中,我们给出了允许用户预订航班的Web服务。在这个例子中,用户访问Web页面,选定座位选项并将页面提交到Web服务器。然后该页面调用Web服务检查座位是否可用。集成到Visual Studio .NET中的Crystal Reports提供了以Web服务的形式陈列报告的能力。
● Web窗体、Web控件和ASP.NET——应用程序开发人员必须掌握创建基于Web的健壮的和可扩展的应用程序。.NET平台构架支持这样的应用程序。微软的.NET服务器端技术——ASP.NET允许编程人员构建响应客户端请求的Web文档。为了启用交互式Web页,服务器端程序需要处理用户输入到HTML窗体中的信息。ASP.NET与ASP以前的版本有着显著不同,允许开发人员使用.NET中强大的面向对象语言编制基于Web的应用程序。ASP.NET同时也提供了增强的可视化编程能力,这种能力与那些为桌面系统构建Windows窗体的应用相类似。编程人员可以通过向Web窗体上拖放Web控件,可视化地创建Web页面。在第20章中将介绍这些强大的技术。
● 面向对象编程——面向对象编程是用于开发稳健的、可重用的软件中的最为广泛的技术,而且C#提供了增强的面向对象编程技术。书中对面向对象编程做了大量阐述。在第8章中介绍了如何创建类和对象。这些概念在第9章中进行了扩展,讨论了编程人员如何“吸收”现有类中的功能来创建新类。第10章使读者熟悉多态、抽象类、具体类和接口等关键性概念,这对于继承层次结构中的对象来说,可增强其操作能力。
● xml——使用XML来探索软件开发行业、电子商业和电子商务领域,并且普遍贯穿于.NET平台。因为XML在描述数据和创建标记语言中是独立于平台的技术。XML的数据可移植性与C#的可移植应用程序与服务完美地集成在一起。在第18章中介绍了XMI。语言,其中介绍了基本的XML标记,并讨论了用于确认XML文档内容的技术,诸如文件类型定义(DTD)和模式(Schema)。同时也解释了如何使用文档对象模型(Document Object Model,DOM)来对XML进行编程操作,以及如何通过可扩展样式表语言转换(Extensible Stylesheet Language Transformations,XSLT)将XML文档转换成其他类型的文档。
● 多线程——我们可以在计算机上并行(或同时)执行多个任务,诸如打印文档、从网络下载文件和浏览Web。通过多线程技术,编程人员可以开发出执行并发任务的应用程序。在历史上,计算机只有单一的、昂贵的处理器供所有的应用程序共享其操作系统。今天,处理器越来越便宜,使得有可能构建出包含多个处理器并行工作的计算机——称其为多处理器计算机。多线程对单处理器系统和多处理器系统都是有效的。C#的多线程能力使得它的平台及其相关技术,在处理当今复杂的多媒体密集型、数据库密集型、基于网络和基于多处理器的分布式应用程序上有了更充分的准备。第14章中提供了有关多线程的详细探讨。
● ADO.NET——数据库存储着大量的信息供个人和组织访问和处理业务。随着微软活动数据对象(ActiveX Data objects,ADO)的发展,ADO.NET给出了为构建与数据库交互的应用程序,提供了一个新方法。ADO.NET使用XML和一个增强的对象模型,给开发人员提供了他们访问和处理数据库所需的工具,用于大规模、可扩展的、任务关键的多层应用程序。第19章中将详细介绍ADO.NET的功能和用于操纵数据库的结构化查询语言(SQL)。