微信号:infoqchina

介绍:有内容的技术社区媒体

哥们儿,你用什么编程语言?

2017-11-17 08:00 通晓八国语言的
编辑|小智
嘿,哥们儿,你用什么语言?

技术圈最没有意义的问题之一当属:“谁才是最好的编程语言?”

很多人的启蒙编程老师马士兵曾经说过:

你觉得最好的,并不一定适合所有人。同样的,语言也一样。在某种特定的问题之下,咱们得说解决什么问题。你解决驱动的问题,你只能是会汇编和 C 语言,你解决后台的问题用汇编肯定就不合适了。相当于拿一个小剃刀盖一栋大楼房。不合适。所以没有最好的语言,只有最合适的语言。

因此,我们今天不谈哪种语言是最好的,我们只看,这些各擅胜场的语言,都有哪些干货可以给大家分享学习。

Java

在历经多次跳票之后,Java 9 终于在千呼万唤中正式发布。从这个版本开始,Java 将每半年发布一个版本。作为霸占编程语言排行榜鳌头多年的老牌语言,Java 9 中有哪些不得不说的新特性?Java 语言的未来又将如何?

针对 Java 9 新特性的介绍已经非常多了,这里不再做一个百科全书一样的列表,希望从不同角度简要点评部分特性。

戳标题即可阅读:Java 9 正式发布,新特性解读

从 1995 年第一个版本发布到现在,Java 语言已经在跌宕起伏中走过了 22 年,最新的 Java 版本也已经迭代到 Java 9。当年 Java 语言的跨平台优势如今看来也只不过是家常小菜,Go、Rust 等语言横空出世,进一步拓宽了编程语言的边界。当年发明 Java 语言的 Sun 公司早已被 Oracle 收购,Oracle 现在也正处于水深火热的云计算浪潮当中,甚至连 Java 之父 James Gosling 也加入了当今世界最大的云计算公司 AWS。

Java 语言发展的这 20 年也正是全球互联网迅猛发展的 20 年,Java 语言同时也见证了电商浪潮、移动互联网浪潮、大数据浪潮、云计算浪潮,所以在现今各大互联网公司身上都能看到 Java 的身影。TIOBE 的语言排行榜显示,自 2016 年初 Java 语言就出现了明显的下颓趋势,开发者社区也出现了一些唱衰 Java 语言的论调,编者心中也有些许疑问:Java 老矣,尚能『饭』否?基于这样的背景,InfoQ 邀请到了 Java 资深专家张建锋来为大家解读 Java 语言的发展现状以及未来。

戳标题即可阅读:Java 老矣,尚能饭否?

Python

Stack Overflow 最近的调查显示,Python 已经成了发展最快的主流编程语言,也是 Stack Overflow 上来自高收入国家的访问中,点击量最高的标签。

为什么 Python 发展得这么快?Python 的应用范围非常广,从网站开发到数据科学,再到 DevOps,到处都可以看到它的身影。所以值得认真研究一下 Python 最近到底是在哪些具体的方面应用得更广了。本文会从另一个角度解读 Stack Overflow 的数据,理解具体是哪些方面的 Python 应用在增长,以及在什么样的公司和组织中 Python 用得最多。

戳标题即可阅读:为什么 Python 发展得如此之快?

尽管 Python 有时被粗略地分类为“脚本语言”(script language),但是它具有最丰富和强大的类库,以及良好的扩展性,于是在工业和科研上获得广泛的使用。PyCon 是全世界最大的以 Python 编程语言 为主题的技术大会,大会由 Python 社区组织,每年举办一次。在 Python 2017 上,Instagram 的工程师们带来了一个有关 Python 在 Instagram 的主题演讲,同时还分享了 Instagram 如何将整个项目运行环境升级到 Python 3 的故事。

Instagram 的总注册用户达到 30 亿,月活用户超过 7 亿 (作为对比,微信最新披露的月活跃用户为 9.38 亿)。而令人吃惊的是,这么高的访问量背后,竟完全是由以速度慢著称的 Python + Django 支撑。Python 虽然运行很慢,不过,这对于 Instagram 不是问题,因为他们认为:『Instagram 的最大瓶颈在于开发效率,而不是代码的执行效率』。

戳标题即可阅读:Python 向来以慢著称,为啥 Instagram 却唯独钟爱它?

Go

今日头条当前后端服务超过 80% 的流量是跑在 Go 构建的服务上。微服务数量超过 100 个,高峰 QPS 超过 700 万,日处理请求量超过 3000 亿,是业内最大规模的 Go 应用。

在 2015 年之前,头条的主要编程语言是 Python 以及部分 C++。随着业务和流量的快速增长,服务端的压力越来越大,随之而来问题频出。今日头条为何转向 Go 语言,又是如何利用 Go 做技术搭建的?

戳标题即可阅读:今日头条 Go 建千亿级微服务的实践

2007 年 9 月 20 日,关于设计一门全新语言的讨论正式开始,这门全新的语言,就是后来的 Go。时至今日,Go 语言已经发布到 1.9 版本,走过了整整十年的历程。在这十年间,Go 语言两夺 TIOBE 年度语言大奖(2009/2016),许多初创公司在早期使用 Go 进行开发,包括现在的云计算巨头 Docker,也由此催生出了 Kubernetes 这样的项目。在大洋彼岸的中国,Google Trends 显示 Go 的异常火爆更让 Go 语言之父感到震惊。

许式伟是 Go 语言在中国的布道师,一直致力于推进 Go 语言在中国的发展。这是他与 Go 语言的十年故事。

戳标题即可阅读:许式伟:我与 Go 语言的这十年

PHP

新浪微博在 2016 年 Q2 季度公布月活跃用户(MAU)较上年同期增长 33%,至 2.82 亿;日活跃用户(DAU)较上年同期增长 36%,至 1.26 亿,总注册用户达 8 亿多。PC 主站作为重要的流量入口,承载部分用户访问和流量落地,部分服务(如:头条文章)承担全网所有流量。在这样的情况下,PC 主站升级为 PHP 7,有哪些技术细节可以分享?

戳标题即可阅读:亿级用户 PC 主站的 PHP7 升级实践

淘宝首页是淘宝的门面,承载着几乎淘系所有业务的入口,流量很大,量级单位为亿。近几年无线端崛起,业务重点开始向无线终端偏移(目前不能叫偏移,基本以无线为主了),所以淘宝 PC 端首页的流量也有削减,不过即便如此,它的日均 PV 依然相当高。淘宝首页一向是内部平台和技术的试验田,它一直在变化着。

作者从 2014 年双十二结束时开始接手淘宝首页,经历了淘宝首页的两次改版和一次从 PHP 到 Node 的迁移,本文介绍了淘宝首页的变迁过程、性能优化、稳定性保障和敏捷措施,分享了作者在此过程中的感受。

戳标题即可阅读:从 PHP 到 Node,聊一聊淘宝首页背后的技术

Clojure

编程语言的圣战,除了语言种类之分,也有动静门派之别。我们写着静态语言往往想着动态语言的灵活,写着动态语言又容易想着静态语言的稳定和可靠。常听到有人说,Clojure 确实优美,但动态语言实在驾驭不了,怎么办?

本文整理自 Morgan Stanley VP 何婧誉在 QCon 2017 北京站上的演讲,原题为:《属兔的处子——喜欢 Clojure,但怕动态语言太灵活怎么办》。戳标题即可阅读:编程语言的动静之争:Clojure 太灵活,我们该如何驾驭它?

JavaScript

JavaScript 因为互联网而生,紧随着浏览器的出现而问世。它被世界上的绝大多数网站所使用,也被世界主流浏览器(Chrome、IE、FireFox、Safari、Opera)支持。

除了样式效果外,JavaScript 也被越来越多地应用于软件开发,例如后端任务、Web 服务器以及数据处理。JavaScript 成型很快,起初只关注一个很小的目标,后来市场的力量改造了这门语言。

戳标题即可阅读:最终,JavaScript 成为了一流语言

同样重要的其他

有关于编程语言的话题,一篇文章所能涵盖的只是冰山一角。每一种语言,说起来都能三天三夜不带重样的,在此因为篇幅有限,我们也只能提供几篇文章以供大家鉴赏。更多编程语言相关的文章,欢迎下载 InfoQ 出品的《架构师特刊:编程语言专栏》!

公众号对话框回复“语言”,即可获取下载链接。

不是评论区,不是评论区,不是评论区,重要的话说三遍!

One more thing
你现在会哪几门编程语言?

你的语言鄙视链是怎样的?

你下一门想学的语言是什么?

快来留言告诉我们吧!
今日荐文

点击下方图片即可阅读

我是北漂程序员,没有假装在生活


下一步


选好了语言了么?下一步应该折腾啥?

 “算法?”
Hulu 全球副总裁想和你谈谈算法无处不在的未来技术架构
 “全栈?”
阿里菜鸟最近总结了技术团队全栈化(开发全栈前端)之路
 “架构?”
摩拜首席架构师出炉了他们的《国际化架构演进经验》
 “数据库?”
微信用户突破 9.8 亿了,背后高可用、强一致的存储系统的技术细节是怎样的?
 还是想升级做管理?
Instagram 最早的华人工程师将侃侃从 Instagram 到 Reddit,西方工程师的文化和管理
 ...


上述所有经验总结,即将在 12 月 8-11 日 ArchSummit 全球架构师峰会 北京站现场分享,目前已邀请 100+ 国内外资深架构师,可识别下方二维码获取大会演讲目录,提醒:大会 9 折报名即将结束


 
InfoQ 更多文章 阿里巴巴运维体系变迁史 我是北漂程序员,没有假装在生活丨二叉树视频 真正改变命运的并不是知识 不喜欢被管理的程序员,你能做好自我管理吗? 流量小生DDOS攻击下,微博如何保证系统稳定不再挂?
猜您喜欢 给大家来点小笑话,工作之余轻松一笑~ localStorage的黑科技-js和css缓存机制 活动报名 | 【LoveData 大数据夜修行】 途牛数据平台引擎演变 ContentProvider引发闪退之谜 从需求的角度去理解Linux之一:总线、设备和驱动