asp和asp.net的区别

2024-09-05 02:18
文章标签 区别 asp net

本文主要是介绍asp和asp.net的区别,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

"ASP.Net和ASP的最大分别在于编程思维的转换,而不仅仅在于功能的增强。ASP用VBS/JS这样个的脚本语言混合HTML来编程,而那些脚本语言属于弱类型、面向结构的编程语言,而非面向对象,这样个就明显产生以下多个问题: 1、代码逻辑混乱,难于管理:由于ASP是脚本语言混合HTML编程,因此你很难看清代码的逻辑关系,而且随着程式的复杂性增加,使得代码的管理十分困难,甚至超出1个程式员所能达到的管理能力,从而造成出错或这样个那样的问题。 2、代码的可重用性差:由于是面向结构的编程方式,而且混合HTML,因此可能界面原型修改一点,整个程式都要要修改,更别提代码重用了。 3、弱类型造成潜在的出错可能:尽管弱数据类型的编程语言用起来回方便多个,但相对于它所造成的出错几率是远远得不偿失的。 以上是语言本身的弱点,在功能方面ASP同样存在问题,第一是功能太弱,多个底层操作只可以通过组件来完成,在这样个点上是远远比不了PHP/JSP,其次就是缺乏完善的纠错/调试功能,这样个点上ASP/PHP/JSP差不多。 那么,ASP.Net有哪些改进呢? ASP.Net摆脱了之前ASP用脚本语言来编程的缺点,理论上可用任何编程语言包括C++ , VB , JS等等,当然,最合适的编程语言还是MS为.Net Frmaework专门推出的C(读c sharp),它可看作是VC和Java的混合体吧,尽管MS自己讲C#内核中更多的象VC,但实际上我还是认为它和Java更象多个吧。首先它是面向对象的编程语言,而不是一种脚本,因此它具有面向对象编程语言的一切特性,假如封装性、继承性、多态性等等,这样个就处理了刚才谈到的ASP的那些弱点。封装性使得代码逻辑清晰,易于管理,而且应用到ASP.Net上就可使业务逻辑和HTML界面分离,这样个无论界面原型怎么改变,业务逻辑代码都不必做任何改动;继承性和多态性使得代码的可重用性大大提高,你可通过继承已有的对象最大限度保护你之前的投资。而且C#和C++、Java相同提供了完善的调试/纠错体系。 ASP(Active SERVER Pages)是Microsfot公司1996年11月推出的WEB应用程式研发技术,它既不是一种程式语言,也不是一种研发工具,而是一种技术框架,不须用微软的产品就能编写它的代码,能产生和执行动态、交互式、高效率的站占服务器的应用程式。运用ASP可将VBscript、JAVAscript等脚本语言嵌入到HTML中,便可快速完成网站的应用程式,无要编译,可在服务器端直接执行。容易编写,用普通的文本编辑器编写,如记事本就可完成。由脚本在服务器上而不是客户端运行,ASP所用的脚本语言都在服务端上运行,用户端的浏览器不要要提供任何其他支持,这样个大提高了用户与服务器之间的交互的速度。此外,它可通过内置的组件实现更强大的功能,如用A-DO可轻松地访问数据库。 之后,微软又推出ASP.NET。这样个不是ASP的容易更新,而是全新一代的动态网站实现系统(System),用于1台WEB服务器新建强大的应用程式。是微软发展的新体系结构.NET的一部分,是ASP和.NET技术的结合。提供基于组件、事件驱动(Drive)的可编程网络(互联网)表单,大大简化了编程。还可用ASP.NET新建网络(互联网)服务。 ASP与ASP.NET的分别: 1.研发语言不相同 ASP仅限制于用non-type脚本语言来研发,用户给WEB页中增加ASP代码的方法与客户端脚本中增加代码的方法相同,导致代码杂乱。 ASP.NET允许用户选取并用功能完善的strongly-type编程语言,也允许用潜加巨大的.NET Framework。 2.运行机制不相同 ASP是解答运行的编程框架,因此执行效率加较低。 ASP.NET是编译性的编程框架,运行是服务器上的编译好的公共语言运行时库代码,可利用早期绑定,实施编译来提高效率。 3.研发方式 ASP把界面设计和混在一起,维护和重用困难。 ASP.NET把界面设计和以不相同的文件分离开,复用性和维护性得到了提高"

这篇关于asp和asp.net的区别的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/1137684

相关文章

结构体和联合体的区别及说明

《结构体和联合体的区别及说明》文章主要介绍了C语言中的结构体和联合体,结构体是一种自定义的复合数据类型,可以包含多个成员,每个成员可以是不同的数据类型,联合体是一种特殊的数据结构,可以在内存中共享同一... 目录结构体和联合体的区别1. 结构体(Struct)2. 联合体(Union)3. 联合体与结构体的

什么是 Ubuntu LTS?Ubuntu LTS和普通版本区别对比

《什么是UbuntuLTS?UbuntuLTS和普通版本区别对比》UbuntuLTS是Ubuntu操作系统的一个特殊版本,旨在提供更长时间的支持和稳定性,与常规的Ubuntu版本相比,LTS版... 如果你正打算安装 Ubuntu 系统,可能会被「LTS 版本」和「普通版本」给搞得一头雾水吧?尤其是对于刚入

python中json.dumps和json.dump区别

《python中json.dumps和json.dump区别》json.dumps将Python对象序列化为JSON字符串,json.dump直接将Python对象序列化写入文件,本文就来介绍一下两个... 目录1、json.dumps和json.dump的区别2、使用 json.dumps() 然后写入文

.NET利用C#字节流动态操作Excel文件

《.NET利用C#字节流动态操作Excel文件》在.NET开发中,通过字节流动态操作Excel文件提供了一种高效且灵活的方式处理数据,本文将演示如何在.NET平台使用C#通过字节流创建,读取,编辑及保... 目录用C#创建并保存Excel工作簿为字节流用C#通过字节流直接读取Excel文件数据用C#通过字节

poj 1258 Agri-Net(最小生成树模板代码)

感觉用这题来当模板更适合。 题意就是给你邻接矩阵求最小生成树啦。~ prim代码:效率很高。172k...0ms。 #include<stdio.h>#include<algorithm>using namespace std;const int MaxN = 101;const int INF = 0x3f3f3f3f;int g[MaxN][MaxN];int n

如何在Visual Studio中调试.NET源码

今天偶然在看别人代码时,发现在他的代码里使用了Any判断List<T>是否为空。 我一般的做法是先判断是否为null,再判断Count。 看了一下Count的源码如下: 1 [__DynamicallyInvokable]2 public int Count3 {4 [__DynamicallyInvokable]5 get

2、PF-Net点云补全

2、PF-Net 点云补全 PF-Net论文链接:PF-Net PF-Net (Point Fractal Network for 3D Point Cloud Completion)是一种专门为三维点云补全设计的深度学习模型。点云补全实际上和图片补全是一个逻辑,都是采用GAN模型的思想来进行补全,在图片补全中,将部分像素点删除并且标记,然后卷积特征提取预测、判别器判别,来训练模型,生成的像

native和static native区别

本文基于Hello JNI  如有疑惑,请看之前几篇文章。 native 与 static native java中 public native String helloJni();public native static String helloJniStatic();1212 JNI中 JNIEXPORT jstring JNICALL Java_com_test_g

Android fill_parent、match_parent、wrap_content三者的作用及区别

这三个属性都是用来适应视图的水平或者垂直大小,以视图的内容或尺寸为基础的布局,比精确的指定视图的范围更加方便。 1、fill_parent 设置一个视图的布局为fill_parent将强制性的使视图扩展至它父元素的大小 2、match_parent 和fill_parent一样,从字面上的意思match_parent更贴切一些,于是从2.2开始,两个属性都可以使用,但2.3版本以后的建议使

Collection List Set Map的区别和联系

Collection List Set Map的区别和联系 这些都代表了Java中的集合,这里主要从其元素是否有序,是否可重复来进行区别记忆,以便恰当地使用,当然还存在同步方面的差异,见上一篇相关文章。 有序否 允许元素重复否 Collection 否 是 List 是 是 Set AbstractSet 否