作者

先看一些统计数据

1. 实际份额

每天统计的全球网站,所使用的服务端语言份额。点此链接

2. 全球50名网站所使用的语言

经常会听到某某论调,Java适合开发大型项目,PHPRuby等适合开发中小项目。事实真是如此吗?一个大型项目,往往都是多种语言一起开发的。以下统计的是此站点使用的主要语言。

这个统计数据并不是今年最新的,有一些变化。具体的已知变化是

淘宝的前端由PHP转向了Node.js
JavaPaypalLinkedin转向了Node.js

目前Java在列表中前50名的网站里,仅仅剩下3家而已。

3. Tiobe 编程语言排行榜

需要搞清楚的是,这个排行榜是怎么来的?他是根据搜索引擎的搜索量来的,跟实际项目份额一点关系都没有。那你是关心搜哪个多,还是更关心企业用哪个多呢?

PHP

PHP的特点,简单粗暴。不过就是这样的简单粗暴,却能让你快速的完成项目。

PHP过去的代码非常混乱,各种奇葩代码层出不穷,一人一个搞法。不过这种情况,在有了Laravel框架和Composer包管理器后有了非常大的进步。

现今的PHP,基本发展还是不错。使用了这些新技术后,代码的结构和规范都得到了最大的保障。我觉得它目前依然是一个很好的工作的语言,就业需求也依旧旺盛。

比较大的一个问题是,经过各种培训机构教出来的PHP新手比较多,这些往往是没有自己独立完整企业项目能力的。而一去了就能自己独当一面,独立完成各种企业需求的人却比较稀缺。

Java

我毫不掩饰的说,Java是我个人最讨厌的语言,没有之一。

有的语言会给你最大的自由,你就是上帝,你想怎样都可以随心所欲。而有的语言,觉得用户都是傻X。给你一个牢房,让你用起来感觉自己是犯人,做什么都必须在限制的牢房里。Java明显就是后者,它非常善于把简单的事情变得复杂,并且加上一堆条条框框让你非常的难受。

基本上说Java好的人,就三类。

第一种,书呆子。
第二种,坐井观天,只用过Java,根本没用过其他优秀语言的人。我敢肯定说他没用过Ruby这类人性化的语言。
第三种,听别人说的,自己根本什么都不了解。

以下内容,摘要自硅谷创业之父,Paul Graham黑客与画家一书

第一段

有人写信说:“你怎么能说Java不会成功呢?它已经成功了。” 我觉得这要看你的成功标准是什么。
如果标准是相关书籍的出版量,或者是相信学会Java就能找到工作的大学生数量,那么Java确实已经成功了。
当我说Java不会成功时,我的意思是它和Cobol一样,进化之路已经走到了尽头。

第二段

hello-world程序的唯一作用就是显示出“Hello, world!”这句话。使用Java语言,你需要这样写:

public class Hello {
    public static void main(String[] args) {
        System.out.println("Hello, world!");
    }
}

如果你从来没有接触过编程,看到上面的代码可能会很奇怪,让计算机显示一句话为什么要搞得这么复杂?
有意思的是,资深程序员的反应与你一样。

第三段

最不用担心的竞争对手就是那些要求应聘者具有Oracle数据库经验的公司,你永远不必担心他们。
如果是招聘C++Java程序员的公司,对你也不会构成威胁。
如果他们招聘PerlPython程序员,就稍微有点威胁了。至少这听起来像一家技术公司,并且由黑客控制。
如果我有幸见到一家招聘Lisp黑客的公司,就会真的感到如临大敌。

我个人观点,与此书作者一致。如果你只是想去找个普通的企业混口饭吃,Java是一个选择。如果你是一个富有创新精神的黑客,我相信你是绝对不会选择这门语言的。

另外非常不推荐再去搞安卓开发了,目前行情是开发者严重过剩。已经过了当年ios安卓开发非常火爆的年代了。用户不愿意在手机上安装一大堆不常用的App,另一个开发App的成本本身也比较大。很多企业开始转向微信的公众号、小程序开发。

Python

Python应该是目前炒作做厉害的语言。我想说的是,真的只是各个培训机构的炒作而已。我过去自己长期用PythonWeb.py框架开发项目。然而Web方向上Python一个比较完美的框架都没有。

Web.py,是一个好东西,然而作者仙去了。
Django,用起来和RailsLaravel比,太难用了。
Tornado,性能高,可是严重缺轮子。

国内Python两大站点,一个豆瓣、一个知乎。除此外,你基本找不到其他有一定知名度的站点了。知乎目前主程序还要开始往Golang上迁移。

另外Python大数据人工智能等等,我劝你清醒一点。一般搞开发的公司不需要做这个,需要做这个的公司不会要你。尤其是人工智能,不是名校的研、博,或者有一定业界知名度的人士,你想都不要想。

Python的爬虫,我觉得也不是什么公司都需要的。正常自己开发运营的公司,用到的点也不多。

我觉得可能你学完后,就业最大可能的方向就是去搞服务器运维了。

Ruby

毫无疑问,这是我个人最喜爱的语言,没有之一。语言本身的各种优点,人性化都让我深深喜爱。我自己公司的项目,ITFun.tv我也选择了使用Ruby On Rails来开发。各种完善便利我就不一一道来了。

那我主要想要谈的是Ruby的就业问题。在我所在的武汉这种城市,用Ruby做开发的公司,包括我,大概4~5家。满眼看下去,净是PHPJava。你能在这种城市找到合适的Ruby工作,算我佩服。
但是如果你去一线城市,那就不一样了,这种机会就要多的多。

意见就是,如果你在一线城市,学Ruby是一个很好想法。如果是二线就算了,不要到时候饭都没有吃的。

我的学习经历

PHP是我吃饭的家伙。不过我给我自己的女儿取英文名叫Ruby,儿子取英文名叫Python。家里的垃圾桶就叫Java。你就该知道我对他们的看法了。

我个人是先学了PHP,并一直以此为生。后来自学了Java,不过感觉Java的各种理念与我自由的内心实在不合,于是反而变得非常烦此语言。再后来又自学了Python,并用他做了一些项目。最后接触的是Ruby,也是我最喜欢的了。

我的推荐

如果你现在急着就业,那么PHP是一个比较好的选择。你可以和我一样,先由PHP入行,等这一门语言自己觉得能力没有任何问题了,再去学习其他的语言,开阔自己的眼界。

如果你在一线城市,Ruby也是很好的选择,二线城市请慎重。
Python我也比较喜欢,只是目前我没有怎么用它,主要做的都是PHPRuby的开发工作。你如果想从事运维工作,可以选择这个。Python的其他方向劝你慎重。

总结

最后做一个总结,前三句话来自网络,最后一句是我自己加上的。

假如你想帮他尽快找个活儿,赚到钱,推荐PHP
假如你想让他成为一个高效工程师,推荐Python
假如你想让他爱上他的工作,推荐Ruby
假如你想让他自己跟自己过不去,就当一个书呆子,推荐Java

转载请注明,来自https://itfun.tv/news/11