July 11th, 2007 at 7:08 pm
这是今日完成的一篇调研报告。关于开发语言的争论自古有之,且从未有一个定论。此文仅是在某特定需求限制下的一篇报告,用了尽可能简明的语言,适合喜欢信息快餐的人群。(致谢人肉搜索引擎Janpo兄)
-------------------------我是分割线-----------------------
-----------------------我也是分割线-----------------------
----------------------我们都是分割线---------------------
《关于老年人旅游网站服务器及开发平台的调研报告》
【前言】
某研究项目需搭建一个针对老年人的旅游网站,网站的主要功能如下:
1. 提供景点信息、旅游产品信息;
2. 用户可以注册,并购买提供的旅游产品("三亚五日游")等;
3. 用户可以发表游记和照片,并形成自己的个人旅游博客;
4. 用户对提供的景点信息、产品信息等可以提交评论和打分。
截至目前,该网站功能设计和界面设计基本完成,暂定使用某安装Windows 2000 Server版操作系统的HP服务器。目前,网站计划进入Coding阶段,需根据需求和服务器确定开发平台的选择以及服务器环境的配置。
【拟实现目标】
本调研报告对ASP.net和PHP两种开发语言进行了调研(ASP语言已逐渐淡出程序舞台,故不在考虑范围内),拟通过选择一款合适的开发语言,达到下述目标:
1. 较高Coding效率,较低Coding难度;
2. 较高的安全可靠性;
3. 在指定服务器上能够较有效率的运行。
【调研结果】
『ASP.net』
简介:
ASP.NET是整个.NET框架的重要组成部分,它继承了传统的ASP并有了进一步的发展。.NET是经过编译的framework,此框架提供真正的面向对象编程 (OOP),并支持真正的继承、多态和封装。.NET 类库可根据特定的任务组织成可继承的类。此外,ASP.NET的源代码更加安全且更为健壮。
缺点:
1. 将太多底层的东西封装成了组件,使用不够灵活;
2. 仅能运行在Windows操作系统上;
3. 内存使用和执行时间方面耗费非常大。
使用ASP.net的软件需求:
1. 集成开发环境IDE(建议)
Microsoft Visual Studio 2005
2. 数据库(建议)
SQL Server 2000
3. 服务器环境配置
a) IIS 6.0
b) Microsoft .NET Framework Version 2.0
c) Microsoft SQL Server 2000
『PHP』
简介:
PHP是开放源代码服务器端的脚本语言,在语法上同C语言非常类似。PHP应用程序可以被方便的移植,可以运行在WINDOWS NT和多种版本的UNIX上,绝大部分的Web主机提供商都支持它。此外,PHP程序运行所消耗的资源较少。
缺点:
1. 缺少异常和基于事件的错误处理例程;
2. 不是专门设计为一种面向对象的语言,这些特性中的一部分是后加的。
使用PHP的软件需求:
1. 集成开发环境IDE(建议)
Zend Studio
2. 数据库(建议)
MySQL
3. 服务器环境配置
a) Apache
b) PHP 5(Windows Binaries)
c) MySQL 5.0
【成果及建议】
下表是ASP.NET与PHP两种语言多种特性的一个对照(来源):
|
PHP |
ASP.NET |
|
|
软件价格 |
免费 |
免费 |
|
平台价格 |
免费 |
$$ |
|
速度 |
强 |
弱 |
|
效率 |
强 |
弱 |
|
安全性 |
强 |
强 |
|
平台 |
强 |
弱(仅用于 IIS) |
|
平台 |
任意 |
win32(仅用于 IIS) |
|
是否提供源代码 |
是 |
否 |
|
异常 |
是 |
是 |
|
OOP |
较强 |
强 |
虽然PHP在诸多方面都占有相对优势,但是对于本网站不甚复杂的需求而言,ASP.NET的缺点并不会对开发造成大的影响。同时,考虑到服务器上已经安装操作系统Windows 2000 Server,对ASP.NET的支持优于对PHP的支持,故建议使用ASP.NET作为本网站的开发语言。

见仁见智的东西
保留意见,不发表评论
ASP.net 有一个超好用的 Visual Studio 作为开发工具,开发效率会高一些,对于这种小型商业项目,执行效率反而是次要的。
我还以为毫无疑问选择PHP呢
我来帮你更新一些ASP.NET的信息吧。
首先,这软件配置已经略为落后啦,应该换SQL Server 2005。如果具有前瞻性,你应该看到年底发布的Windows Server 2008以及内置的IIS7的性能与安全性提升。
其次,如果你能使用一些.NET Framework 3.0的功能,那就应该升级到3.0的水平。例如一些处理流程能做成工作流的,就应该用3.0的Workflow来实现。
如果你要了解更多ASP.NET的底层原理,来我的blog看看啦。
因果似乎对应不上
考虑到.Net的工资普遍比PHP程序员高的关系
还是学.Net吧~
其实更强的还是asp.net,类似java sevlet的中间编译执行速度更快,当然成本也就贵n多了,不过感觉你的因果关系还是根据技术人员的背景定的,其实这样的小型应用差别不大,不考虑asp.net平台的价格的话(国内windows便宜,所以无所谓了),php和.net也就差不多了。 呵呵!
@cosbeta 事实上就是这样的。但是人们总是喜欢面临选择,然后做出选择。感觉自己很主宰。
呵呵,你的blog很不错,很喜欢
貌似我们这里.net的薪水,并没有php的高,而且还差的不少哦