Wrox的C#高级编程第三版第一部分第一章(22~23页)

原创 2004年11月02日 00:19:00

<?xml:namespace prefix = o ns = "urn:schemas-microsoft-com:office:office" />

 

1.4.1.1    ASP.NET的特性

首先,也是最重要的,ASP.NET页面是结构化的。这就是说,每一个页面都是一个继承自.NET System.Web.UI.Page的有效类,而且你可以重写一些方法,这些方法会在整个页面的生存其中调用(你可以认为这些方法就像原来在ASP下的global.asa里的OnApplication_Start OnSession_Start事件差不多)。因为你可以直接将页面的功能直接放在事件处理程序中实现,ASP.NET页面很容易理解。

ASP.NET页面的另一个优点是你可以用Visual Studio .NET创建它,你也可以用同样的开发环境创建ASP.NET页面所用到的商业逻辑和数据访问组件。一个Visual Studio .NET项目或者解决方案包含一个应用程序相关联的所有文件。而且,你还可以在这个编辑器里调试你的ASP页面,这可比原来的Visual InterDev要好得多。配置InterDev和工程的Web服务器以令他们支持调试是一件令人头痛的事情。

最清楚的是,ASP.NET的后置代码特性可以使你更进一步的结构化你的方法。ASP.NET允许你将服务器端的功能于页面代码隔离开来,单独放到一个类中,这个类会被编译成DLL文件,并且这个DLL会被放置在HTML部分的下级目录中。在页面的顶不会有一个后置代码的指示将文件和它的DLL连接起来。当游览器请求一个页面的时候,Web服务器就会再页面的后置代码所产生的DLL文件中引发类中的相应事件。

最后,但是也很重要,ASP.NET带来的性能增加是显著的。相比较经典的ASP页面都是解释性相应每个请求而言,Web服务器缓存的是经过编译后的ASP.NET页面。这意味着以后对于ASP.NET页面的请求执行起来就会比以前快得多。

ASP.NET同样也使编写基于游览器的窗体变得简单,这些窗体你可以在企业内网中使用。传统的基于窗体的应用程序提供一个功能丰富的用户界面(富客户端),但是因为这些用户界面程序运行在不同的机器上,所以很难去维护它们。正因为这个原因,当人们既需要一个功能强大的用户界面又需要为用户提供广泛的支持的时候,人们就会依靠基于窗体的应用程序。

但是,随着IE5的到来和Navigator 6的没落,基于窗体的应用程序的优点越来越不明显。IE 5DHTML一致并且全面的健全的支持,允许程序员创建同原来富客户端环境完全相同的基于Web的应用程序。当然,这样的应用程序在IE是必要的并且标准的,但是Navigator却不支持。在许多工业情况中,标准化现在是正常的。

1.4.1.2    Web Forms

为了使建立Web页面更加容易,Visual Studio .NET提供了Web Forms它们允许你用像创建Visual Basic 6 或者 C++ Builder窗口的方式图形化的建立ASP.NET页面,通过那种拖动一个toolbox空间放到窗体中的方式,相应的代码就会出现在窗体中,最后你只需要为每个空间的事件编写程序就可以了。当你用C#创建Web窗体的时候,你实际上是在创建一个继承自Page基类的C#类,并且某个ASP.NET页面指定此类是其后置代码。当然,你创建Web窗体不必非采用C#,你也可以使用Visual Basic .NET或者其他的.NET语言都无妨。

在过去,开发Web应用程序的困难使得很多团队都不喜欢开发Web应用程序。如果你想要成功开发Web应用程序,你就必须掌握很多不同的技术,比如VBScript, ASP, DHTML, JavaScript等等。通过将窗体的概念应用于Web页面,Web使得Web开发变得相当的简单。

Web 控件

       Web窗体使用的控件与ActiveX控件不同。它们是ASP.NET命名空间中的一些XML标签,在请求一个页面时,Web游览器动态的将其转换为HTML和客户端脚本。令人惊奇的是,Web服务器可以有好几种方法执行服务器端的控件,根据请求着的游览器的不同而做出相应的转化。这就意味着现在为Web页面编写通用的用户界面是非常简单的,而不用担心你的页面将会运行在什么样的游览器上,因为Web替你考虑这一切。

你可以使用C# 或者 Visual Basic .NET来扩充你的Web窗体工具箱。建立一个新的服务器端控件事非常简单的事情,实现.NETSystem.Web.UI.WebControls.WebControl类就可以了。

1.4.1.3    XML Web服务

今天,HTML页面占据了World Wide Web的大多数应用。但是,通过XML计算机有了一种独立于设备的在Web上相互通信的方式。将来,计算机可以利用Web XML来交换信息而不是采用专用线路和专有的格式,例如Electronic Data Interchange (EDI)XML Web服务是为面向服务Web而设计的,在最终显示给用户之前,远程计算机可以互相提供动态的信息并且分析和重新格式化已提供给用户。XML Web服务以XML的形式提供了一种计算机之间互相提供信息的简便方法。

在技术上说,.NET上的XML Web服务就是一种返回XML而不是HTML给客户端的ASP.NET页面。这样的页面饱含一个派生自Web Service类的后置代码的DLLVisual Studio .NET IDE提供了一个简化Web服务开发的引擎。

一个组织主要有两个理由采用XML Web服务。第一个原因是XML Web服务是依赖于HTTP的,XML Web服务可以利用现有的网络来作为信息传输的媒介。另一个原因是XML Web服务所使用的数据格式XML是自我描述的、非专用的、平台独立性的。

1.4.2       创建Windows Forms

尽管C# .NET非常适合开发Web开发,但是他们仍然为开发所谓的胖客户端或者富客户端应用程序提供了良好支持,这些程序都必须被安装到最终用户的机器上并且在那里执行。这些功能都是由Windows Forms提供的。

Wrox的C#高级编程第三版第一部分第一章(1~7页)

第一章        .NET架构      阅读本书你会发现,本书通篇都强调,C#语言决不该被孤立的看待,它必须与.NET Framework一起考虑。C#编译器是以.NET为特定目标的,所以这就意...
  • coofucoo
  • coofucoo
  • 2004年10月20日 22:51
  • 1289

Wrox的C#高级编程第三版第一部分第一章(16~18页)

        如果不同的可执行代码在同样的进程空间里运行,那么显然他们可以方便的共享数据,因为理论上他们可以直接访问彼此的数据。尽管理论上这样是可行的,但是,在实际情况下CLR会检查每个运行的代码以...
  • coofucoo
  • coofucoo
  • 2004年10月27日 00:49
  • 1193

Wrox的C#高级编程第三版第一部分第一章(13~15页)

公共语言规范       Common Language Specification (CLS)与CTS一起以保证语言互操作性的实现。CLS是一个最小的标准集合,所有以.NET作为目标运行平台的编译器...
  • coofucoo
  • coofucoo
  • 2004年10月26日 12:13
  • 1391

Wrox的C#高级编程第三版第一部分第一章(1~9页)

第一章        .NET架构      阅读本书你会发现,本书通篇都强调,C#语言决不该被孤立的看待,它必须与.NET Framework一起考虑。C#编译器是以.NET为特定目标的,所以这就意...
  • coofucoo
  • coofucoo
  • 2004年10月23日 02:18
  • 1363

Wrox C#高级编程 第三版第一部分第一章 目录

目      录第一部分:C#语言第一章     .NET架构1.1          C#与.NET的关系(The Relationship of C# to .NET)1.2          公...
  • coofucoo
  • coofucoo
  • 2004年10月19日 23:18
  • 1329

Wrox的C#高级编程第三版第一部分第一章(18~21页)

1.4.1        私有程序集私有程序集是使程序集中最简单的类型。他们一班附带于软件上面并且也仅仅被该软件所用。一般情况下附带私有程序集的情况是这样的,你在编写一个由一个可执行文件和好几个类库组...
  • coofucoo
  • coofucoo
  • 2004年10月28日 23:13
  • 1387

Wrox的C#高级编程第三版第一部分第一章(9~12页)

1.3.2        值类型和引用类型和其他的任何一种编程语言一样,IL提供了许多预先定义好的原始数据类型。但是,明显区别值类型和应用类型也是IL的一个重要特性。值类型就是那些直接存储数据值的那些...
  • coofucoo
  • coofucoo
  • 2004年10月24日 00:36
  • 1385

《C#高级编程第三版》第一部分第一章初稿发布!!!

  第一部分:C#语言 第一章     .NET架构  翻译:coofucoo           第一章        .NET架构      阅读本书你会发现,本书通篇都强调,C#语言决不该被孤立...
  • coofucoo
  • coofucoo
  • 2005年01月31日 01:57
  • 2031

apue《UNIX环境高级编程第三版》第一章答案详解

大家好,从这周开始学习apue《UNIX环境高级编程第三版》,在此,我要感谢网易的一个工程师朋友和室友,没有他们,我不会开始真正的学习这本书,希望大家以后开始慢慢进步。废话少说,直接上课后习题了。 ...
  • hubbybob1
  • hubbybob1
  • 2014年11月06日 13:45
  • 2172

apue《UNIX环境高级编程第三版》第二章答案详解

转载请标明本博客地址 UNIX高级编程第二章习题答案:
  • hubbybob1
  • hubbybob1
  • 2015年11月11日 22:11
  • 1439
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:Wrox的C#高级编程第三版第一部分第一章(22~23页)
举报原因:
原因补充:

(最多只允许输入30个字)