PHP的优势在于, 跨平台, 极易部署, 易维护, 为Web而生, 开源社区强大, 文档丰富.
至于说3足鼎立, 谈不上, 全球前100万的sites中, 70%是PHP.
JSP和Asp、.net 也很优秀, 但是他们的部署问题是最大的问题.

首先从程序原理上来说
PHP才是脚本语言,也就是说,是被触发解释执行的。
.Net和JSP,都是在虚拟机里跑的应用程序,可以操作内存及线程 。本质上和PHP并不一样。

举例:
如果让PHP给百分之一女装做计划任务,那就必须依赖于系统本身的计划任务触发。而.Net和JSP只需要起一个线程就可以了。

但是PHP最大的优势就在于,免费、开放!
免费的好处就不用去说了,谁都不会向微软卑躬屈膝。
至于开放,还可以举例让你明白:FaceBook就是用PHP写的,但是PHP执行效率让扎克伯格很伤脑经,于是FaceBook提出了另一个思路:

就是把底层的数据库业务逻辑用C++进行封装再转而提供给上层API。
PHP可以做到,因为它是开源的。

这三个东西真的不是三国鼎立啊,因为这三个东西根本不是同一个分类维度上的:
PHP:语言(PHP Script)+ Web 运行时(PHP Engine)
JSP:JSP 和 Java Servlet 的关系可以看成是 CoffeeScript 和 JavaScript 的关系,本质上 JSP 不是独立的技术,而是一种模仿 ASP/PHP 形式写法,编译成 Servlet 运行的关系。以前曾流行于作为 Java EE 的模版引擎(视图层),现在似乎有更多更好的选择,正在逐渐被边缘化。
.NET:.NET 和 Java 才是同一个分类维度上的吧?不知道你是不是想说 ASP .NET,ASP .NET 是基于 .NET Framework 的 Web 运行时,和 PHP Engine 地位类似。目前比较流行的有“控件党” ASP .NET WebForm 和微软新推的 ASP .NET MVC 两种上层框架。
如果要评论优势劣势,我的观点是:
PHP:优点:草根,所以有广泛群众基础,极度适合做 CMS,入门门槛极低(补充一个鸟哥说的:部署方便,确实像 PHP 这样部署方便的不多见)。另外一个优点就是有大量成熟的 CMS 可以做二次开发(WordPress、Drupal、Joomla 等)。缺点:不适合做逻辑复杂的 Web 2.0 应用(不要谈 Facebook,Facebook 已经把 PHP hack 到不是 PHP 了),因为生命期单一(一个请求为一个生命期,请求间完全隔离),所以从 PHP Script 的角度扩展显得鸡肋(目前大多 PHP 框架的共同问题)。
JSP:已经边缘化的东西了。如果说 Java Web,那还有的一谈(Spring MVC 就很不错),JSP 真的没什么好谈的了。
ASP .NET:这个最大的优势是不开放,没错,不开放是 ASP .NET 系的优势。因为微软是几乎唯一的支持者,所以系内产品可以无缝搭配,支持也很到位,这点和 Python 的 Django 很像。劣势:不开放,所以如果需求比较独特了,微软的产品线没有覆盖,那么上述优势瞬间灰飞烟灭 = =~
我觉得当代 Web 应用,新兴技术才是真正值得选择的:
Ruby、Python 等 Web 框架和相关技术
JVM 扩展的其他动态语言框架
这些新兴技术的共同特点是开发效率极高,因为新兴语言的灵活性,适合做 DSL,所以在框架方面往往能实现近乎声明式的开发;同时因为社区活跃,需要造轮子的地方很少,很多可以复用的第三方社区扩展。

PHP、JSP、.NET各自的真正优势是什么的更多相关文章

  1. JSP中两种模式的总结

    运用JSP/Servlet实现的Web动态交互,主要采用: 模式一:JSP+JavaBean 链接:http://wxmimperio.coding.io/?p=155 模式二;JSP+Servlet ...

  2. Jsp 连接 mySQL、Oracle 数据库备忘(Windows平台)

    Jsp 环境目前最流行的是 Tomcat5.0.Tomcat5.0 自己包含一个 Web 服务器,如果是测试,就没必要把 Tomcat 与 IIS 或 Apache 集成起来.在 Tomcat 自带的 ...

  3. 初学Java Web(6)——JSP学习总结

    为什么要学习 JSP Servlet 的短板: Servlet 的出现,是为了解决动态输出网页的问题. 虽然这样做目的能达到,但是存在一些缺陷: 在 Servlet 输出网页片段非常恶心 (可读性差, ...

  4. JSP应用开发 -------- 电纸书(未完待续)

    http://www.educity.cn/jiaocheng/j9415.html JSP程序员常用的技术   第1章 JSP及其相关技术导航 [本章专家知识导学] JSP是一种编程语言,也是一种动 ...

  5. MVC模式与三层架构和表示层

    1.MVC模式     - Model-View-Controller     - 模型-视图-控制器     - Model(模型)         > 模型分为业务模型,和数据模型     ...

  6. Strtus2框架笔记

    Struts2以WebWork优秀的设计思想为核心,吸收了 Struts框架的部分优点,提供了一个更加整洁的MVC设计模式实现的Web 应用程序框架. Struts2引入了几个新的框架特性:从逻辑中分 ...

  7. FreeMarker的应用场景

      FreeMarker是一款模板引擎: 即一种基于模板和要改变的数据, 并用来生成输出文本(HTML网页.电子邮件.配置文件.源代码等)的通用工具. 它不是面向最终用户的,而是一个Java类库,是一 ...

  8. JSP的优势与劣势浅析

    本文简单介绍了JSP技术,并对JSP的优势与劣势进行了简单的分析.JSP页面由HTML代码和嵌入其中的Java代码所组成. JSP(JavaServer Pages)是由Sun Microsystem ...

  9. JSP的优势

    以下列出了使用JSP带来的其他好处: 与ASP相比:JSP有两大优势.首先,动态部分用Java编写,而不是VB或其他MS专用语言,所以更加强大与易用.第二点就是JSP易于移植到非MS平台上. 与纯 S ...

随机推荐

  1. Nginx/Apache图片缩略图技术

    1,目的 2,使用方式 3,Nginx + Linux 缩略图实现 3.1,原理 3.2,nginx配置实现 3.3,例子 4,Apache + Windows缩略图实现 4.1,环境 4.2,原理 ...

  2. Redis学习手册(String数据类型)

    一.概述: 字符串类型是Redis中最为基础的数据存储类型,它在Redis中是二进制安全的,这便意味着该类型可以接受任何格式的数据,如JPEG图像数据或Json对象描述信息等.在Redis中字符串类型 ...

  3. html笔记04:在html之中导入css两种常见方法

    1.导入式: <html> <head> <title></title> <style type="text/css"> ...

  4. web项目设计与开发——DBHelper

    学习web项目设计与开发主要是在上学期web程序开发的基础上添上了思想和更深的理解. 在学习之前,我们需要下载好相关的软件——MyEclipse以及配置文件JDK.tomcat.再添加除MyEclip ...

  5. PHP + ajax 实现异步登录验证

    login.html: <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http:/ ...

  6. Java read()和readLine()的区别

    1.read() 功能:读取单个字符的个数,如果已经读完的话会返回-1 (其范围从 0 到 65535 ) 例子如下: byte[] buf = new byte[1024]; int len; wh ...

  7. 开源织梦(dedecms)快速搬家图文教程

    前段时间在seowhy班级群里,一个同学问织梦程序怎么搬家,好多人都遇到过这样的问题,不知道怎么去处理,今天小编分享一个简单的方法,帮大家快速搬家织梦. 好了,废话留到最后再说,看下面方法: 1. 登 ...

  8. 时间处理总结(二)oracle

    不断总结中................. 1.等于land.djsj=to_date('2016/7/26','yyyy-MM-dd')2.大于等于land.djsj>=to_date('2 ...

  9. 0基础学习ios开发笔记第二天

    C语言的基本结构 c语言的入口函数是main函数. main函数的返回值行业标准是int return 数字:返回值 每条语句最后以分号结尾 注释:行注释.块注释 int main(void) { / ...

  10. (hdu)1160 FatMouse's Speed

    Problem Description FatMouse believes that the fatter a mouse is, the faster it runs. To disprove th ...