现在市场上的电子商务软件基本上可归结为两大阵营,即PHP阵营和JAVA阵营。但对接触电子商务不久的用户来说,
看到的往往只是它们的表相,只是明显的价格差异,却很难看出它们之间的实际差异。
其实, PHP + MYSQL 不值钱不仅仅局限于电子商务软件,而是整体上PHP + MYSQL开发的软件都不如JAVA开发的软件值钱。
为什么PHP + MYSQL 的电子商务为什么不值钱呢?首先得明白PHP和JAVA之间的差异才行。1、系统的技术架构比较
分层是将系统进行有效组织的方式,分而治之的思想是计算机领域中非常重要的思想。
在好的分层思想引导下,便能实现“高内聚、低耦合”,也能将具体的问题 割裂开来,
易于控制、易于延展,更易于分配资源。PHP只能实现简单的分布式两层或三层的架构,
而JAVA在这方面就十分强大,可以实现多层的网络架构。运用MVC的设计模式,可使电子商务软件具有更加高效、
合理的系统架构。技术架构的落后,使运用PHP编写的电子商务软件先天不足,而后天又无法补足其先天上的劣势。
使得系统在可拓展性、需求应变性上与JAVA编写的电子商务软件系统的差距越来越大。
架构的差距,注定了PHP做的电子商务充其量是个小家碧玉,始终无法和JAVA这种大家闺秀同台竞技。2、数据库访问比较
PHP可编译成具有与许多数据库相连接的函数。将自己编写外围的函数去间接存取数据库。
通过这样的途径当更换使用的数据库时,可以轻松地修改编码以适应这样的变化。
但PHP提供的数据库接口支持彼此不统一,比如对Oracle,MySQL,SQL2000的接口,彼此都不一样。
由于PHP对于不同的数据库采用不同的数据库访问接口,所以数据库访问代码的通用性不强。3、安全性对比
在JAVA的面前,PHP丢掉了很多的优势。在代码的安全性上尤为突出。
PHP的开发程序在别人拿到代码后,可以很容易的进行修改。
而JAVA开发的程序由于无法看到完整的源代码,只能看到一些编译好的类文件.class,所以安全性较高。
加之系统架构的优势,在安全性上PHP和JAVA是相去甚远。
如果非要将PHP和JAVA在安全性上做个比较的话,同一个小偷光顾PHP那是随便拿来随便改,想拿什么拿什么,
拿的高兴还能大笔一辉某某到此一游。而光顾JAVA的时候,便会发现警察把守,内设自动报警装置,
即便突破重重阻扰后进入居室。那值钱的东西都放在加密后的保险柜中,只能望洋兴叹、铩羽而归。4、前瞻性和拓展性
从整体来说,PHP适用于中小型系统,而JAVA适用于大型系统。
PHP能够将单一的事件做好,但却不适合完成集成度较高的多项并发事件。
为什么说PHP适合中小型系统而不适合做大系统呢?
首先,PHP缺乏多层结构支持。而对于大型的系统负荷站点,只能采用分布计算。
将数据库、应用逻辑层和表示逻辑层彼此分开,并将同层的根据流量分开,组成二维数组。
而PHP恰恰缺乏这种支持。
其次,PHP提供的数据库接口不统一,要将多个不同的数据库数据统一需要花费很大的力气。
而JAVA则没有这种缺陷,可通过SUN JAVA的JAVA Class和EJB获得规模支持,通过EJB/CORBA以及众多厂商的
Application Server获得结构支持。如ProBIZ的Merchant one电子商务软件产品系列。
如果将PHP比作将才,具备独挡一方的能力。那么JAVA便是帅才,具有较好的前瞻性和拓展性,
整体布局和协同能力强。能够指挥千军万马,最后逐鹿中原。
并且:在运行速度方面,现在java在web端,大量使用了页面静态化技术(freemarker,velocity),
页面运行速度不比php低,尤其这一点,我们都可以再乐视网看出来。
以上就是经验之谈,对大家选择学习的方向很有帮助!

转载于:https://my.oschina.net/morestudy/blog/472421

详细解析Java和PHP到底哪个好!!相关推荐

  1. java 参数类型不确定_详细解析Java虚拟机的栈帧结构

    什么是栈帧? 正如大家所了解的,Java虚拟机的内存区域被划分为程序计数器.虚拟机栈.本地方法栈.堆和方法区.(什么?你还不知道,赶紧去看看<Java虚拟机内存结构及编码实战>)这次要介绍 ...

  2. 详细解析Java中抽象类和接口的区别

    在Java语言中, abstract class 和interface 是支持抽象类定义的两种机制.正是由于这两种机制的存在,才赋予了Java强大的 面向对象能力.abstract class和int ...

  3. 【转】详细解析Java中抽象类和接口的区别

    在Java语言中, abstract class 和interface 是支持抽象类定义的两种机制.正是由于这两种机制的存在,才赋予了Java强大的 面向对象能力.abstract class和int ...

  4. 详细解析Java中抽象类和接口的区别(很容易理解错)

    2007-09-28 12:17作者:doublel出处:论坛整理责任编辑:方舟 在Java语言中, abstract class 和interface是支持抽象类定义的两种机制.正是由于这两种机制的 ...

  5. Java中的enum详细解析------Java 语言中 Enum 类型的使用介绍

    Enum 类型的介绍 枚举类型(Enumerated Type) 很早就出现在编程语言中,它被用来将一组类似的值包含到一种类型当中.而这种枚举类型的名称则会被定义成独一无二的类型描述符,在这一点上和常 ...

  6. java 内存排序_详细解析Java内存,处理器重排序,编译器重排序以及它对线程的影响...

    欢迎大家搜索"小猴子的技术笔记"关注我的公众号,有问题可以及时和我交流. 我们在编写程序的时候有一个编写代码的顺序,那么计算机执行的时候就是按照我们编写代码的顺序来执行的吗?答案是 ...

  7. Java中的enum详细解析------Java enum 枚举还可以这么用

    在大部分编程语言中,枚举类型都会是一种常用而又必不可少的数据类型,Java中当然也不会例外.然而,Java中的Enum枚举类型却有着许多你意想不到的用法,下面让我们一起来看看. 1.可以在enum中添 ...

  8. 详细解析java JDBC实现增删改查

    目录 实现java数据库的增删改查基本步骤 包与类的结构. 一,与数据库建立连接,驱动包导入. ​二,创建实体类(与数据库的属性相一致) 三,创建接口 四,sql语句预编译和执行代码 五,test测试 ...

  9. 【Kafka笔记】4.Kafka API详细解析 Java版本(Producer API,Consumer API,拦截器等)

    简介 Kafka的API有Producer API,Consumer API还有自定义Interceptor (自定义拦截器),以及处理的流使用的Streams API和构建连接器的Kafka Con ...

最新文章

  1. WIDERFACE 数据集
  2. 【Git】Git 分支管理 ( 使用 git cherry-pick 命令提取提交记录应用于当前分支 | 创建新分支应用某个提交 | git cherry-pick 冲突处理 )
  3. sap转换成基本订单单位
  4. ACCESS中使用存储过程
  5. C#后台创建Excel文件的那点事儿
  6. 庖丁解牛TLD(一)——开篇
  7. software reporter tool占用高_看完这篇DBA工作详解,你觉得平均月薪17000真的高吗?...
  8. laravel order 按时间升序_Cache and Related Part3: Coherence amp; Order
  9. SVN工作笔记004---svn查看log提示_offline
  10. mybatis直接执行sql_拼多多二面:Mybatis是如何执行一条SQL命令的?
  11. PDF在线阅读开发经验(FlexPaper+SWFTools+SaveAsPDFandXPS)
  12. 靠模仿红牛成为饮料界的“黑马”,东鹏特饮的未来如何谱写?
  13. 永久关闭“WPS热点”的显示
  14. Springboot毕设项目图书馆座位预定系统plo6rjava+VUE+Mybatis+Maven+Mysql+sprnig)
  15. H3C S6520 配置arp static
  16. 华为数通模拟器ensp问题解决方法
  17. MCU_如何通过硬件VID 查找生产厂家
  18. EOS智能合约开发系列(18): 狼人杀游戏的`eosio.code`
  19. SAP 收货与发票校验税码
  20. python 读取txt函数总结

热门文章

  1. 速读原著-TCP/IP(UDP首部)
  2. java--字节码增强--1.2--ByteBuddy--使用
  3. Google搜索引擎原理
  4. 【微机原理与接口技术】--第二章--微处理器及其结构
  5. JavaScript错误对象
  6. 计算机开机显示器闪,电脑开机后屏幕一直闪怎么办
  7. 如何查看任何一下网站的全部二级域名?
  8. 顶呱呱:厦门6少年30秒洗劫小米专卖店
  9. nmap的官网下载安装、简单命令的抓包测试
  10. 麒麟linux怎么安装软件,在优麒麟Ubuntu Kylin 20.04下安装QQ for Linux的方法