ASP.NET学生网上选课系统论文+开题报告+英文文献+任务书 第5页
ASP.NET入门C#版
ASP(动态服务器主页)是一种较新的技术,它已经过几个阶段的发展(进化).它是怎么诞生的呢?在七年前,它作为一种简单的方法来往普通网页里添加动态内容。自从那时以后,它的发展势头强劲:作为高级网页程序的开发平台,包括:电子商务网站、基于事件驱动的门户网站和你在网上能看到的其他所有东西。ASP.NET 2.0 是ASP的最新版本,而且拥有最让人激动的更新。在ASP.NET帮助下,在网络编程时,开发者不再把一大堆HTML源码和脚本代码杂乱地放在同一页面上。你可以完全使用代码和工具(Visual Studio 2005)来创建网页程序。这些创新的代价仅仅是多学一些东西。你要学一些高级开发工具(Visual Studio)和工具包(the .NET Framework),而且你需要精通一门编程语言,如C#。网络发展的演化因特网是在1960年末在试验中诞生的。它的目标是:建立一个真实的、有弹性的信息网络——可以经受的起若干数量的电脑的崩溃,而不至于阻断其他电脑的正常通信。经得起潜在的重大灾难(如核武器攻击)。美国国防部提供了刚开始的研究基金。最早的因特网局限在教育机构和从事国防的单位。它因为作为学术研究的一种工具而繁荣,它让全球的研究人员可以彼此共享信息。到了1990初,伟大的“猫”诞生了,它通过电话线工作,从此,因特网向商业用户打开了大门。在1993年,第一个HTML浏览器诞生了,标志着因特网革命的到来。我们很难把最早的网页称为网页序。第一代的网页看起来更像小册子:主要由固定的HTML页面构成,这些也都需要手动修改。 一个简单的HTML页面有点像一个字处理文档——它包含了格式化的内容,可以在你的电脑上显示,但是并不完成其他任何功能。上面的就是一个最简单的例子,文档包括头信息和单行文本。一个HTML文档有两种类型的内容:文本和标记(告诉浏览器如何格式化)。这些标记很容易辨认,因为它们总是出现在< 和 >之间。HTML定义了不同级别的标题、段落、超链接、斜体和粗体格式、水平线等。举个例子:<h1>某个文本<h1>,告诉浏览器用标题1的格式来显示这个文本,就是用最大的黑体字来显示。图1-1显示了这个页面在浏览器中的效果。提示:你不需要精通HTML就能进行ASP.NET网页编程,虽然它(HTML)是很有用的。为了快速介绍一下HTML,给大家介绍一个网上的优秀HTML指南。HTML 2.0 首次引入了一个网页编程的新技术,称为HTML表单。HTML表单扩展了HTML的功能,不仅包含了格式化标签,而且包含了窗体小部件或者叫控件。这些控件包含了普通的功能部件,如下拉列表、文本框和按钮。下面是一个由HTML表单控件创建的网页。网页表单允许网页程序设计师设计标准的输入页面。当用户单击图1-2的提交按钮,所有在输入控件中的数据(在这个例子中是两个复选框)将打包成一个长字符串,接着发送到服务器。在服务器端,一个客户程序接收和处理这些数据。令人惊奇的是:这些为HTML表单创建有超过十年之久的控件仍然是你用来创建ASP.NET页面的基础。不同的是这些程序控件将运行在服务器端。在过去,当用户单击一个表单页面的按钮时,信息要通过e-mail来发送或者使用在服务器端运行的程序(通过CGI标准)。今天,你将可以使用更强大、更优雅的ASP.NET平台。理解ASP.NET的创建原因可以帮助我们了解其他网页开发技术遇到的问题。在原始的CGI标准下,举个例子,网页服务器必须为每个网页请求建立一个单独的程序实例。如果这个网页很受人们欢迎(那访问者将很多),那么网页服务器就要经受得起数以百计的独立程序副本,这样最终导致服务器反而因为受欢迎而成为受害者。为了解决这个问题,微软开发了ISAPI(网络服务程序编程接口),一个高层次的编程模型。ISAPI解决了性能问题,但是付出了复杂性的代价。即使ISAPI开发者是个C+编程老手,他仍然晚上担心到失眠,因为会遇到多线程处理这样让人麻烦的问题。ISAPI编程是给那些坚强的“夜猫子”,不是给那些懦弱的人。ISAPI并没有真正消失,取代它的是,微软利用它建立了一个更高级的开发平台,如ASP 和 ASP.NET。这两种技术都可以使开发者编写动态网页,而不需要担心底层的执行细节。由于这个原因,这两个平台成功到令人难以置信。最初的ASP平台吸引了将近一百万的开发人员。当ASP.NET第一次发布时,作为.NET Framework的核心部件受到人们更多关注。事实上,ASP.NET 1.0已经在数十个大型商业网络中得到应用,虽然它还在最后的测试阶段。虽然拥有类似的基础,ASP 和ASP.NET有根本的不同。ASP是基于脚本的编程语言,需要全面理解HTML,而且还要经过一大堆痛苦的编程训练。而ASP.NET,在另一方面,是面向对象的编程模型,建立网页页面就像建立桌面程序一样容易。在很多方面,学会ASP.NET比精通ASP要容易,而且ASP.NET功能更加强大。同时,服务器端的网络发展为从技术的字母形花片汤到广受欢迎的一类编程开发人员开始试着使用嵌入多媒体、JavaScript的小程序、DHTML和Java代码来增强网页的功能。这些基于客户端的技术不需要通过服务器的处理就能实现。所有的程序都(从服务器)下载到客户端浏览器,在本地执行。客户端技术的最大问题就是它们不被所有的浏览器和操作系统完美的支持。其中的一个原因就是网络开发太受欢迎了,首先是网络程序不需要通过CD安 装、下载和其他单调的配置。取而代之的是,一个网络程序只要能上网的电脑就可以执行了。但是,一旦开发者使用客户端技术,他们就会遇到一些常见的问题:比 如跨浏览器的兼容性。开发者就不得不在不同的浏览器和操作系统中测试他们的网页,甚至他们还要给用户发布浏览器更新。换句话说,客户端模型牺牲了网络程序 最重要的优良特性。由于上述原因,ASP.NET被设计为服务器端技术。所有的ASP.NET代码都在服务器上执行。当代码执行完毕时,用户就会得到一个普通的HTML页面,这样任何浏览器都可以浏览了。图1-3显示了服务器端和客户端模型的不同。这里还有几条原因要避免客户端编程:孤立性:客户端代码无法访问服务器资源。举个例子,没有一种简单的方式让客户端可以读取一个在服务器上的文件或进行数据库连接。(至少不会遇到安全性和浏览器兼容性的问题) 安全性:最终用户可以查看客户端代码。一旦有不怀好意的用户理解了程序是怎么工作的,他们就有可能乱来了。在某些方面,ASP.NET允许你通过服务器端编程结合最佳的客户端编程。举个例子:ASP.NET控件可以智能侦测客户端浏览器的属性。如果该浏览器支持JavaScript,那么这些控件将返回一个含有JavaScript的更多功能的页面。尽管如此,不管浏览器的功能有多强大,你的代码始终在服务器端执行。状态限制:为了保证最佳性能,网络设计成无状态的协议。意思就是:一旦页面已经传送给用户,连接就关闭了而且用户指定的信息也被丢弃了。ASP包括一个session state(会话状态)特性允许程序员来解决这个问题。使用session state,一个网页程序可以为每一个客户端暂时保存信息(保存在服务器的内存里)。尽管如此,如果一个网站是放在几个服务器上,session state就无能无力了。在这种情况下,一个客户要访问B服务器,而他的会话信息是被A服务器保留的,这样实际上这个会话信息将被丢弃掉。ASP.NET纠正了这个问题,允许把状态储存在中央仓库,就像一个单独的进程或者一个所有服务器都可以访问的数据库。ASP.NET通过引进全新的模型解决了上述问题(当然不止这些啦)。这个模型是基于一个伟大的技术,称之为.NET Framework。你应该知道的是:.NET Framework是几种技术的群集(集合)。.NET语言:包括C#VB.NET(Visual Basic .NET一种面向对象的、现代化的语言(VB 6.0的继任者);这些语言还包括:Jscirpt.NET(服务器端版本的JavaScript,J#(java的兼容产品),还有C++管理扩充。CLR(公共语言运行库):CLR是执行所有.NET程序和为这些程序提供自动服务的引擎,如安全验证、内存管理和优化等。.NET Framework类库:类库包含了成千上万个已经预建好的函数,你可以在你的程序中嵌入它们。这些众多属性有时也被成为一个技术集,如ADO.NET(用来创建数据库程序的技术)和Windows Forms(也是一种技术,用来创建基于桌面的用户界面程序)。ASP.NET:这是一种主机网页程序和网络服务的引擎,从.NET类库中包含了几乎所有特性。ASP.NET还包含了网页特有的服务。Visual Studio:这个可选的开发工具包含了众多提高效率和调试功能的特性。VS的安装CD(或DVD)包含了完整的.NET Framework,所以你不需要额外下载它。有趣的是,C#和VB.NET比C#和Java要相似多了(或者是VB6和VB.NET)。虽然语法是不同的,但是C#和VB.NET都使用.NET类库,也都由CLR支持。事实上,几乎所有的C#代码块都可以一行一行翻译成VB.NET的代码块。当然也有不行的时候(如:C#语言支持一种属性叫调用匿名方法,而VB.NET不支持)。但是对绝大部分来说,只要开发者学会了其中一个.NET语言,就可以很快学会另一种。简而言之,C#和VB.NET都是一流的,现代的用来开发下一代网络程序的语言。.NET 1.0引进了一种全新的语言。尽管如此,.NET 2.0语言的变化还是细微的。C# 2005和VB2005都添加了一些新的特性,但是这些语言绝大部分都没有变化。因此,任何使用C#1.0编写的代码都可以同样的在2.0下运行。在第二、三章,就就会学到C#语法和面向对象编程的基础。搞定了这些基础,你就可以开始创建简单的网页了。这样你就会少点困惑,学得更快。(向一些高级话题进军,如数据库访问和网络服务)CLR(公共语言运行库)只能运行IL代码,这就意味着它根本不知道你的源代码是用哪一个语言编写的,尽管如此,CLR竟然完成了另外一个编译步骤——它接受了IL代码并把它转换成适合当前平台的本机机器语言。这个步骤在程序启动时发生,而且在代码被真正执行之前。在ASP.NET程序中,当网络程序正在运行时,这些特定机器文件存储在高速缓存中,所以它们可以被复用(重新使用),以确保最佳性能。你或许会问.NET为什么不直接编译成机器语言。原因是:机器代码取决于多个因素,包括CPU。举个例子,如果你是为一台含有Intel 处理器的电脑而创建的机器代码,那么编译器将能够使用超线程技术来增强你的代码。这种适用特点机器的版本并不适合在其他电脑中运行,因为你无法保证它们使用同样的处理器。在VS 2005中,另一个受人欢迎的改变是支持不同的编码模型。而VS2003却受那个困扰,VS 2005支持某个范围的不同编码模型,使它成为具有灵活性、通用性我的设计工具。这就让你可以把HTML标签和事件处理代码放在同一个文件类或者分开存放,而不用委屈的使用VS,这样可以享受有用的特性好处,如代码智能完成。
上一页 [1] [2] [3] [4] [5] [6] [7] [8] [9] [10] ... 下一页 >>
ASP.NET学生网上选课系统论文+开题报告+英文文献+任务书 第5页下载如图片无法显示或论文不完整,请联系qq752018766