# 推荐几个值得测试同学使用的免费开源软件




今天给大家推荐几个开源免费软件，这些软件可能会对大家的工作和生活带来一定的便利性。


### 截图软件Flameshot

提bug的时候好的截图胜过千言万语。

截图还在用qq/微信或者是系统自带的截图快捷键？没什么大问题，不过这款名为Flameshot的良心软件其实更胜一筹。

Flameshot非常好用，看一下动图就明白了。

![](https://github.com/flameshot-org/flameshot-org.github.io/blob/master/docs/media/animatedUsage.gif)

基本上qq微信自带的功能都有，关键是开源免费，除了界面有点像紫药水，基本上是没有槽点了。

在windows上可以用flameshot来替换系统的print screen键，当然这款软件基本上是windows良心软件推荐榜的常客，大家应该不会陌生。

然而Flameshot的0.9版本之后也加入了对mac的官方支持，这也让我的在mac上的截图体验提升了一个档次。说来也惭愧，之前mac上截图加标注我基本是用微信来完成的。

相比于其他截图软件，flameshot的优势有

* 支持windows/linux/mac
* 支持丰富的快截图
* 提供丰富的配置选项
* 支持命令行启动及丰富的选项

所以对于专业截图而言，flameshot是一个很好的选择。

### 源码可视化软件Sourcetrail

读源码，特别是你不熟悉的源码往往是一种不太好的体验。

Sourcetrail就是提升阅读源码体验的工具，它大概长这个样子

![](https://www.sourcetrail.com/assets/frontend/concept-e2621a44d7d8341761d1d8ec334b536a9d6f97ea28372c299ee38f1df81e9c1d.png)

整个界面分为

* 源码区
* 图形化区域
* 搜索区

该软件可以分析源码并生成调用关系图，可以使我们在读源码的时候可以比较清晰的抓住代码的主干以及快速找到变量或者函数的定义和引用，提升源码阅读的效率。

sourcetrail的核心特性有

* 生成辅助图，可以大致看一下调用关系
* 支持c/c++/java/python
* 开源免费
* 支持一些主流的编辑器，比如atom

对于一些复杂的开源项目，借助这个工具还是能有不错的阅读体验的。

当然，读源码的核心还是在一行一行读代码，图只是辅助工具，这个工具只能让你在源码间跳来跳去的效率有提升，并不能化腐朽为神奇，让你理解你本不知道的东西。

![](https://www.sourcetrail.com/assets/frontend/step-by-step/3-graph-dbc55d668ea753c990c5b54191143f479c8778844ef38d5628c3737217ae3764.png)

### 背单词工具anki

因为工作关系，经常需要背一些单词，之前试过很多的背单词软件总难以坚持，最终都是草草了事，从下载到放弃。

anki是我使用比较多的背单词工具，它的设计理念其实很简单，就是flash card 单词卡，通过多轮的复习，从而让我们战胜遗忘曲线，达到记忆的目的。

anki跟主流的背单词工具最大的不同是：anki的单词卡需要自己创建(当然你也可以导入别人整理好的卡片，不过别人的卡片不一定适合你)，这是需要投入极大的精力的。

如果创建卡片是输入而背单词是输出的话，那么显然anki的输入门槛是很高的，这也是很多人放弃的最主要原因。

anki基本上支持全平台，我一般使用anki的电脑端来创建单词卡片，然后在手机上通过anki客户端来进行复习。

anki的android版本是免费的，ios版本收费。

anki的使用教程太多了，这里就不展开了，不过就我个人的使用情况来看，如果想坚持记忆下去，那么是有一些技巧是值得了解的。

* 在电脑端创建卡片以提升效率，尽量不要花费太多时间去创建精良的卡片，毕竟人们总是喜欢做容易的事情
* 每个卡片的内容尽量少，不要一张卡片满满的干货，这样复习一张卡片需要很长时间，复习时很有挫败感，容易让人放弃
* 卡片可以多一点，内容精简一些，一分钟刷n张卡片的快感会让你欲罢不能
* 碎片时间去刷，我手机上没有今日头条之类的资讯app，所以零碎时间可以拿去刷单词，还是那句话，时间总是可以挤出来的






原始封面

![课程图片](https://images.unsplash.com/photo-1484591974057-265bb767ef71?w=300)


