当前位置: 首页 > 图文教程 > 网络编程 > ASP > 学以致用 驳“ASP低能论”

ASP
asp生成三维饼图的函数
ASP下的简洁的多重查询的方法与函数 真不错
发一个ASP的ADODB类代码
A利用ASP小偷和Google实现在线翻译功能的代码
ASP类型网站结合动网论坛会员的方法
Asp下实现多表单域无组件文件上传的实例
asp制作中常用到的函数库集合
易心asp分页类 v1.0
asp中xmlhttp组件发包
检测是否为数字类型的asp代码
可以获得文件的文件名的asp函数
用asp实现访问远程计算机上MDB access数据库文件的方法
用ASP实现写IIS日志的代码
asp在IE浏览器中下载服务端上的各类文件的实现方法
asp汉字中文图片验证码的实现代码
asp WAP获取手机终端信息的一段代码
asp取得数组中的最大值的方法
用asp实现的截取指定格式字符串的代码
asp jmail发邮件 详细解析
ASP编程中连接数据库和数据库操作的常用代码

学以致用 驳“ASP低能论”


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-09-23   浏览: 79 ::
收藏到网摘: n/a

很多人错误地认为ASP是简单、低效的代名词,认为ASP是低能的,不足挂齿的,也很简单,一学就会,一琢磨就精通。

有人讲ASP不安全,写ASP的程序的时候如果严格按照书写安全的代码的规范去写,写出来的程序也没有什么理由不安全。那些人说ASP不安全,好像PHP、JSP的程序就不会出现SQL Injection似的。

有人讲ASP不高效,真的想要高效的话你可以结合COM,在Win32平台下COM的效率Java是永远追不上的。单纯讲速度有什么意义呢?Java的速度绝对算不上高,论速度的话好多技术方案的速度都比Java高,这一点学Java的人最清楚了,可是谁在乎过这一点了?Java的胜出绝对不是因为它的速度。抛开具体的应用环境单纯地讲速度是不理性的。

有人讲ASP这个不能做,那个做不了,功能很局限。其实只要你明白Web的原理的话你就会明白,写ASP程序表面看是在玩一种脚本语言,但你指挥的是Web Server,有很多复杂的功能ASP也照样能完成的很好,有些功能ASP假如因为Web应用的先天局限做不了,你不要以为JSP、PHP就能做到。

再提到功能。要说功能的话ASP+SQL Server肯定比PHP+MySQL强百倍,MySQL不支持事务处理,就这一条让PHP开发者吃了多少亏,没有视图,没有存储过程和触发器,没有数据库端的用户自定义函数,不能完全使用标准的SQL语法,这都是MySQL的缺点。可是PHP程序员在乎这一点了吗?没有!因为他们最在乎的是MySQL很快。(注意,是MySQL很快,不是PHP很快。同样,是MySQL不支持事务处理,而不是PHP的过错。)在面对PHP+MySQL的时候,人们就如此的理性。面对ASP的时候很多人就缺乏这种理性的认识。


还有人提到MVC,是的我知道JSP可以把MVC发挥得很好。但是MVC这种编程思想不是Java或某种方案的专利,只要掌握了MVC的程序构架思想,你一样能写出这样的ASP程序、PHP程序。

许多人单纯地做一些语言本身的比较,有什么意义呢?就好像你谈JSP的时候不谈JavaBeans,不谈EJB,那么你谈JSP有什么意义呢?同理谈ASP的时候你不谈COM,有什么意义呢?不要忘了ASP的核心就是COM。谈PHP的时候如果不谈它强大的平台——Unix/Linx,PHP照样什么也不是。

不过有一点是可以肯定的,那就是:ASP的入门门槛最低。这按理说应该算ASP的优点,它秉承了微软技术一贯的作风——简单,入门门槛低。也正是因为这一点,使得大量的Web开发领域的新手能够很快地开发网站。但也正因为这一点,使许多掌握了ASP的一点皮毛知识的人自认为对ASP很懂,结果写出很垃圾的程序,让别人看了ASP的笑话。其实我接触过的一些JSP程序员也很垃圾,他们处理数据库操作的时候低级错误百出,但是因为他们是用Java开发的,所以给别人的感觉好像就高人一等。其实真的优秀的程序员如果明白了ASP的一些原理的话也能把ASP驾驭得很好。有些人玩不转ASP,你不能因此说这是ASP的问题。玩不转ASP的人大多是没有正确理解Web,而不是没有正确理解ASP中的语法。

ASP的语法很简单,Java的语法也复杂不到哪里去,C++和C虽然复杂但是只要是一个智力正常的人也没有理由学不会。

问题是语法本身很简单,但是Web很复杂。我们不是在这里浅尝辄止地玩弄一下某种脚本语言,我们是在做Web开发。

Web开发虽然有不同的解决方案,但是基本的原理是相通的。如果你清楚Web端程序的一些运行原理,你就会明白你使用的开发技术的语法难度只不过是一种入门级的难度,真正的难度不在于你用什么技术方案去开发Web应用程序,真正的难度在于错综复杂的Web应用自身。