什么是API

今天看了一篇博客,关于什么是API看完之后还是有很多的感触的。先说说此时此刻的感触。刚才我在看WebSocket API,提到我们可以利用JavaScript调用标准文档中的The WebSocket API来控制全双工通信。突然就联想到,这个API就是一个door或者window,是实现WebSocket功能的一个入口。联想到博客中看到的一句话,原话肯定是记不住了,翻译过来的意思是说。API是获取一些web服务数据的入口,又联想到之前看过的文章说,我们不可能去了解对方的代码是怎么写出来的,那太复杂了,但是我们又想借用对方的数据,怎么办,好在对方提供了一些入口,方便让我们获取数据。也就是说我们面对的是一个封装得非常好的数据功能体,我们不需要弄明白它们的原理,只要能找准他们提供给我们的入口就可以了。对只要找准入口就可以了。再说几句题外话,现在很多web服务已经在限制第三方对其API的使用了,甚至都有关闭的了。主要是出于利益的考虑啊。提供API就像在做好事,尤其当你还是免费提供的时候。

好像扯得有点远了,本来是要说WebSocket的API的。我主要是想类比说明,WebSocket就是那个我们不需要搞清楚内部机制,只管找准入口,然后充分利用其中的数据的一个对象类型。

好像又总结出了一点有意思的东西:这个世界有很多的仓库,我们不知道这些仓库是怎么建立起来的,其中有着怎样的复杂构造,但是可以肯定的是,如果这些仓库提供了一些入口,我们就能通过这些入口获得我们需要的资源。

另外,对API和插件有了一些对比理解的困惑。因为想到了web插件,感觉也是在利用现成的东西,为什么不叫做API呢?本质还是差别很大的啊。web插件的制作中有可能会用到API,但是API中肯定不包括插件。可以把插件看做补充功能体,如果你的web中缺少某些功能,就可以考虑使用插件来补充这种功能。但是API也是获取一些web服务的数据,目的在于利用现成的资源,而不是去实现功能。在于获取数据,或许资源。所以这样看话,你就会知道API可以是插件开发的一部分,因为只有获得自己所需要的数据以后,才能实现需要的效果。

然后,我就越大觉得程序的世界,计算机的世界,最重要的还是数据。所以,我也就能进一步延伸理解,一切程序其实就是对数据的操作。不是有句话叫算法+数据结构=程序设计吗?数据是核心,算法是对数据的操作,两者结合,就是程序设计。所以,所有的编程语言的最终目的是操作数据,当然是各种各样的数据。我们不是经常说访问属性获得数据,设置某属性的属性值等常见阐述,就是揭示了这一计算机世界的万宗之本,其实也是这个世界的本质。

又回到之前的思考:信息是客观存在。也很好理解了。我们平日里和别人交流,看书,上班,不都是在进行信息的传播和交流吗?甚至吃饭,睡觉也是一种变相的信息存储与释放。信息化的世界,也许有一天我们会发现自己可能只是某个星球所播放的一部电视剧,真正就是数据信息化了的人生了啊。

本文来自企鹅号 - 永远十八点八岁媒体

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏知晓程序

小程序可以「跳转网页」了!

打开「微信棋牌群排行」小程序,点击顶部的游戏 LOGO,小程序就会直接跳转到相应的游戏下载页面。

902
来自专栏腾讯社交用户体验设计

顺势而为,HTML发展与UI组件设计进化 - 腾讯ISUX

1327
来自专栏ThoughtWorks

TW洞见 | 刘冉:QA应该更新的测试工具

作为一名QA,过去一年是我的软件质量知识体系和自动化测试知识体系收获最丰的一年,让我对于软件质量和自动化测试有了一个更高层次的认识。所以我写下了一些自己更新了的...

3577
来自专栏非著名程序员

程序员:分享几个好玩的东东(上)

932
来自专栏成猿之路

一些能大幅提高你工作效率的工具和网站

1515
来自专栏Android群英传

开源指南

872
来自专栏Winter漫聊技术

浅谈UI与前端:现状及展望

向来以审美自居的我自然少不了谈谈UI设计。虽说从未从事过UI相关工作,但着实接触了许多UI相关的东西,并且考虑下份工作从事设计。

823
来自专栏张善友的专栏

微软开放.NET框架源代码和Mono

微软一直在朝着更加开放的方向努力。例如,公司首席执行官萨特亚纳德拉(Satya Nadella)在Windows 10预览发布会上声称微软喜欢Linux,这并不...

1736
来自专栏非著名程序员

微信团队的又一开源力作,让设计师和开发者更佳高效的使用 Sketch

最近国内大的互联网公司在开源的世界磨刀霍霍,一时间江湖上传言四起,大家要在开源的世界中华山论剑,看看哪家的互联网公司技术更加强大。我们大家作为IT江湖中的一份子...

2117
来自专栏互联网数据官iCDO

Apple Store A/B测试真的难吗?一招教你学会大多数人都不会的本领!

作者:吕东昊 审校:Sarah 本文长度为2343字,预估阅读时间7分钟。 导读:本文作者将向大家介绍A/B测试的方法。 只要数字营销的概念依然存在,那么就需...

2828

扫码关注云+社区