本来打算学习PHP的但是我身边的人推荐我去学Java,这是为什么?

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了本来打算学习PHP的但是我身边的人推荐我去学Java,这是为什么?相关的知识,希望对你有一定的参考价值。

  1.java和php的发展空间对比
  安卓势头很猛,但手机安装app数量有限,推广难,也是app面临的最大挑战,好在安卓只有JAVA可以做,除此之外就是html5了。
  中国人口占全球人口19.7%,中国网民占全球网民22.4%,中国网站数量占全球网站数量的0.5%,网站的可发展空间可谓巨大;发达国家互联网对GDP的贡献可达20%,中国互联网对GDP的影响仅为3%。可谓互联网的发展空间巨大,而互联网离不开WEB,WEB离不开PHP。
  两者相比,个人觉得PHP的优势更加明显。
  2.java和php的薪资涨幅速度对比:
  java是公认的难,难上手,真正上手需要至少1-2年,而这期间都属于学徒级别,薪资涨幅有限。2年后会有一个较大的涨幅。
  PHP是公认的简单,上手极快,基本过了试用期就可以涨工资了,PHPer正常是半年涨一次薪资,前3年的幅度都还可以
  两者相比:其实php的前端优势明显,后段双方区域持平。并不像很多人说的PHP后面难涨,PHP缺人,但更缺熟手。java也不像很多人吹嘘的那样高薪,两级分化严重。其实也很正常,越难的语言,两级分化越是严重。
  3.java和php各自发展的瓶颈:
  JavaEE体系曾经统治企业级软件开发长达数十年之久,十年间英才辈出,但是Java语言本身却越来越显示出臃肿和分裂的态势。使用Java是个昂贵的选择,复杂的需求设计,
缓慢的项目进度,昂贵的应用服务器和维护难度使Java成为了一种庙堂之上的语言。而版本的分裂也使所谓的跨平台特性成为了一句空话。Java的特性使得它并不适合业务随着市场快速变化的互联网企业,WEB领域几乎被PHP一统天下,嵌入式领域几乎被C++一统天下,客户端领域几乎被C语言一统天下,要不是安卓的出现,java的命运还真不好说了。php的大中型系统开发,方便、快速、是java跟asp.net没法比拟的,
还有php有很多如yaf,yii,ci等强大的框架, 中小型一般系统的开发,一个thinkphp就足于通杀java的ssh三大框架了。
  PHP由于其简单,快速开发等特点,也导致了开发复杂应用稍显吃力,所谓成也萧何败也萧何,PHP由于其关注应用层面,开发基本不需要考虑底层的东西,导致其开发快速,学习简单;但也导致了学习PHP工作一段时间比较容易遇到瓶颈,PHP在5.3版本后加入了更为强大的扩展,通过PHP的扩展可以实现PHP本身实现不了的功能。所以PHP开发遇到了这样瓶颈,可以考虑通过扩展来解决,facebook和weibo.com正在大量使用扩展功能去应对一个又一个的难题。新浪微博架构师兼首席PHP技术顾问惠新宸一直在专注与PHP底层原理的研究和分享。扩展是被他认为PHP最伟大的地方。
  4.java和PHP的学习成本对比:
  java学习,是公认的难。难以上手,难以理解。自学时间成本是12个月,自学成功率不到10%,培训时间成本也近6个月。培训费用平均成本大致为2万元左右。成为熟手的时间成本为2年。成为高手的时间成本一般为5年以上。
  PHP学习,是公认为最简单的语言。解释性语言,无需编译。自学时间成本是6个月,自学成功率20%,培训时间成本3个月。培训费用平均成本1万5千元左右。成为熟手的时间成本为1年。成为高手的时间成本一般为3年以上。
  两者相比,java的学校成本要明显高于PHP。
  总结一下:java和PHP各有各的优势,说到明天早上也不一定说的完,我想说的是学习哪一个,都是OK的。
  想学java就从事安卓行业,想从事WEB领域,就学习PHP。

  由于java的学习难度,没有基础或者基础不好的同学还是谨慎选择,对于零基础的同学还是PHP可能更加适合一点。
参考技术A PHP用得越来越少,而Java应用面越来越广泛,当然要选个用得多,就业岗位多的来学了。 参考技术B php学起来更简单,学习周期相对较短。这是因为php底层封装了很多复杂的东西,学习者不用自己实现,只需要调用封装好的函数就可轻松实现。
而且php是弱类型语言,这里的弱不是说php很弱,而是指定义变量的时候不需要你手动指定变量的类型。php底层会自己分析这个变量属于哪种类型。
使用php完全感知不到数据结构的存在,一个array包含了:数组、动态数组、链表、队列、栈、hashmap等数据结构。
php无需额外技术便可以与html完美嵌入。
php函数丰富,书写简单。
上面这些php的特性决定了它开发的效率,那就是非常高效。补充一点php是解释型语言,运行前无需手动编译。这对开发来说很高效,如果你用java开发,那么远行前必须用一定的时间先进行编译,才能运行,才能看到结果。而php直接看结果。
java是强类型语言,定义变量必须手动指定变量类型,不同类型进行相关操作,必须手动转换类型,比如:3+2.3,3是整数,2.3是小数,他两是不同类型,需要你手动把他两弄成一样的类型才能进行相关操作。
java可以让你懂的很多数据结构,数组、动态数组、链表、双向链表、队列、栈、hashmap、红黑树等。这些数据结构的操作方法各自都有各自的对应方法,这就需要你明确知道你要操作的是什么数据结构,才能使用对应的方法去操作他们。
java天生就是面向对象的语言(设计的时候,就是这样设计的。一个生动的比喻就是:一出生发现没有腿,后天你也不可能长出腿。),面向对象对于初学者来说不是很容易理解,会感觉生涩难懂,所以会增加你的学习成本。
接下来,比较一下php和java吧,如果你想快速学会一门编程语言,那么建议你学php、python、golang,四个月入门时间足够。但四个月学java是不够的。如果你想对编程语言有一个全面的认知,那建议你学java,因为java里面没有在底层过度封装,很多东西都暴露给了学习者,通过学习你会对编程所涉的知识有全方位的认识。这就是面试的时候,如过是java程序员,问你多线程是怎么回事,你不能像php程序员一样说不知道。问你红黑树是什么东西,你不能像php程序员一样说没学过。
最后说一句,不管是哪门编程语言,如果要达到精通的地步,都需要花费数年甚至数十年。就算是可以很快入门php、python等想要精通那也很难。我想通过上面的分析,要学java还是php,你一定心里有数了。

推荐五个java基础学习网站,小白必备

不知道去哪找java基础资料?推荐几个学习网站,小白必备

Java经过20多年的发展,仍然是世界上最受欢迎的编程语言之一,有无限多种方法使用Java。拥有庞大的客户群。并且java应用范围很广,基本只要与互联网有关的东西都能与java扯上关系,java于我们的生活息息相关,就像空气一般,存在于身边但让人不易发现,但偏偏让人们的生活离不开它。

所以学习Java的人也是很多的,我接下来推荐几个好用的java学习网站:

1、菜鸟教程

 技术图片

菜鸟教程可以说是很多人的入门网站,我当初就是看这个入门开始了解java的,而且没有广告。

2、HOW2J

 技术图片

这个网站可以说是很良心了,界面简洁,资料齐全。并且上面的java实例很有趣,图中可以看见面向对象的例子用的是英雄联盟的盖伦和小提莫,让人接受起来很快。

3、我要自学网

技术图片

我要自学网是别人推荐给我的,这个网站很成熟,资料也很齐全,但不是完全免费的,有的教程部分需要付费,但不能否认这是一个好网站的事实。

 

4、W3school

 技术图片

W3school是一个类似菜鸟教程的学习网站,上面也有很多课程,既有免费的也有付费的,内容整齐的列表一览无余.内容品质无可挑剔,适合查缺补漏。

5、腾讯课堂

 技术图片

上面提到的网站都很好,但是没有直播课,所以有一些知识点比较老,相较于别的平台,腾讯课堂上有很多直播课,学习java基础部分可以去上面每天蹭课。

除了上面的五个网站,学习java其实还有很多渠道,例如csdn博客等论坛,都是学习编程的好地方。

希望这几个网站能帮到大家,可能在学习了java的人群中这是人尽皆知的,但还是希望能帮到萌新小白,java大法好啊。

最后赘述一句,需要java资料的可以私信联系我,都是我自己积累的一些,希望能到大家。

 

以上是关于本来打算学习PHP的但是我身边的人推荐我去学Java,这是为什么?的主要内容,如果未能解决你的问题,请参考以下文章

不知道去哪找java基础资料?推荐几个学习网站,小白必备

个人学习jenkins集成php自动化测试的经历..对于一个没经验的人来说很痛苦(希望有大神来补充批评..)

Docker学习-从无知到有知的学习过程

java转php容易吗

软件工程第一周开课博客

学习小记