专栏首页大愚Talk推荐三款我常备开发辅助神器

推荐三款我常备开发辅助神器

五一假期过完了,大家都去哪些地方浪了?上班第一天是不是倍感无趣?哈哈,不要紧,今天我来给大家推荐几个神器,让你明天神清气爽,这可是程序员开发必备之良品呀。


Api 与 Postman 的不离不弃

自从有了前后端的分离概念,我就一致在寻找着这样一款工具,我需要把我的接口如何使用告诉前端人员,我需要自己方便的测试api有没有问题,我需要能够自动化完整的测试一下我的接口运行流程有没有问题。当然它还是不能替代代码级别的自动化测试。

期间试过 swagger ,说实话也不错,界面也很漂亮,这是以前写过关于 swagger ui 的一篇文章,感兴趣的可以看看。当我找到 Postman 之后,就果断放弃了 swagger ,为什么呢?

swagger 我是通过注解的方式来自动生成文档,所以就导致代码里边又很多文档注释,本来代码只需要10行,结果为了注释,整个文件变成了30行,看代码的时候给人一种很不清爽的感觉; 团队作战的时候,改动很频繁,因为文档内置在代码里边,更容易出现冲突的问题;注解的格式需要额外的学习成本。

反观 Postman 是一个独立的应用,提供团队协作(需要购买);通过google帐号登陆,在任何地方登陆后可以获取到同步的数据;支持所有的http请求方法;能够自动化测试api接口;配合 Postman Interceptor chrome 浏览器插件,方便 phpstrome 进行debug。

  • 大家注意看截图,postman 的 collections 功能,方便不同模块的分类;
  • 其中标记为1圈红的地方,可以添加api的详细说明,比如干什么的,字段含义;
  • 标记2的地方,保存了各种情况的返回结果,可以不需要网络就查看各种情况的返回数据;
  • 标记3的地方,可以配置各种环境变量,方便切换。

我这里配置了常用的:dev:开发环境,test:测试环境,prod:线上环境。

postman如果团队开发需要购买,才能方便的同步看到更新的信息。价格还挺贵,我们小公司没钱,我用了一个偷懒的办法:share link 方法。

同类的工具还有 atom,不过没怎么用过,大家可以比较下。

charles 在我眼前没有秘密

程序员喜欢把自己的东西加密加密再加密,而面对别人的东西,总喜欢能够看的一清二楚,然后从中学习一些经验。

比如通过观察别人的app请求流程,可以看一下返回什么样的数据?一些基本的参数有哪些?有些接口如何组织请求流程等。

要完成上面的任务, charles 真的是不二之选。

截图我是监控到的某电商的请求数据,左边部分显示的是请求接口,右边是响应的结果。

我就通过这款工具学习过如何对api进行版本维护,如何有效组织首页数据的返回(到底是一个接口搞定所有还是多个接口,前端多次调用?)

当然上面仅仅是它的一个作用。另外一个效果就是,自己的应用出了问题,可以方便的通过它看到请求的数据,以此来进行一些判断,修复bug。特别是强烈推荐测试人员使用,有很多bug是有前后的因果关系,需要看到数据开发人员更容易进行修正。

如果想要查看 https 请求的数据,需要安装ssl证书到设备上,大家到官网看一下就知道。

图片压缩,我用 tinypng

今天推荐的最后一个工具tinypng。我之前再博客也推荐过 google 新的图片压缩算法 guetzli,这个算法真的非常牛逼。但是目前没有好用的客户端,只有命令行。

关于它没有太多的说的,就是压缩图片嘛。支持批量,压缩比率高,效果强。就是好用,把它分享给你的ui妹子,她会对你喜笑颜开。

下载地址:https://github.com/kyleduo/TinyPNG4Mac

额外赠品

最后推荐一个集成第三方支付的开源项目:https://github.com/helei112g/payment

目前已经集成:支付宝支付、微信支付、招商一网通支付。如果你在开发中被各个第三方支付提供的demo搞得焦头烂额,我相信它能够帮助到你。


本文写作时间:3小时(这效率……我也是醉了!)

本文分享自微信公众号 - 大愚Talk(dayuTalk),作者:何磊

原文出处及转载信息见文内详细说明,如有侵权,请联系 yunjia_community@tencent.com 删除。

原始发表时间:2017-05-02

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

我来说两句

0 条评论
登录 后参与评论

相关文章

  • 后端开发者从零做一个移动应用(后端篇)

    前端页面由(Vue + Vux + Vuex + Vue-Router)打造。我的gif太大了,微信传不上来。

    大愚
  • Golang技巧之默认值的设置

    我们在日常写方法的时候,希望给某个字段设置一个默认值,不需要定制化的场景就不传这个参数,但是 Golang 却没有提供像 PHP、Python 这种动态语言设置...

    大愚
  • 走进Golang之Channel的数据结构

    上篇文章讲了 channel 的基本使用,讲了一些使用时需要注意的事项,本文将重点介绍 channel 中的两个数据结构:循环队列 与 双端链表 。

    大愚
  • Android 优化——网络优化

    七适散人
  • 文加图, 理解Http请求与响应

    在讲解OkHttp之前, 我们首先来个高清大图, 看下http请求的整个步骤, 有个整体概念.

    望天
  • 秒杀系统架构优化思路

    《秒杀系统架构优化思路》 上周参加Qcon,有个兄弟分享秒杀系统的优化,其观点有些赞同,大部分观点却并不同意,结合自己的经验,谈谈自己的一些看法。 一、为什么难...

    架构师之路
  • 在程序设计中使用Interface

    在PHP和Java中都有Interface的概念,刚接触开发时大家都知道在面向对象中Interface负责定义一些抽象方法来抽象和界定类对象的行为,更有一个“鸭...

    KevinYan
  • 21.SpringCloud实战项目-后台题目类型功能(网关、跨域、路由问题一文搞定)

    用renren-generator自动生成前端代码,可以参考这篇:13.SpringCloud实战项目-自动生成前后端代码

    Jackson0714
  • RestTemplate的使用和原理你都烂熟于胸了吗?【享学Spring MVC】

    版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。

    YourBatman
  • 推荐一款基于web的Unix系统管理工具webmin

        webmin不仅提供了基于web的系统管理方式,同时它还支持多机集群系统管理配置。

    党志强

扫码关注云+社区

领取腾讯云代金券