开发者应该了解的API技术清单!

  英文原文:API-Driven Development程序员

  做为一名开发者,诚然编写代码如同做家提笔挥毫,很是有成就感与乐趣,但同时我也以为删除代码是件不相伯仲的美事。为何呢?由于在进行删除工做时,意味着本身找出了形成干扰的位置,意味着找到了冗余无用的代码,甚至是找到了能用更少代码实现相同功能的途径。代码越少,意味着出错的概率越低。redis

  个人观点是:利用好第三方 API,减小本身的代码工做量,让出错的几率尽可能下降。只有这样,咱们才能够把更多精力放到更核心的开发工做或业务逻辑思考当中去。数据库

  们没有想象中聪明api

  

  一名善于阅读和思考的程序员,想必是出众的程序员,譬如正在浏览本文的你。可是不管咱们多么优秀,一个没法避免的事实是咱们写的代码毫不可能零错误。安全

  最合理的时间利用,不是为每个项目都进行重复建设,依葫芦画瓢。更好的时间分配是咱们能持续打造更使人惊叹的应用,不断推陈出新。socket

  若是要为应用添加日志功能,Loggly 足可为咱们节省三年左右的开发时间;若是要为应用添加用户管理和身份认证模块,Stormpath 已作得足够完美。若是仍不满意,仍是以为本身才是最好,那么咱们必须为此付出额外的时间,金钱,技术,同时还得兼顾维护,安全,托管等问题。工具

  所以,若是有现成可用的一群技术大咖为咱们铺好了前进道路,咱们为何还要敬而远之舍近索远呢?充分利用 API 服务,进行有效整合,才是明智的选择。post

  效率优先性能

  

  不要把时间浪费在没必要要的环节上。咱们的目标是为客户打造最好的应用,而不是 7x24 小时地守候在计算机旁,关注程序运营中的每一个细节。测试

  此外,难道咱们的竞争对手还会本身来打造非核心的程序组成部分吗?面对紧张的竞争局面,咱们必须充分且合理地分配资源,让本身尽量地走在对手的前面。

  工具和解决方案

  如下做者整理了一个 API 服务清单,一方面但愿能让你的开发过程变得轻松,另一方面但愿能帮你节约时间,精力和努力。

  认证/受权(Authentication / Authorization

  • Stormpath把应用中有关用户管理的部分都放心交给它好了,其功能包括:安全地存储用户信息,管理用户权限,快速地进行邮箱验证和密码重置。

  分析(Analytics

  • Keen.io能完美地进行自定义分析。

  CDN

  • CloudFlare 搭载 CDN 与 DDoS 攻击保护功能!
  • Fastly使人惊叹的 CDN API,速度奇快,定制自由度高。

  CRM

  • Intercom使用简便,功能全面。

  仪表盘(Dashboards)

  • Ducksboard 界面精美,直接高效的 API,能方便地进行项目数据查阅。
  • Leftronic一样精美的设计,我的认为它对地理信息支持更好。

  数据库

  • Bonsai使用强大的 RESTful 搜索引擎 ElasticSearch。
  • Heroku Postgres最好的 PostgreSQL 托管服务。
  • MongoHQ我的喜好的 MongoDB 数据库供应者。
  • OpenRedis我会一直使用的 Redis 服务提供者,永远不会弄丢数据,可扩展能力强。

  部署/托管

  • Heroku一个不错的托管公司。
  • Flynn建造于 Docker 之上,Heroku 的有力竞争者。

  邮件

  • Sendgrid透过 API 来发送邮件,很是简单。

  日志

  • Loggly易用的日志管理工具。

  监控/调试

  • New Relic若是曾经错过它,你会发现是多么地遗憾。它能提供丰富的性能/监控信息。
  • RunScope很是有用的调试和监控 API 服务。

  支付

  • Stripe极好的信用卡相关交易处理者。
  • Coinbase最好的比特币交易服务提供者。

  实时处理

  •  Firebase强大的实时数据存储和同步 API。
  • Pusher让 Web socket 通讯变得简单。

  存储

  • Amazon S3几无对手的文件存储和文件流服务 API。

  通讯

  • OpenCNAM智能来电显示和识别。
  • Twilio易用的电话和短信平台。

  测试

  • Travis CI提供了单元和综合测试服务,包含公共免费和专项收费的服务级别。

  写在最后

  打造一款明星级产品绝非易事,而透过利用 API 服务,咱们或许能够极大地提升工做效率,拥有更多时间来思考核心业务逻辑。

相关文章
相关标签/搜索