通行证: 用户 密码 域名空间  下载中心 社区论坛 信息公告 MY小屋
联系我们
设为首页
加入收藏

 

QQ,ASP,PHP,JSP,XML,SQL,.Net,编程 程序 网页图象 建站经验 私服
首页 | 新闻资讯 | 编程开发 | 网页设计 | 图形图象 | 网络媒体 | 网站模板 | 数 据 库 | 投稿
论坛 | 操作系统 | 系统优化 | 网络安全 | 黑客技术 | 硬件学堂 | 硬件报价 | 服 务 器 | 地图
专题 | 应用软件 | 聊天通讯 | Q Q 专栏 | 建站经验 | 在线工具 | 站长Club | 注 册 表 | 旧版
社会 | 游戏娱乐 | 设计欣赏 | 疑难解答 | 社区论坛 | 韩国素材 | 素材图库 | 广告服务 | 服务
当前位置:首页>>编程开发>>NET专区>>正文 新版上线![旧版]
注:打开慢时请稍等

asp.net高级教程(一)---asp.net , 还是asp+ ?

http://www.iyit.net  日期:2006-6-12 2:00:03  来源:  点击:
参加讨论】看到这个标题你可能会笑,alpha版的时候MS叫它asp+,后来出了beta1版,就改名叫asp.net了,那还不是一回事吗?你错了,这不仅仅是一个简单的叫什么的问题,而是一个它到底是什么的问题。关于asp.net到底是什么,恐怕你已经看过不少这类文章,并且有自己的理解,但恐怕大多数人的理解不是那么正确。问个简单的问题,asp.net和asp有什么关系?恐怕chinaasp .net版版主的看法代表了大多数人的理解:asp+就是比asp什么都多一点点而已:),真的是这样吗?让我们看下面这个例子,这段代码是我自己的asp.net BBS的用户注册模块的提交按钮点击事件,作用是将用户提交的数据存入数据库中。

//提交按钮点击
public void OnSubmit(Object sender , EventArgs e)
{
if (Page.IsValid)
{
//数据入库
try
{
BBSUser myUser = new BBSUser() ;
if(!myUser.GetUser(txtUserName.Text))
{
myUser.CreateUser(BBSUser.CreateType.Create , txtUserName.Text , txtPassword.Text ,
txtEmail.Text , txtHomepage.Text , "") ;
}
}
catch(Exception exp)
{
#if DEBUG
Response.Write ("出现异常:" + exp.Message) ;
return ;
#endif//DEBUG
Server.Transfer("error.aspx") ;
}
}
}

怎么样,是不是和你原来习惯使用的asp有些区别呢?代码中你见不到数据入库,而全部封装到BBSUser类的CreateUser方法中,或许你会说asp也行呀,做个函数或过程不就行了?是,的确如此,asp.net也可以直接把它做成一个过程然后来调用,但如果那样的话,那就真的只比asp多一点点而已了。还是让我们从头说起吧。

asp.net和asp的最大区别在于编程思维的转换,而不仅仅在于功能的增强。asp使用vbs/js这样的脚本语言混合html来编程,而那些脚本语言属于弱类型、面向结构的编程语言,而非面向对象,这就明显产生以下几个问题:
1、代码逻辑混乱,难于管理:由于asp是脚本语言混合html编程,所以你很难看清代码的逻辑关系,并且随着程序的复杂性增加,使得代码的管理十分困难,甚至超出一个程序员所能达到的管理能力,从而造成出错或这样那样的问题。
2、代码的可重用性差:由于是面向结构的编程方式,并且混合html,所以可能页面原型修改一点,整个程序都需要修改,更别提代码重用了。
3、弱类型造成潜在的出错可能:尽管弱数据类型的编程语言使用起来回方便一些,但相对于它所造成的出错几率是远远得不偿失的。
以上是语言本身的弱点,在功能方面asp同样存在问题,第一是功能太弱,一些底层操作只能通过组件来完成,在这点上是远远比不上php/jsp,其次就是缺乏完善的纠错/调试功能,这点上asp/php/jsp差不多。那么,asp.net有哪些改进呢?
asp.net摆脱了以前asp使用脚本语言来编程的缺点,理论上可以使用任何编程语言包括c++ , vb , js等等,当然,最合适的编程语言还是ms为.net frmaework专门推出的c#(读csharp),它可以看作是vcjava的混合体吧,尽管ms自己讲c#内核中更多的象vc,但实际上我还是认为它和java更象一些吧。首先它是面向对象的编程语言,而不是一种脚本,所以它具有面向对象编程语言的一切特性,比如封装性、继承性、多态性等等,这就解决了刚才谈到的asp的那些弱点。封装性使得代码逻辑清晰,易于管理,并且应用到asp.net上就可以使业务逻辑和html页面分离,这样无论页面原型如何改变,业务逻辑代码都不必做任何改动;继承性和多态性使得代码的可重用性大大提高,你可以通过继承已有的对象最大限度保护你以前的投资。并且c#和c++、java一样提供了完善的调试/纠错体系。好了,一口气说了这么些理论性的东西,不如结合一个实例来具体说明,在以后的内容里我将结合一个论坛的实例来具体说明asp.net的开发,这个论坛的完整源代码及论坛本身你可以在我的站点(http://bigeagle.wotoo.com找到)。
对了,要说明一点,这个教程并不是asp.net的入门教程,我假设你对asp.net、c#和面向对象编程有一定的了解,如果不是这样的话,请先阅读有关文章或教程。



编辑:黑鹰 [发送给好友] [打印本页] [关闭窗口] [返回顶部]
上一篇:asp.net高级教程(二)--- 转换编程思维
下一篇:两个获取http页面的c#函数
转载请注明来源:www.iyit.net
特别声明: 本站除部分特别声明禁止转载的专稿外的其他文章可以自由转载,但请务必注明出处和原始作者。文章版权归文章原始作者所有。对于被本站转载文章的个人和网站,我们表示深深的谢意。如果本站转载的文章有版权问题请联系编辑人员,我们尽快予以更正。

 相关文章
使用 ASP.NET 加密口令 [ASP.NET] Session 详解 从ASP迁移至ASP+
从ASP迁移至ASP+ ----------进入DataSe 从ASP迁移至ASP+ --将HTML表格转换为AS 从ASP迁移至ASP+ --急不可耐了?转换其
从ASP迁移至ASP+ --处理会话变量(Sess ASP+ 与 Java(一) ASP+ 与 Java(二)
asp+的论坛列表程序---代码部分 asp+的论坛列表程序---页面部分 用c#写的asp+域名查询程序
ASP+联结数据库 asp+文件上传增强实例 从ASP迁移至ASP+ --处理会话变量(Sess
ASP.NET学习手记:验证用户表单输入 asp+ 操作Cookie 方法大全 asp+ 现在已经被官方正式更名为 asp.ne
在ASP+ 中我们如何使用 Class 而不是组 asp+ 如何跨站抓取 页面 在 ASp+ 中的一些可能会用到的 小函数
列出asp+中所有request 的属性和数值 妙用asp+的global.asax 一个asp+ 版本的 Active Server Explor
最新更新 热点排行 推荐新闻
使用 ASP.NET 加密口令
[ASP.NET] Session 详解
从ASP迁移至ASP+
从ASP迁移至ASP+ ----------进入DataS
从ASP迁移至ASP+ --将HTML表格转换为A
CGI教程(2)
CGI教程(3)
CGI教程(5)
CGI教程(6)
CGI教程(7)
CGI教程(8)
CGI教程(5)
CGI教学:第一章 cgilib例
CGI教学:第二章 动态创建图像
CGI教学:第三章 计数器的编写方法
为ASP.NET 2.0菜单控件增加target属性
将Asp.net页面输出为HTML
在ASP.NET中防止注入攻击
ASP.NET 2.0 中的异步页功能应用
asp.net面试试题收集
QQ密码本地破解
msn8.0下载
PPLive最新内部版本揭密
珊蝴虫QQ探测隐身的招式用法
Visual Basic 概述
exeplorer.exe错误的问题的总结、解决
Authorware7.0基础与实例教程连载 第5
解决Windows中的explorer.exe出错
Windows常见文件修复技巧
Photoshop打造美女性感纹身(2)
在ASP.NET中防止注入攻击
用ASP.NET开发Web服务的五则技巧
ASP.NET 2.0 中的异步页功能应用
Windows下的虚拟主机设置全功略
危险无处不在 Html标签带来的安全隐患
网络游戏是06年互联网最具发展潜力业务
巧用ACDSee 8.0截取QQ表情每一帧
解除瑞星 诺顿遗留下的杀毒兼容问题
第一款开源AJAX安全扫描工具Sprajax
WinRAR人性化功能揭密
在ASP.NET中防止注入攻击
用ASP.NET开发Web服务的五则技巧
Linux操作系统12则经典应用技巧
 友情链接
设置首 页 - 版权声明 - 广告服务 - 关于我们 - 联系我们 - 友情连接
Copyrights © 2004-2006 iYiT.Net All Rights Reserved.
网站合作、广告联系QQ:147007642、466949678
易特网络技术 点击这里给我发消息