你能用Python构建什么?

148 阅读8分钟

你知道是什么把Instagram、谷歌和Sunscrapers联系起来的吗?你的第一个答案可能是--在Sunscrapers,我们使用他们的服务,或者他们使用我们的服务。答案是正确的,但我们还有一个共同点,可能会让你吃惊--我们都喜欢Python编程语言。

与世界科技巨头一样,我们用这种语言开发我们和我们客户的服务。

根据今年的Stack Overflow调查,它是世界上第三大最受欢迎的编程语言。感觉这种语言从来没有失去过它的势头,而且随着越来越多的公司决定用它来建立他们的项目,它正在不断地增长。

Python最好的优势之一是多用性。你可能会发现Python被用在以下部门和领域:

  • 银行业
  • 加密货币
  • 移动应用程序
  • 云存储
  • 机器学习
  • 机器人技术

Python就在你身边。今天,我想向你展示如何在你的项目中使用和利用它,向你介绍最有趣的应用、网站和服务的例子和案例,其中Python是最佳的解决方案。

网络应用程序和网络开发

和90年代一样,在黄页上列出你的企业是必须的。如今,拥有一个精心设计的网站来展示你的业务是必须的。WordPress可能是世界上最流行的CMS,但如果你想做一些比简单的博客更安全或更先进的东西,Python是你的选择。更具体地说--Django框架。

Django对于高度可扩展的网络应用程序或受众不断增加的网站非常有效。它将自己定义为一个 "包含电池 "的框架--这意味着它已经包含了 "一切",不需要再为普通任务获取其他解决方案。有超过160个django包可以为你的项目做出贡献,比如Allauth(用于用户认证的伟大包)或django-cms(一个开源的CMS平台)。核心框架有大部分所需的工具和库,因此开发者可以完成广泛的项目。它允许开发人员专注于编码和写作,而不是重新发明车轮。

用Django建立的前3个网站

NASA

天空不再是极限了。航天局的网站可能不是互联网上最受欢迎的网站。但每个月仍有超过4200万人访问它。该网站包含高分辨率的图片和插图。当我们把这两者加在一起时,很明显,Django是最可靠、最成熟的解决方案。

华盛顿邮报

最重要的日报之一在2005年开始使用Django。用Django创建的 "美国国会投票数据库 "的应用程序可以让用户浏览自1991年以来美国国会的每一次投票。目前被称为GovTrack的也是世界上最古老的政府透明度网站之一。他们的资源库可以在Github上找到

活动网站(Eventbrite)

2006年推出的Eventbrite是一个美国活动管理和票务网站。起初,该平台使用的是内部框架。四年后,他们的工程团队开始努力向Django网络框架转移。该公司注意到了Django的直接好处,比如。

  1. 单元测试框架
  2. 数据库模型的抽象化(Django ORM)
  3. 请求中间件
  4. URL路由
  5. 表单构建

你喜欢的App的后端

在阅读这篇文章时,你可能正在使用它。一个不需要介绍的应用程序--Spotify。这个应用彻底改变了我们听音乐和消费付费内容的方式,在后台服务和数据分析中使用了Python。据Spotify的Geoff van der Meer说,Spotify的后台由许多独立的服务组成,其中80%是用Python编写的

为了处理工作流程管理和集成,Spotify有自己的Luigi(一个类似于GNU Make的Python包),其资源库可以在Github上找到。这个流媒体应用程序每天使用Luigi来运行数以千计的任务,并以复杂的依赖关系图组织。

这还不是全部,Python被这个音乐巨头用来做服务原型和构建流程:

使用Python构建的前3个应用程序

蚂蚁金服

根据Instagram的工程师团队的说法:

"Instagram目前拥有世界上最大的Django网络框架的部署,该框架完全由Python编写"。

他们的服务器是完全用Python编码的。更详细地说,Instagram的服务器包含几百万行的代码。每一天,它都会经历数百次的提交,每隔几分钟就会部署到生产中。

Uber

Uber的工程师使用Python、Node.js、Go和Java。该应用程序的业务逻辑生活在一个基于Python、MySQL和Mongo的API中。ETA的计算和数学,激增的价格,需求和供应的预测都是完全用Python完成的。

Reddit

Reddit是一个聚合了社会新闻、网络内容评级和讨论的平台。最初它是用Common Lisp构建的,但在2005年12月,开发人员决定用Python重写它,以获得更多的开发自由。

你可以在Python中构建区块链

自过去几年以来,区块链是市场上最受欢迎和期望的技术之一。开发一个区块链应用程序并不是小菜一碟。通过Python的框架和免费的区块链包,可以更有效、更容易地编写代码。要创建一个区块链,你需要满足特定的代码和语言要求。语言允许快速建立原型,同时代码是干净和可理解的。语言必须是安全、高效和可扩展的。

由于Python的语法,开发人员甚至能够在不到50行的代码中创建一个简单的区块链。Github上有很多建立在Python上的区块链资源库。你可以找到用于比特币、以太坊、恒星或EOS等区块链的Python库。

机器学习和数据科学

机器学习是一种数据分析方法--是计算机科学和人工智能的结合。机器学习的重点是利用数据从过去的经验中找到模式,并改善特定任务的执行方式。

大公司将机器学习算法应用于:

  • 推荐系统--你的社交媒体资料、Youtube或Netflix资料。
  • 人脸识别--这就是Facebook如何在你添加新照片时知道要标记哪个朋友的原因

当涉及到可视化和数据分析时,Python及其框架Matplotlib甚至在像谷歌这样的大公司都是不可替代的。

谷歌

从一开始,Python就在谷歌发挥了重要作用,这两者之间的紧密联系一直持续到现在。据一位早期的谷歌员工说,他们只要能用Python就用,只要必须用C++就用。

当谷歌在90年代末还在开发时,选择使用哪种语言是在Python和Perl之间。Perl是一种更成熟的语言,但Python从一开始就更具可读性和可维护性。另外,Python的创造者Guido van Rossum在2005-2012年间为谷歌工作。

目前,Python是该公司内部使用最多的四种语言之一。其他三种常用的编程语言是C++、Java和Go(谷歌开发的一种编程语言)。

你在哪里可以找到谷歌服务中的Python?

  • YouTube - 该平台由3名前Paypal员工于2005年创建。查德-赫尔利、史蒂夫-陈和贾维德-卡里姆。他们当时用来建立平台的语言是PHP、HTML、CSS和JavaScript。一年后,Youtube被谷歌收购。这个搜索巨头非常了解这个平台的潜力和PHP的局限性。2007年,他们开始转型,从PHP切换到Python。他们花了3年时间才完成。
  • 谷歌应用引擎
  • code.google.com
  • 开源库

世界上最大的社交网络

超过一半的Facebook基础设施的代码库是用C++编程的,但21%的代码库属于Python语言。与其他公司和行业的专家一样--Facebook的开发人员重视Python,因为它在编写和维护方面很简单。

在马克-扎克伯格的公司里,Python涉及到的技术包括:

  • 网络交换机设置和成像(TORconfig)
  • 白盒交换机CLI(FBOSS)
  • 通过Kobold的核心服务(DNS、Chef等)

总结

公司选择Python而不是其他语言的原因之一是有大量的库可用于不同类型的应用和项目。正如你所看到的,你可以用Python语言构建的东西有永无止境的可能性--从一个小的区块链,通过一个空间机构网站到世界上最大的视频平台。

Python可能是内容管理系统(CMS)、电子商务应用程序、静态网站、设计系统、银行网站等的理想选择。一切都取决于你的项目的要求、你的组织的规模和你的产品的范围。