api程序 如何编写_API,而非应用程序:每个人都可以编写代码时的未来会是什么样...

api程序 如何编写

几十年前,如果您每天都和朋友一起在聊天室里度过,那您真是个书呆子。 今天,如果您做同样的事情,您只是Facebook的普通用户。 因此,毫不奇怪的是,学习编码运动中就有淘金热的心态。 随着科技行业的蓬勃发展及其产品在我们生活中的普及,六位数的科技薪水的吸引力使很多人收拾行装,直奔西方。

就像在19世纪的淘金热中一样,很多人希望不是通过采矿来致富,而是通过装备矿工来致富。 编码学院的网站,新兵训练营和技术书籍作者(例如我自己)都提供了获得这些编码技能的方法。 我认为这些团体中的一些人从他们的产品中推动了网络财富丰富的承诺。 在获得“ 21世纪扫盲”的过程中,有很多炒作要走。

尽管有这种炒作,但我确实认为,编码将在未来几年中变得更加广泛和常规。 可编程技术将继续遍及我们的生活的各个部分,计算机将继续为更广泛的人群所用,世界将继续变得更加复杂。 了解编码(和调试)自然会随之而来。

我非常相信,我辞掉了软件开发人员的工作,全职编写编程教程。 我的最新著作《使用Python自动处理无聊的东西》 (No Starch Press)是在知识共享许可下发行的,可以在automatetheboringstuff.com上免费全文阅读。 我在本书中所采用的方法集中于编写小型实用脚本来自动执行笔记本电脑或台式PC上的任务。 所有基本的编程概念都适用于没有经验的人员,并且跳过了计算机科学。

具有代码素养并不意味着了解排序算法或面向对象的设计模式的细节。 编码可以帮助完成的任务是典型上班族将要面对的任务:

  • 阅读大量的PDF,Word文档或其他文件以查找特定信息。 ( 第十三章 )
  • 以编程方式更新许多办公室用来组织数据的Excel电子表格。 ( 第十二章 )
  • 通过复制,重命名,移动或删除文件来组织硬盘驱动器上的文件夹。 ( 第9章 )
  • Web抓取,用于从Internet上获取更新的信息。 ( 第11章 )
  • 发送自动电子邮件或短信通知,使您不必亲自检查计算机。 ( 第十六章 )
  • 基本的调试技巧,以了解如何修复代码。 ( 第10章 )

在这些领域中,非程序员可以通过学习编码来显着提高生产力。 这与成为软件工程师的每个人都不同。 当我说学习编码时 ,我并不是说要专业地开发软件 几乎每个成年人都有驾驶执照,但只有少数人是出租车司机或NASCAR赛车手。

业余程序员的涌入会否降低开发人员的需求和薪水? 我对此表示怀疑。 过去,关于开源软件也有同样的争论。 没有像Linux销毁作业这样的免费操作系统吗? 是否没有像Apache销毁作业这样的免费Web服务器? Python,Ruby,PHP,Perl和JavaScript的开源实现不会破坏工作吗? 这些都没有发生。 实际上,情况恰恰相反:开放源代码软件的可用性为技术行业创造了大量机遇。 具有编码能力的消费者也将如此。

编码作为一种生活技能

杰夫·阿特伍德(Jeff Atwood)在2012年的“编码恐怖”博客上写了一篇文章,“ 请不要学习编码” ,其中他感叹“每个人都应该学习编码”运动。 在他看来,编程应该留给专业人员,因为世界上更多的代码只是意味着更多的错误代码。 我不能不同意。 这就像说应该减少识字的人,因为更多的写作将导致更多的拼写错误的单词。 与杰夫不同,我确实将编码等同于阅读,写作和数学这样的生活技能-如果不是现在,那么将来。 Jeff的文章并没有完全说出我是在很酷之前就开始从事编码工作的 ,但是他坚持认为普遍的编码知识将是一个负面的结果。

我承认,从21世纪初的优势出发,实现普遍编程能力似乎与20世纪初实现普遍扫盲一样荒谬。 但是今天,即使在发展中国家, 识字也比不识字更为普遍 。

我认为批评家没有考虑的是通用编程技能将如何改变文化。 更多的程序员不仅意味着应用商店或现有网站的克隆中会有更多应用。 通用编码知识并不会增加Web服务的提供,而是会增加Web服务的使用方式。 编程(我的意思是能够指导计算机访问数据,对其进行组织,然后根据该数据进行决策)将不仅开放一种流行的功能,使人们可以使用更多的在线服务,而且可以要求更多。

几乎每个主要网站都有一个应用程序接口(API),这是软件的正式规范,用于检索数据和发出类似于人工导向的浏览器的请求。 Facebook , Wikipedia , Amazon , Twitter , Google和Reddit都提供API,以便其用户可以自动化与网站的交互。 绝大多数用户不使用这些API,甚至不知道API是什么,因为编程是他们留给专业人员的。 但是,当编码变得普遍时,人们期望的不仅仅是浏览器,而且可以访问网站。

API,而非应用

这是一个需要API而不是应用程序的世界。 仅限于应用商店的选择将是不够的。 并非每个人都将制作自己的Facebook应用程序,但是每个人都将对Facebook数据库和服务有自己的需求。 仅凭Facebook网站提供的内容还不够。 用户将希望在自己的程序中按其条件使用Web服务。

而且,如果我从读者那里学到了什么,那么实现起来就不会像大多数人想象的那么难。

非应用程序API的未来是开源运动的自然延伸。 编程不仅仅是从头编写软件或分叉现有项目。 许多用户对于可以使他们的单独工作流程受益的功能有很好的想法,但是这些产品太小众而无法考虑。 使软件的程序化界面成为人们的普遍期望打开了许多可能性。 现在存在这种形式,尽管API提供的访问通常不完整且受许可协议的负担。 这与开源精神背道而驰。

就像涉及我们物种的大多数事物一样,这个问题比技术问题更具政治性。 目前,公司和政府热衷于限制计算机的功能,而不是对其进行扩展。 维护这些带围墙的花园的动机太多了,消费者并没有要求拆除围墙。 就像Cory Doctorow所写的那样 ,在通用计算上存在着战争,其目的是通过DRM,间谍软件和专利滥用来限制所有计算机。 最高法院最近拒绝介入Oracle v。Google案 ,即使是API本身也可以被锁定在版权保护之下。

普遍具备代码素养的未来并非不可能,但我们必须选择一个社会。 学习编码不仅是业余爱好或工作效率的提高,而且是成为更具敬业精神和能力的成年人的途径。

回到
学校

本文是“ 重返校园”系列的一部分,重点介绍了面向各个级别学生的开源项目和工具。

翻译自: https://opensource.com/education/15/9/apis-not-apps

api程序 如何编写

你可能感兴趣的:(api程序 如何编写_API,而非应用程序:每个人都可以编写代码时的未来会是什么样...)