了解使用ASP.NET的脚本语言

来源:互联网 发布:武汉软件 编辑:程序博客网 时间:2024/06/05 09:40

1.6.1 Visual Basic.NET的真面目
  
Visual Basic.NET可以说成是Visual Basic 6.0的版本升级,也因此有些书中称Visual Basic 7.0,但实际上,微软的工程师们是几乎是对Visual Basic内核进行了重新的构架。Visual Basic是Windows平台下简单、易学、高效的一种编程语言,其快速开发的特性深受程序员的喜爱,但是在.NET版本以前的Visual Basic面向对象的能力远远不能满足程序员的需要,这也是越是大的项目,也是少用到Visual Basic的原因。但是Visual Basic.NET新增和加强了许多新的面向对象的特性,比如继承、重载等等。语言的新特点也包括了对进程的控制和底层结构的操作,这些新特性使得Visual Basic.NET再次成为程序员关注的焦点。下面我们就简要的浏览一下Visual Basic.NET的新特性。

(1)构造函数。

当一个对象被创建的时候,它能否被正确地初始化,这是我们比较关心的问题,而利用构造函数就可以一步到位地为该对象的成员赋值,从根本上保证了对象的正确初始化。

(2)封装性

封装性使得代码的重用性和项目的合作成为可能。我们在使用别人的封装对象的时候,不必了解其中的编程结构,只需要提供正确的差数和入口,就能实现它的功能。实际上任何一个控件都是一个封装体,而程序方展的方向就是封装,再封装。

(3)自由线程

线程是进程中的一个实体,一个进程有多个线程,线程之间彼此共享进程资源,提高进程效率,当然线程的操作是十分复杂的。Visual Basic .NET 提供了对线程的编写支持,而且是一种相对简单的形式实现出来的。

(4)继承

继承是面向对象系统中另一个很重要的概念,而人们判断一种语言时候是面向对象语言的主要依据就是该语言是否具有继承性。

(5)基于对象性

对象是类的实体,这一点,Visual Basic 6.0就做到了

(6) 面向对象性

 面向对象性的语言必须至少满足一下三个条件:封装性(Visual Basic 4.0已经实现)、继承性(Visual Basic.NET中实现)、多态性(Visual Basic 3.0已经实现),所以,Visual Basic.NET已经完全的面向对象技术。

(7) 重载和覆载

重载是实现同名函数的功能多样化,覆载是函数功能的表现多样化。

(8)多态性

简单的说就是让两个不同类型的对象执行同一种方法的能力。

(9)共享成员

共享成员又叫静态成员或是类级成员,可以实现变量和函数的共享。

(10) 结构化错误处理

Visual Basic.NET利用“Try..End Try”语句段替换了“On Error Goto”语句来实现对错误的捕捉和处理,不仅增强了稳定性,而且使程序更加结构化。

(11) 类型安全保证

 类安全保证的功能实现了在必要时候的隐式数据类型转换,向对于C/C++语言来讲,Visual Basic程序员会减少很多修改类型错误的工作。

(12) Web窗体

Web窗体也就是Web Forms,在Visual Basic以往的版本种,利用Visual Basic IDE用于Windows程序开发的时候,创建一个窗体文件就是一个Windows Form,然后在其中放置控件等。如今这个技术引入到了ASP.NET编程中,每一个Web页面,也就是一个Web Form,用面向对象的技术来看待Web窗体,一个Web窗体,就是一个Page对象。

(13) 等等……

关于Visual Basic.NET新特性的书,如果详细列出,可以单独出一本书了,实际上市面上已经有这样的书。本书重点不在这里,所以就不再一一列出。再则就是,在ASP.NET编程中,Visual Basic.NET是默认的编程语言,所以,你如果有Visual Basic的编程经验,或是想快速的上手ASP.NET编程,那么,Visual Basic将会是你最佳的选择。

1.6.2 感受C#的魅力

C#是微软公司随.NET一起发布的新的语言,它一开始发布就立即引起了很多程序员的热爱。C#是C/C++语言家族中第一种面向组件的编程语言。它是由C和C++派生而来,一种使用简单,面向对象,类型安全的现代编程语言,保留了C家族语言的风格,因此,C/C++程序员很容易就学会它。C# 不仅具有Viusal Basic的高效性而且具有C++的强大性,使专门为.NET设计的一种语言,在.NET中起着不可替代的作用,当然,C#在ASP.NET中表现也是相当不错的。

C#提供了高性能的公共语言运行库(Common Language Runtime,CLR),包含执行引擎、垃圾收集器、即时编译、安全系统合丰富的框架类库。CLR从底层设计,能够支持多挣语言及大多数语言规范,支持对微软.NET框架功能的完全访问和与其它语言之间充分的互用性。比如一个Visual Basic的类可以从C#类中继承而来,并且可以对其覆载,大大提高代码的可移植性。

C#编写的程序具有很强大的跨平台性,这种跨平台表现在C#编写的客户端程序可以与性在不同类型的客户端上,比如PDA、智能手机等非PC装置。由于XML技术真正融入到了.NET和C#中,因此,C#编程变成了真正意义上的网络编成。

下面,让我们简单地浏览一下C# 语言的特性。我们知道C#之所以读作:C Sharp,并非偶然,在C# 中,“Sharp”的真正含义是:

(1)简洁的语法

在C#中,所有对象的属性和方法的引用全部是使用“.”,这是采用了Visual Basic的技术。C#取消了用“#include”导入其他程序文本文件的方式,而是采用象征性的句柄引入其他代码,这样就排除了编程语言间的障碍,能够方便地使用不同语言编写的库。C#也彻底抛弃了指针的概念,好处是最大程度的简化了编程规则,但是也因此C#不能作为硬件驱动程序的开发语言。

(2)精心的面向对象设计

C#是一种地道的面向对象语言,也因此具有面向对象语言的一切特性:封装性、继承性和多态性。在C#中每一种类型都可以看作一个对象。C#提供了一个叫做装箱(boxing)与拆箱(unboxing)的机制来完成这种操作,而不给使用者带来麻烦。

(3)与Web的紧密结合

.NET种新的应用程序开发模型意味着越来越多的解决方案需要与Web标准相统一,例如超文本标记语言(HTML)和XML。由于历史原因,显存的一些开发工具不能与Web紧密地结合。SOAP的使用使得C#克服了这一缺陷,大规模深层次的分布式开发从此成了可能。C#对于XML的底层支持,使得C#在能够高效地处理网络数据的交换。

(4)完整的安全性与错误处理

语言的安全性与错误处理能力已经成为衡量一种语言是否优秀的重要依据。C#的现金设计思想可以消除软件开发种的常见错误,并提供了包括类型安全在内的完整的安全性能,为了减少开发中的错误,C#会帮助开发者通过更少的代码完成相同的功能,从而减少错误发生的可能。

C#中不能使用未初始化的变量,对象的成员变量有编译器负责将其置为零,当局部变量未经初始化为被使用时,编译器将做出提醒。C#不支持不安全指向,不能将整数指向引用类型。C#还提供了边界检查与溢出检查功能。

(5)版本处理技术

企业级应用程序花费成本最大,周期最长的莫过于程序的维护和升级。C#提供的内置版本支持来减少开发费用,使用C#将会时开发人员更加轻易的开发和维护各种商业应用。

(6)灵活与兼容性

C#提供了一种新的语法简洁,功能强大的编程语言,由于根植与C/C++,所以C/C++程序员很容易就可以学会它。C#语序与C风格的需要传递指针型参数的API进行交互操作,DLL的任何入口点都可以在程序中进行访问。C#严格遵守.NET公用语言规范,从而保证了C#组件与其他语言组件的交互操作性,元数据概念的引用既保证了兼容性,又实现了类型安全。

如果你有C/C++编程语言的基础,或是愿意尝试一种新的语言,那就选择C#吧。