友情提示:如果本网页打开太慢或显示不完整,请尝试鼠标右键“刷新”本网页!阅读过程发现任何错误请告诉我们,谢谢!! 报告错误
飞读中文网 返回本书目录 我的书架 我的书签 TXT全本下载 进入书吧 加入书签

c#高级编程(第6版)--前言-第2章

按键盘上方向键 ← 或 → 可快速上下翻页,按键盘上的 Enter 键可回到本书目录页,按键盘上方向键 ↑ 可回到本页顶部!
————未阅读完?加入书签已便下次继续阅读!



AJAX支持。

现在,用ASP和 Framework 3。5创建的每个页面都支持AJAX(在Webnfig文件中可以查看所有的Ajax配置)。在ASP控件工具箱中有一些新的服务器控件,可以给Web站点添加AJAX功能。ASP AJAX的更多内容可参见第39章。
 Language Integrated Query(LINQ) Framework

LINQ是最酷、最令人期待的特性,它提供了访问底层数据的功能。微软公司把LINQ提供为一个轻型的功能,为底层的数据库提供了一个强类型化的界面。LINQ为开发人员提供了在他们习惯的编码环境下编写代码的方式,并可以把底层数据作为对象来访问,以利用IDE、IntelliSense甚至调试功能。

使用LINQ可以查询对象、数据集合、SQL Server数据库、XML等。无论底层数据源是什么,都可以用相同的方式获得数据,因为LINQ提供了一个查询数据的结构化方式。

下面的代码获得伪XML文档,提取XML文件中所有的顾客姓名:

XDocument xdoc = XDocument。Load(@〃C:Customers。xml〃);

var query = from people in xdoc。Descendants(〃CustomerName〃)

select people。Value;

Console。WriteLine(〃{0} Customers Found〃; queryunt());

Console。WriteLine();

foreach (var item in query)



Console。WriteLine(item);



提示:

第11、27和29章介绍了LINQ的各个方面。
Visual Studio中的多目标

在许多情况下,开发人员现在使用多个应用程序,它们分别面向 Framework 2。0、3。0和3。5。继续在开发计算机上保留Visual Studio的多个版本,以使用 Framework的多个版本似乎很愚蠢。

因此,Visual Studio的最新版本2008现在支持使用自己需要的 Framework版本。创建新的应用程序时,可以选择创建面向 Framework 2。0、3。0或3。5的应用程序。
支持最新的应用程序类型

在 Framework 3。0发布不久,就出现了一些非常新的功能。在这个版本中,允许使用Windows Presentation Foundation(WPF)建立新的应用程序类型,以及基于Windows munication Foundation(WCF)和Windows Workflow Foundation(WF)的应用程序和库。

在Visual Studio 2008中,可以创建所有这些应用程序,它们现在都可以用作项目类型,并带有新控件、Visual Studio向导和功能。
C#的优点

C#在某种程度上可以看作是面向Windows环境的一种编程语言。在过去的十几年中,Microsoft给Windows和 Windows API添加了许多功能,Visual Baisc 2008和C++也经历了许多变化。虽然Visual Baisc和C++最终已成为非常强大的语言,但这两种语言也存在问题,因为它们保留了原来的一些内容。

对于Visual Basic 6及其早期版本来说,它的主要优点是很容易理解,许多编程工作都很容易完成,基本上隐藏了Windows API和组件结构的内涵。其缺点是Visual Basic从来没有实现真正意义上的面向对象,所以大型应用程序很难分解和维护。另外,因为Visual Baisc的语法继承于BASIC的早期版本(BASIC主要是为了让初学者更容易理解,而不是为了编写大型商业应用程序),所以不能真正成为结构化或面向对象的编程语言。

另一方面,C++置根于ANSI C++语言定义。它与ANSI不完全兼容,因为Microsoft是在ANSI定义标准化之前编写C++编译器的,但已经相当接近了。但是,这导致了两个问题。其一,ANSI C++是在十几年前的技术条件下开发的,因此不支持现在的概念(例如Unicode字符串和生成XML文档),某些古老的语法结构是为以前的编译器设计的(例如成员函数的声明和定义是分开的)。其二,Microsoft同时还试图把C++演变为一种用于在Windows上执行高性能任务的语言,为此不得不在语言中添加大量Microsoft专用的关键字和各种库。其结果是在Windows中,该语言成了一种非常杂乱的语言。让C++开发人员说说字符串有多少种定义就可以说明这一点:char*、LPTSTR、string、CString (MFC 版本)、CString (WTL 版本)、wchar_t*、 OLECHAR*等。

现在进入时代—— 一种全新的环境,它对这两种语言都进行了新的扩展。Microsoft给C++添加了许多Microsoft专用的关键字,并把Visual Baisc演变为Visual Baisc ,再演变为Visual Baisc 2008,保留了一些基本的Visual Baisc语法,但在设计上完全不同,从实际应用的角度来看,Visual Baisc 2008是一种新语言。

在这里,Microsoft决定给开发人员另一个选择—— 专门用于、具有新起点的语言, 即C#。Microsoft在正式场合把C#描述为一种简单、现代、面向对象、类型非常安全、派生于C和C++的编程语言。大多数独立的评论员对C#的说法是“派生于C、 C++ 和Java”。这种描述在技术上是非常准确的,但没有涉及到该语言的真正优点。从语法上看,C#非常类似于C++和Java,许多关键字都是相同的,C#也使用类似于C++和Java的块结构,并用括号({})来标记代码块,用分号分隔各行语句。对C#代码的第一印象是它非常类似于C++或Java代码。但在这些表面的类似性后面,C#学习起来要比C++容易得多,但比Java难一些。其设计与现代开发工具的适应性要比其他语言更高,它同时具有Visual Basic的易用性、高性能以及C++的低级内存访问性。C#包括以下一些特性:

●       完全支持类和面向对象编程,包括接口和继承、虚函数和运算符重载。

●       定义完整、一致的基本类型集。

●       对自动生成XML文档说明的内置支持。

●       自动清理动态分配的内存。

●       可以用用户定义的特性来标记类或方法。这可以用于文档说明,对编译有一定的影响(例如,把方法标记为只在调试时编译)。

●       对基类库的完全访问权,并易于访问Windows API。

●       可以使用指针直接访问内存,但C#语言可以在没有它们的条件下访问内存。

●       以Visual Basic的风格支持属性和事件。

●       改变编译器选项,可以把程序编译为可执行文件或组件库,该组件库可以用与ActiveX控件(组件)相同的方式由其他代码调用。

●       C#可以用于编写ASP动态Web页面和XML Web服务。

应该指出,对于上述大多数特性,Visual Baisc 2008和Managed C++也具备。但C#从一开始就使用,对特性的支持不仅是完整的,而且提供了比其他语言更合适的语法。C#语言本身非常类似于Java,但其中有一些改进,因为Java并不是为应用于环境而设计的。

在结束这个主题前,还要指出C#的两个局限性。其一是该语言不适用于编写时间急迫或性能非常高的代码,例如一个要运行1000或1050次的循环,并在不需要这些循环时,立即清理它们所占用的资源。在这方面,C++可能仍是所有低级语言中的佼佼者。其二是C#缺乏性能极高的应用程序所需要的关键功能,包括保证在代码的特定地方运行的内联函数和析构函数。但这类应用程序非常少。
编写和运行C#代码的环境

 Framework 3。5运行在Windows XP、2003、Vista和最新的Windows Server 2008上。要使用编写代码,需要安装 3。5 SDK。

除非要使用文本编辑器或其他第三方开发环境来编写C#代码,否则一般使用Visual Studio 2008。运行托管代码不需要安装完整的SDK,但需要运行库。需要把运行库分布到还没有安装它的客户机上。
本书内容

在本书中,首先在第1章介绍的整体体系结构,给出编写托管代码所需要的背景知识,此后本书分几部分介绍C#语言及其在各个领域中的应用。

第Ⅰ部分—— C#语言

本部分给出C#语言的背景知识。这一部分没有指定任何语言,但假定读者是有经验的编程人员。首先介绍 C#的基本语法和数据类型,再介绍C#的面向对象特性,之后是C#中的一些高级编程论题。

第Ⅱ部分—— Visual Studio

本部分介绍全世界C#开发人员都使用的主要IDE:Visual Studio 2008。本部分的两章探讨使用工具建立基于 Framework 3。5的应用程序的最佳方式,另外,还讨论项目的部署。

第Ⅲ部分—— 基类库

本部分介绍在环境中编程的规则。特别是安全性、线程本地化、事务处理、建立Windows服务的方式,以及将自己的库生成为程序集的方式。

第Ⅳ部分—— 数据

本部分介绍如何使用ADO和LINQ访问数据库,以及与目录和文件的交互。我们还详细说明对XML的支持、对Windows操作系统的支持,以及SQL Server 2008的特性。在LINQ部分,特别关注LINQ to SQL和LINQ to XML。

第Ⅴ部分—— 显示

本部分讨论传统Windows应用程序的创建,在中这种应用程序称为Windows窗体。Windows窗体是应用程序的胖客户版本,使用创建这些类型的应用程序是实现该任务的一种快捷、简单的方式。除了介绍Windows窗体之外,我们还将论述GDI+,这种技术可用于创建包含高级图形的应用程序。本部分还阐述如何编写在网站上运行的组件,如何编写网页。其中包括ASP 3。5提供的许多新特性。最后,我们还将陈述如何建立基于WPF和VSTO的应用程序。

第Ⅵ部分——通信

这一部分介绍通信,主要论述独立于平台进行通信的Web服务、在客户机和服务器之间通信的 Remoting技术、在后台上运行的Enterprise Services和D通信。有了消息异步排队技术,可以进行断开连接的通信。本部分还介绍如何利用新的WCF和WF。

第Ⅶ部分—— 附录

这一部分介绍如何建立应用程序,来利用Windows Vista中的新功能,
返回目录 上一页 下一页 回到顶部 0 0
未阅读完?加入书签已便下次继续阅读!
温馨提示: 温看小说的同时发表评论,说出自己的看法和其它小伙伴们分享也不错哦!发表书评还可以获得积分和经验奖励,认真写原创书评 被采纳为精评可以获得大量金币、积分和经验奖励哦!