现在市场上的
OA基本上可归结为两大阵营,即
php阵营和
JAVA阵营。但对接触
OA不久的用户来说,看到的往往只是它们的表相,只是明显的价格差异,却很难看出它们之间的实际差异。其实,
php +
Mysql 不值钱不仅仅局限于
OA软件,而是整体上
php +
Mysql开发的软件都不如
JAVA开发的软件值钱。为什么
php +
Mysql 的
OA为什么不值钱呢?首先得明白
php和
JAVA之间的差异才行。
1、系统的技术架构比较
分层是将系统进行有效组织的方式,分而治之的思想是计算机领域中非常重要的思想。在好的分层思想引导下,便能实现“高内聚、低耦合”,也能将具体的问题割裂开来,易于控制、易于延展,更易于分配资源。
php只能实现简单的分布式两层或三层的架构,而
JAVA在这方面就十分强大,可以实现多层的网络架构。运用MVC的设计模式,可使
OA系统具有更加高效、合理的系统架构。技术架构的落后,使运用
php编写的
OA软件系统先天不足,而后天又无法补足其先天上的劣势。使得系统在可拓展性、需求应变性上与
JAVA编写的
OA软件系统的差距越来越大。架构的差距,注定了
php做的
OA充其量是个小家碧玉,始终无法和
JAVA这种大家闺秀同台竞技。
2、数据库访问比较 php可编译成具有与许多数据库相连接的函数。将自己编写外围的函数去间接存取数据库。通过这样的途径当更换使用的数据库时,可以轻松地修改编码以适应这样的变化。但
php提供的数据库接口支持彼此不统一,比如对Oracle,
Mysql,Sybase的接口,彼此都不一样。由于
php对于不同的数据库采用不同的数据库访问接口,所以数据库访问代码的通用性不强。
而
JAVA通过JDBC来访问数据库,通过不同的数据库厂商提供的数据库驱动方便地访问数据库,访问数据库的接口比较统一。如果同样是将开发的web应用从
Mysql数据数转到ORACLE数据,
php需要做大量的修改工作,而且比较繁琐。但
JAVA开发的便只需要很少的更改便能实现。
数据库访问方式的差异,奠定了
php开发出的
OA和
JAVA开发出来的
OA是马车和火车的差距,前者只能亦步亦趋而且额度有限,后者却是工业化的结晶,不仅能够包容万物而且速度上稳步提升。
3、安全性对比
在同是开源和跨平台的
JAVA面前,
php丢掉了很多的优势。在代码的安全性上尤为突出。
php的开发程序在别人拿到代码后,可以很容易的进行修改。而
JAVA开发的程序由于无法看到完整的源代码,只能看到一些编译好的类文件,所以安全性较高。加之系统架构的优势,在安全性上
php和
JAVA是相去甚远。
如果非要将
php和
JAVA在安全性上做个比较的话,同一个小偷光顾
php那是随便拿来随便改,想拿什么拿什么,拿的高兴还能大笔一辉某某到此一游。而光顾
JAVA的时候,便会发现警察把守,内设自动报警装置,即便突破重重阻扰后进入居室。那值钱的东西都放在加密后的保险柜中,只能望洋兴叹、铩羽而归。
4、前瞻性和拓展性
从整体来说,
php适用于中小型系统,而
JAVA适用于大型系统。
php能够将单一的事件做好,但却不适合完成集成度较高的多项并发事件。为什么说
php适合中小型系统而不适合做大系统呢?
首先,
php缺乏多层结构支持。而对于大型的系统负荷站点,只能采用分布计算。将数据库、应用逻辑层和表示逻辑层彼此分开,并将同层的根据流量分开,组成二维数组。而
php恰恰缺乏这种支持。
其次,
php提供的数据库接口不统一,要将多个不同的数据库数据统一需要花费很大的力气。而
JAVA则没有这种缺陷,可通过SUN
JAVA的
JAVA Class和EJB获得规模支持,通过EJB/CORBA以及众多厂商的Application Server获得结构支持。如IBM的E-business,它的核心是采用JSP/Servlet的Web Sphere,是通过CGI来提供支持的。
如果将
php比作将才,具备独挡一方的能力。那么
JAVA便是帅才,具有较好的前瞻性和拓展性,整体布局和协同能力强。能够指挥千军万马,最后逐鹿中原。
5、开发成本比较 既然
php在诸多方面都不如
JAVA优异,那么
php开发出的
OA产品何以与
JAVA产品竞争呢?在于
php阵营普遍走的是低端路线,而
JAVA阵营走的是中高端路线。两者之间交叉的区域较小。
软件价格的高低很大程度上和自身成本和功能相挂钩。
php的入门门槛较低,绝大多数学过c的程序员都很容易转型为
php程序员,这使得
php程序员的泛滥成灾的同时,低成本的
php软件产品也层出不穷。以
php最经典的组合
php +
Mysql + Apache为例,由于所有软件都是开源免费的,所以投入并不高。
而
JAVA开发需要特定的环境,成长为一个合格的
JAVA程序员需要一定的时间,
JAVA程序员的成本也是
php成本的几倍。
JAVA的web应用服务器免费的有Tomcat、JBoss等,而要想具有很好的商业化服务便必须选用Web Sphere和 Web logic。这其中投入的成本无形中便超是
php成本的N倍。所以,
JAVA开发
OA的成本要远远高于
php开发出来的同类软件产品。但也正由于
JAVA开发的成本较高,很难实现抄袭和短期内逾越的可能,也使得
JAVA用开发出的产品门槛更高。
不怕不识货,就怕货比货。
php开发出来的产品也能用,但是和
JAVA开出的同类产品是没法比较的。正因为
php开发的产品整体性能和
JAVA开发的相去甚远,所以
php运用低成本的低价优势和同类的
JAVA产品抗争,以价格落差来平衡购买者的心态。所以,
php +
Mysql 的
OA不值钱也就不足为怪了。