当谈到php与java的差异性问题时,更多的是回答初学者的一些疑问。对于刚接触it的同学来说,他们需要做好对未来职业的选择。所以是选择php还是选择java更有利于自身的技术特点和发展前景。所以在解决这一问之前,首先要认识java和php两种语言。
认识java
java是一门计算机编程语言,和c++、python等编程语言一样,java如今依旧应用广泛。从我们日常用的安卓手机app到大部分网站或管理信息系统的应用服务器程序都是用java这中语言来写的。它之所以应用广泛,笔者认为与java能顺应面向对象这一主流的编程思想有很大的关系,将数据结构及其处理方法集成起来可以减少代码量,让程序员更多地把精力放在对程序的设计上,增加程序的功能性;同时减少了c类语言中指针、多继承等概念,引入了多线程、分布式与嵌入式概念,并且配合虚拟机的使用,让java成为最佳的跨平台语言。
认识php
php是hypertext preprocessor的缩写,是一种计算机脚本语言(script languages)。脚本语言不需要像编程语言那样在编译时生成二进制可执行文件,而是直接对写好的php代码执行以达到效果。和同样的脚本语言javascript一样,php也是一种解释型语言,即可直接解释执行。与其说php是编程语言,不如说是一组命令。我们之所以用php和java做比较是因为它也是面向对象的,同时也用到编程语言当中的一些变量,但他并没有像编程语言那样严格。正因为他是一组命令,可嵌入到html中,实现网页特效,于是php被广泛应用到web当中。
在充分认识这两种语言之后,笔者从系统技术架构方面和互联网应用前景两方面进行比较。
系统技术架构
分层思想是是设计计算机系统过程中非常重要的思想。比如操作系统常见的硬件层、驱动层、应用层之间的关系。分层可以更好地实现高内聚、低耦合的效果。我们都知道,java语言有着完备的mvc框架,包括视图层、业务控制层和持久层,在spring框架中,我们可以通过ioc和aop降低编码过程中的高耦合,也就是说java中的这些框架可以让开发者有更广阔的空间去设计科学合理的架构,也体现着java多层架构的特点。相比java而言,php留给开发者的空间并不多,但php近些年也在改进,迎合电子商务的需要,引入mvc设计模式,但成熟性和稳定性上与java还是有着不小的差距。不得不提的是php可兼容mysql开发,这使得在考虑成本因素的前提下,php变得小而精,收到了一些中小型网站的青睐。
互联网应用前景
java在积累了大量的开发者和市场之后,已经形成了完整的生态,所以java进入web领域是顺理成章的事。虽然java在开发应用程序方面时常被人们吐槽,但java在开发网站系统上有着自己独特的优势就是javaweb实现了前后端的统一。出于安全性的考虑,大多数企业采用的是linux服务器,而javaweb对linux有着良好的适配性和可移植性,更有利于方便对网站前后端的管理。同时,java设计模式较为丰富,还有完善的框架,在多线程、高并发方面有着较好的稳定性。适合做大型的商业项目。当然,我们也要看到,php从诞生之日起就是为互联网而生的,虽然没有java那样完备的生态,但php有着小而精,部署成本低的特点。php也可以采用分布式系统,同时还提供了较多的数据接口,弥补了自身的不足。在互联网应用方面,怎样选择需要结合具体的项目,考虑成本和效益以及业务需求。
如果从学习角度来考虑,php要比java简单,但如果你java技术过硬,未来的职业前景也是比较可观的。