为什么Quora选择Python作为它的开发环境

编辑:光环大数据 来源: 互联网 时间: 2017-10-26 18:11 阅读:

  为什么Quora选择Python作为它的开发环境,自从Facebook的创始人AdamD'Angelo开始效力于这个大量使用了PHP的网站,我就一直在想他要用Python而不是PHP来创造Quora所遇到的技术挑战。

AdamD'Angelo,Quora创始人:

我们非常确定我们不会用PHP。Facebook因为历史遗留原因而使用PHP,并不是因为它是最好的选择。

从以往的经验看来,编程语言的选择是非常重要的,并且会付出非常昂贵的代价来改变它。

Python是一个Charlie和我都非常了解的语言(尽管我现在比刚开始的时候了解的更多了)。我们也简单地考虑过C#、Java和Scala,Python最大的问题是运行速度和缺少数据类型检查。

C#似乎是很有前途,作为一个编程语言,它很伟大,但是:

我们不想在微软架构上,我们是为了学习新东西的,MSSQL确实是非常不错的,但是我们知道我们需要为.NET集成很多有二等支持的开源代码,如果它支持的话。并且,现在大部分的工程师都习惯开源资源。

我们不会在Mono(C#/.NET的一个开源代码的实现)上冒险。还不清楚这个项目会用多长时间,并且我还听说了不少已经表现出来的问题。总之,似乎一切在C#生态系统中的东西都表现出我们会在微软架构下。

‘另外两个我们简要考虑了的语言还有OCaml和Haskkell(没有一个有足够大的生态系统或足够好的标准库,可能对于需要写代码的设计师/数据分析师/非工程师来说太难了)。

我们决定,对于大多数我们要做的事情来说,Python已经足够快了(因为我们尽可能的把我们的后端服务的关键代码用C++来写)。至于类型检查,我们写了完善的单元测试,它值得写,并且实现了大部分相同的目标。从它过去的5年发展来看,Python会继续向着好的方向发展。

所以,我们对于这个选择感到非常开心。虽然其中有一些小的分歧,但是之前使用其他语言的早期的员工非常高兴的过渡到了Python,特别是之前使用PHP的。自从下面这些事情开始发生:

Python2.6是一个转折点,它有了足够多的库进行兼容,我们很容易过渡到它

Tornado(web框架)被发布为开源,我们把实时更新网络服务迁移到它上面

PyPy看起来最终是可用的,并且会给我们一个显著的加速

总之,这些给了我们信心,让我们相信这个语言和生态系统正向着好的方向发展。

CharlieCheever,Quora的一个创建者

给Adam的答案补充几件事情:

Python有一堆相当好的提供了良好的调试器和重载的框架(Django,Pylons和其他一些),这些大部分都被很好的支持并且也变得越来越好。由于我们的主要工作是建设网站,这是很有吸引力的。

Python数据机构很好的匹配JS数据结构,所以处理浏览器和服务器之间的数据非常直接和简单。这真是太好了,因为Quora中涉及到大量的客户端和服务端之间的不加载页面的交互。

Python代码往往可读性很强,因为我们希望能在网站上和一帮人工作,这变得非常重要。

有很多其他的Python写的库,所以很容易在我们的代码中引入一些东西,比如:自定义邮件服务器、任务队列,等等。

Ruby是另一个我认为比较合理的选择,因为它和Python有很多相同的优点,但是Adam和我都对Python了解的更多一点。

 

  Python培训Python学习,就选光环大数据Python培训机构


大数据培训、人工智能培训、Python培训、大数据培训机构、大数据培训班、数据分析培训、大数据可视化培训,就选光环大数据!光环大数据,聘请专业的大数据领域知名讲师,确保教学的整体质量与教学水准。讲师团及时掌握时代潮流技术,将前沿技能融入教学中,确保学生所学知识顺应时代所需。通过深入浅出、通俗易懂的教学方式,指导学生更快的掌握技能知识,成就上万个高薪就业学子。 更多问题咨询,欢迎点击------>>>>在线客服

你可能也喜欢这些

在线客服咨询

领取资料

X
立即免费领取

请准确填写您的信息

点击领取
#第三方统计代码(模版变量) '); })();
'); })();