{eval=Array;=+count(Array);}

问答专栏Q & A COLUMN

php和java相比,应该往哪个方向发展?

IntegInteg 回答10 收藏1
问题描述:本人做了Android3年,公司项目都是用的php,有时候闲了也会帮忙写写php,我想往后台发展,应该是继续深入php呢还是去学学java后端(因为觉得java需求大一点ヾノ≧∀≦)o)
收藏问题

10条回答

jokester

jokester

回答于2022-06-22 19:29

谢谢邀请!

首先,如果抛开应用场景来探讨编程语言是不合理的,另外编程语言的孰优孰劣也有不同的判断角度,所以需要从多个维度来进行分析。

Java和PHP语言都是目前IT行业内被广泛采用的编程语言,目前Java语言的应用场景集中在Web开发、大数据开发、Android开发和后端服务开发领域,而PHP语言则比较专注,主要应用于Web开发,但是PHP在Web开发领域的份额比较大,所以PHP的程序员基数也非常大。

从应用的范围来看,无疑Java语言具有一定的优势,而且Java语言凭借稳定的性能表现和较强的扩展能力是不少大型互联网平台的重要选择,从这个角度来看,似乎Java语言更有优势一些。

但是Java语言的问题也不少,比如Java在语法结构上没有PHP简洁,这直接导致了采用Java方案会加长开发周期,所以不少中小型项目往往会更愿意采用PHP语言。从程序员的角度来说,没有人愿意“复杂”,由于PHP语言在语法结构上的优势,使得PHP程序员对于PHP语言的“忠诚度”是比较高的,这就是为什么经常听说从Java开发转到PHP,或者从Java开发转到Python,但是很少听说PHP程序员转到Java。

当前在开发领域有明显的多极化发展趋势,从早期的前后端划分到现在的“大前端”概念、全栈开发概念、资源接口概念等都在各自的应用场景下得到了发展。对于编程语言的发展来说,如何迎合技术发展趋势是非常重要的。从发展趋势来看,未来PHP在Web开发领域将依然是最为重要的编程语言之一,而Java语言未来虽然依然会有广泛的应用,但是随着Python、JavaScript和Go等语言的发展,Java语言的应用场景会得到一定程度的压缩。

最后,如果要从事Web开发,那么就选择PHP,如果从事大数据和后端开发就选择Java。

我从事互联网行业多年,目前也在带计算机专业的研究生,主要的研究方向集中在大数据和人工智能领域,我会陆续写一些关于互联网技术方面的文章,感兴趣的朋友可以关注我,相信一定会有所收获。

如果有互联网方面的问题,或者考研方面的问题,都可以咨询我,谢谢!

评论0 赞同0
  •  加载中...
GHOST_349178

GHOST_349178

回答于2022-06-22 19:29

抛开任何语言的成见,说说我的感受和看法吧,我从2010年搞PHP到现在,但目前并不局限于PHP开发,也用Java做开发。

如果有心向后台发展,我的建议是转Java。为什么呢?一方面你本身就是做Android的,Java基础在这里,此时转Java后端上手会很轻松,会少走很多弯路;另一方面,从长久发展来看,Java的生态圈比PHP要好很多、各类解决方案都很成熟,岗位需求量大,未来职业化瓶颈较PHP也好一点,所以建议以Java为主。

当然了,后端语言首选Java,如果你Java后端知识也掌握了,也可以学学PHP,两者语言不同,思想上也有出入,都有可圈可点的地方,多学一门语言对技能上的提升也是不错的。

评论0 赞同0
  •  加载中...
aisuhua

aisuhua

回答于2022-06-22 19:29

建议你深入学习一下Java,Java的需求量还是很大的,一些大公司都是用Java来做后台开发的,它更稳定一些。想要有更好的发展还是要学习Java的。如果有时间亦可以简单的掌握一下php,学好Java再学php就会比较轻松。

评论0 赞同0
  •  加载中...
LittleLiByte

LittleLiByte

回答于2022-06-22 19:29

推荐浅学php,深学Java。

对比php和Java

1、前景上

php的用途已经很受局限了,基本都用来做后台或者跑脚本。php就是“脚本型”语言(python也是,然而python的生态比php好多了,题外话)。

Java则是全能。无论是做后端开发、大数据开发、物联网、或者回到你之前的Android,都是可以的。

2、生态上

php基本没有什么生态支持,Java则有Spring全家桶、Netflix全家桶,以及各种实用的库。基本所有的东西开发出来,都会想要去支持C、C++、Java三大经典语言,Java的插件一般都是优先于php插件被开发出来的。你如果要在生产上用,肯定是先考虑Java。另外php的库维护的人员没有Java的多,后期使用Java库如果出现问题,你可以去网上寻求帮助,php则需要靠运气了。

3、使用上

直观感觉上,php随便一两行就搞定的后台,Java要费半天劲搭基础架构,但是你会发现后期运维的时候,Java比php好用多了。比如你要更换数据库,php需要把所有相关代码都改掉,因为耦合太严重,Java则只需要替换实现即可,时间成本上好太多。

一些小建议

1、php和Java完全可以同时学习,并不冲突,学php推荐直接上php7而不要去用php5了。

2、在我看来,php和Java都是语言工具而已,最终不应该寻求的是“后台开发”,而应该寻求的是“服务器架构师”。后台开发只是一个基础技能,服务器架构才是最终的目标。通过学Java,你可以慢慢接触一系列的服务器框架,包括Spring微服务、Dubbo微服务、Docker、Kafka等各种消息中间件,以及现在最流行最火的Mesh网格。这些如果想用php的话,难度会大太多,几乎不可能。

所以建议浅学php,深学Java。

评论0 赞同0
  •  加载中...
seasonley

seasonley

回答于2022-06-22 19:29

写代码已经十几个年头,现在还在写着代码,估计代码要持续到年龄大了一直到写不动为止了,写过几年的java代码,php代码没有具体写过,从目前市场上就业的职位数量还是java用的多,毕竟java不仅仅是在服务端,在客户端还占据着非常大的比重,php主要在服务端占据着比较大的比例,无法简单的判断哪个方向发展好,毕竟在市场上占比都不小,最后就要落实到具体兴趣爱好以及编程能力上,倒是很多初学者喜欢议论出个究竟来,从市场上的需求来看两种编程语言都不差。

编程语言没有那种编程语言一定是最好,适合自己的就是最好的编程语言,现在很多大学里面开设课程,就有java或者php,根据在课堂上掌握的程度选择一种自己喜欢的编程语言,然后全力以赴的去学习,学习编程的需要注意两点培养自己的编程兴趣,可能有些人天生就是对计算机语言感兴趣,学习起来就会非常容易,如果觉得不是很有兴趣,就要想办法培养兴趣,兴趣的产生首先要接触,多看一些计算机方面的书籍或者影视资料,现在很多青少年对于黑客感兴趣看了黑客有关的影视剧比如黑客帝国就是一个典型,培养自己的计算机兴趣是学编程的一个捷径。

就编程的热度来看,php相比还属于年轻的编程语言,看编程是不是火热,可以看是不是培训机构喜欢推广的编程语言,目前培训机构比较喜欢的几种编程语言,前端,python,php,java都是在市场上比较抢手的编程的语言,但要想找一个合适的编程工作,真需要掌握一门编程语言的基本功,现在的编程门槛已经提升起来了,这也是行业在走向成熟的一种标志。

java和php的几点区别?

1.php

在分层式结构上相对java的架构还是有着不小的差距,主要在生态链上看java更加成熟和有厚度,在架构层面扎根更加深刻

2.php

主要在开发中小网站用的比较多,java更加适合做大型的软件框架,当然这不是绝对的,现在很多小型网站都是采用php开发,毕竟研发周期相比java还是快很多。从开发成本上php看似更加有优势

以上两点主要从架构和使用场景上做比较,在实际使用过程中,各个公司会根据自己的业务情况以及研发人员熟悉的编程语言来选择使用哪种编程语言。刚入行的程序员总是喜欢纠结于哪种编程语言最合适最好找到工作,编程语言只要存在就有其价值所在,有些公司现在还在用着VB,VC的脚本因为在一些不是很复杂的场景下,没有必要一定要选择最新的编程语言,毕竟企业从成本的角度考虑能用的很好,实在没有多大的动力去切换。

选择编程语言,选择距离自己最近的编程语言,没有必要为了选择一种编程语言耗掉好多时间去纠结,学好一种编程语言再去切换另外一种编程语言会变得方便许多,触类旁通。

希望能帮到你

评论0 赞同0
  •  加载中...
sf_wangchong

sf_wangchong

回答于2022-06-22 19:29

php是解释执行的服务器脚本语言,首先php有简单容易上手的特点。语法和c语言比较象,所以学过c语言的程序员可以很快的熟悉php的开发。而java需要先学好java的语法和熟悉一些核心的类库,懂得面向对象的程序设计方法。所以java不如php好学。

java首先要编译成字节码.class文件,然后在java虚拟机上解释执行。java的web开发首先最容易想到的就是jsp(现在已经到jsp2.0),原来的java的web开发都是用servlet来实现的,用servlet来开发需要程序员在java的源文件中嵌入大量的html代码。

所以后来就出现了jsp,jsp可以方便的嵌入到html文件当中,其实jsp文件在服务器上执行的时候首先会被应用服务器转换成servlet,然后再编译执行。jsp可以通过servlet和javabean的支持产生强大的功能。javabean是一种可复用的、跨平台的软件组件。使用javabean可以方便的实现java代码和html的分离,能够增强系统的功能和软件的复用性。

java的web开发属于sun公司定义的j2ee其中的规范。而且在j2ee中包括了java的web开发的所有方面,如:jsp、servlet、jdbc、jndi、javabean、ejb等等。j2ee就特别适合于做大型的企业级的应用。

3

系统设计架构比较

采用java的web开发技术,需要使用的是面向对象的系统设计方法,而php还是采用面向过程的开发方法。所以用java进行开发前期需要做大量的系统分析和设计的工作。

4

跨平台性

java和php都有很好的跨平台的特性。几乎都可以在不作任何修改的情况下运行在linux或者windows等不同的操作系统上。

5

性能比较

有人做过试验,对这两种种语言分别做回圈性能测试及存取oracle数据库测试。

在循环性能测试中,jsp只用了令人吃惊的四秒钟就结束了20000*20000的回圈。而php测试的是2000*2000循环(少一个数量级),却分别用了63秒。

数据库测试中,二者分别对oracle 8进行1000次insert,update,select和delete:jsp需要13秒,php需要69秒。

6

分布式多层架构比较

php只能实现简单的分布式两层或三层的架构,而java在这方面就比较强大,可以实现多层的网络架构。数据库层(持久化层)、应用(业务)逻辑层、表示逻辑层彼此分开,而且现在不同的层都已经有一些成熟的开发框架的支持。例如struts就是利用java的web开发技术实现了mvc的设计模式,而在业务逻辑层也有spring框架,数据库持久化层有hibernate等框架。这些框架可以方便开发者高效、合理、科学得架构多层的商业应用。

下面简要的说一下struts,它实质上是在jsp model2的基础上实现的一个mvc(model、view、controler)框架。jsp model2体系结构是一种联合使用jsp与servlet来提供动态内容的方法。在struts框架中,模型由实现业务逻辑的javabean或ejb组件构成,控制器由servlet实现的,视图由一组jsp文件组成。采用struts可以明确角色的定义和开发者与网页设计者的分工。而且项目越复杂,其优势越明显。

7

源代码安全

php开发的程序的源代码都是公开的,他人拿到php开发的程序后都可以进行修改。

java开发的程序,最后用户拿到的是只是一些编译好的class类,无法看到完整的源代码,安全性高。

8

开发成本比较

php最经典的组合就是:php + mysql + apache。非常适合开发中小型的web应用,开发的速度比较快。而且所有的软件都是开源免费的,可以减少投入。

java的web应用服务器有免费tomcat、jboss等,如果需要更好的商业化的服务有:web sphere和web logic。

9

java和php在web开发方面的比较

综上所述,我个人认为,php适合于快速开发,中小型应用系统,开发成本低,能够对变动的需求作出快速的反应。而java适合于开发大型的应用系统,应用的前景比较广阔,系统易维护、可复用性较好。还有,同样功能的系统用java开发的系统要比php开发的系统的价格要高。

对于学习有困难不知道如何提升自己可以加扣:578024144 进行交流得到帮助,获取学习资料

---------------------

作者:java妞妞

来源:CSDN

原文:https://blog.csdn.net/javaniuniu/article/details/52473882

版权声明:本文为博主原创文章,转载请附上博文链接!

评论0 赞同0
  •  加载中...
banana_pi

banana_pi

回答于2022-06-22 19:29

明人不说暗话!java

评论0 赞同0
  •  加载中...
Mertens

Mertens

回答于2022-06-22 19:29

个人认为,语言只是工具。没有最好的语言,只有最合适的语言,每个语言诞生肯定有他的原因。

比如PHP适合做web开发,python适合做爬虫,c++适合做游戏,java适合搞微服务。

如果要从php和java这两个语言选一个和话,还是学java吧,本人是做php的,有点感触。php偏向业务开发,java可搞的范围比较广,生态强大,成熟的技术方案网上比比皆是,高级java工程师还是挺吃香的,各个大厂包括BAT都招java,只要学好了就能进去,PHPucloud就不要,没PHP的岗位。


学java还是要和你们公司的业务相结合,比如你们公司都用PHP,你学java也无用武之地啊,没有项目实践的话成长很慢的。所以你还是要结合自己的实际情况来选择。

评论0 赞同0
  •  加载中...
Carson

Carson

回答于2022-06-22 19:29

我做PHP开发的。说句心里话,不建议你在这个年纪转行做开发,你可以转行做别的,但是软件开发真的别来,一个是你的年纪偏大,另一个是你的基础应该不会很好。千万别听那些培训机构忽悠。我是大学已毕业就做的java,三年了,现在工资1W1,北京,我做的这几年遇到很多被培训机构忽悠的半路出家的人,真的是浪费钱,关键是浪费时间,java这个行业不缺低端程序员,可以这么说,如果你基础不好,去培训机构然后再找工作,除非你学的特别特别好,而且会忽悠,第一份工作能有7000块钱,基本上普通的也就5000多点,在北京。而且头一年你会相当痛苦,因为首先你要适应项目节奏,再次你会不断的被各种BUG,各种加班。真的是青春饭。另外,说一句,培训机构太忽悠,那些培训的老师大多是开发人员转行,试问一下:要是开发像他们说的那么好,他们为什么专业做培训呢

看到最近还有人赞我几年前的回答,就再补充一下,现在还在从事java研发,6个年头了,想说的是,真的不建议没有基础的人去培训机构培训,然后转行,尤其是年纪稍大的,因为目前整个行业初级工程师已经饱和了,根本不缺。在好的公司,高级工程师又各种卡学历,卡行业背景,甚至年纪都有一定要求。举个我自己的例子,目前在一家算是有点名气的公司,公司社招,只要top150学校,5年工作经验以上的高级研发(业务方向必须要求金融背景),虽然没有明面上说卡年纪,但是35岁以上的还没有转研发管理层,继续应聘研发岗位的一律不要。校招只招top100学校的科班出身。当然研发工资待遇确实比其他行业要高,目前我的月薪20K+项目奖+补助,但是每天都要加班到晚上9点多,项目紧时要到11点以后,周末也经常要加班,工作强度很大。真的是很累很累。或许有人说做到管理层就好了,其实也好不到哪里去,我目前也在转管理,带一个团队,但是,一样加班,一样累,经常晚上加班回家以后,想转行,可是除了敲代码,啥都不会了。女怕嫁错郎,男怕入错行。就业方向一定要谨慎,千万别听那些培训机构的忽悠。另外说PHP,不是说鄙视PHP,现在就业行情,整个大环境都不好,包括java,但是PHP,安卓,IOS还要差一些,我之前说的朋友做了五六年PHP,去年开始转JAVA

评论0 赞同0
  •  加载中...
neu

neu

回答于2022-06-22 19:29

1.很多人喜欢把不同的编程语言做对比,讨论哪种编程语言的发展前景更好,我觉得这种讨论是没有太大意义的,因为不同的编程语言有不同的应用场景,不同的应用领域。

2,我虽然没有学过php,但是作为一名Web开发者,对php还是颇有了解的。php专门是为做网站而生的,也是做中小型网站的主流开发语言。主要优点是学习成本低,开发效率高,但是想要学精还是有难度的。

3.java我是比较了解的,因为是做java开发的。java的应用领域相比php广了许多,像java桌面开发(几乎没人用),javaweb,java大数据,java爬虫,安卓客户端开发,java最主流的还是JavaEE的开发,也是做大型WEB的主流开发语言,像现在的淘宝,京东后台语言多数是java写的。Java也是编程语言排行榜使用人数最为多的语言,但是Java的体系之大让很多人望而生畏,学习成本也是比较大的。

4.编程语言本身没有好坏之分,发展前景取决于你所掌握技的技术。就这两种语言来讲,在未来的十几年,或者说几十年应该是不会被淘汰的,所以说,选择一门语言,努力学,努力提升自己的技术,这才是决定你发展前景的关键性因素。




评论0 赞同0
  •  加载中...

相关问题

最新活动

您已邀请0人回答 查看邀请

我的邀请列表

  • 擅长该话题
  • 回答过该话题
  • 我关注的人
向帮助了您的网友说句感谢的话吧!
付费偷看金额在0.1-10元之间
<