工欲善其事,必先利其器,那些年程序猿用过的经典工具

选择一款好用的工具,能大大提高开发效率。

文件对比

  1. Beyond Compare
    快速实现文件夹或文件的对比,并用不同的颜色区分对比结果,专业版还具备合并与同步等功能。适合大型的工程文件对比,比如linux内核工程的对比等。
  2. Winmerge
    Winmerge只适合于Windows平台,它是一款开源的文件夹及文件对比工具,功能也很强大。

数据库管理

  1. Navicat
    功能强大的一款数据库管理工具,可以多重连接,一个应用可连接多达6种数据库,包括MySQL、MariaDB、SQL Server、 Oracle、PostgreSQL、SQLite等,并且兼容云数据库。
  2. DB Browser for SQLite
    嵌入式开发用的最多的数据库还是SQLite,DB Browser for SQLite是一款开源的、专门用于SQlite数据库管理工具,轻型便捷、非常易用。

代码编辑

  1. Notepad++
    一款开源的文本编辑工具,不仅支持文本更适合代码编辑。支持语法高亮、代码折叠且支持多种编程语言C/C++、JAVA、C#、XML、PHP、Python等等。
  2. Source Insight
    便捷好用的一款代码查看、编辑工具,几乎支持所有编程语言,语法高亮、支持跳转等。
  3. Vim
    linux平台下强大的代码编辑工具,支持很多插件,配置好插件完全可替代常用的IDE

文本编辑

  1. MarkdownPad
    Windows平台最好用的一款Markdown编辑器,高效便捷、实时撰写实时预览,非常适合撰写博客文章。
  2. Md2All
    一款在线Markdown排版利器,支持一键排版的样式模板选择,支持自定义css,支持80多种代码高亮。能让Markdown内容,无需作任何调整就能同时在微信公众号、博客园、掘金、知乎、csdn、51cto、wordpress、hexo等平台正确显示当前预览的效果,并能生成相应的Html文档。
  3. pandoc
    一款开源的文件格式转换工具,支持大多数文件格式,常用于将markdown格式文章转换为pdf格式

本地搜索

  1. Everything
    被称为最强文件搜索工具,界面美观、免费、高效便捷。

随记

  1. 有道云笔记
    随时记录你想到的,在需要时快速提取事半功倍,多平台快速同步,非常适合快节奏的互联网时代。采用增量式同步技术,每次只同步修改的内容,支持多种附件格式。

数学公式

  1. LaTex WinEdt
    论文撰写不可避免的会涉及到数学公式,支持LaTex数学公式的编辑器也很多,windows平台可尝试这款LaTex官方数学公式软件。它包含TexMaker以及WinEdt两款编辑器,强烈推荐WinEdt,功能强大、简单易用。
  2. quicklatex online
    如果单纯的编辑数学公式,可以尝试这个在线的LaTex工具,它可以生成图片,且可以将图片地址链接到你的博客或公众号中,对于公众号不支持数学公式是个不错的方案,官方网址 http://quicklatex.com

公式计算器

  1. wolframalpha online
    在线公式计算、求解方程、复杂的矩阵运算都不在话下,官网http://www.wolframalpha。

虚拟机

  1. VMware Workstation
    功能强大,同一个桌面下运行不用的操作系统。
  2. VirtualBox
    一款开源的轻型虚拟机,简单易用,但不如VMware Workstation功能全面。

图片处理

  1. photoshop
  2. ACDSee

音视频

  1. screenToGif
    可以录制屏幕视频,并生成gif动画,而且可以进行动画编辑,尺寸改变、添加水印、减少帧数等。
  2. OBS Studio
    一款开源免费的实时流媒体录播软件,可实现录屏。
    3.Audacity
    开源免费跨平台的音频制作软件,简单易用。

软件打包

  1. Dependency Walker
    Dependency Walker可查看写好的应用程序的依赖文件,并生成依赖树,为后续的程序打包做准备。
  2. Enigma Virtual Box
    写完的程序要发行,包含很多dll文件怎么办,这款软件可以将写好的应用程序及其依赖组件打包成一个可执行文件。
  3. NIS Edit
    这个软件可以将要发布的程序制作成可安装的程序,需要两个软件,一个NISedit一个HMNISEdit。

Image制作

  1. UltraISO
    经典光盘映像制作工具,可以直接编辑ISO文件,并且可以从ISO中提取文件和目录,也可以制作启动U盘。
  2. Win32DiskImager
    嵌入式开发中你肯定用过该工具,用于将镜像写入到U盘或SD卡,功能强大简单易用。

版本管理

  1. Git&Github
    开源的版本控制管理系统,高效的管理开发项目,几个命令就可以实现代码的维护、管理、更新等。

可视化编程

  1. Processing
    既是一门编程语言,也是一款简单易用的集成开发环境。主要用于数据可视化编程、互动艺术编程等,甚至可以编写游戏。大家可以在这个网站上看到很多优美的processing实现的案例,https://www.openprocessing.org。这里贴一个网友使用 Processing编写的FFT的例子:

终端

  1. puTTY
    远程登录工具,主要用于linux的远程管理,支持SSH Telnet,也可以作为串口终端使用。
  2. VNC
    支持图形化远程管理,功能强大。如果服务器没有显示器,使用VNC是一个不错的选择。

集成开发环境

  1. QtCreator
    跨平台GUI集成开发环境。
  2. AndroidStudio
    Android APP集成开发环境。
  3. PyCharm
    Python集成开发环境。

磁盘管理

  1. Acronis Disk Director
    用过很多磁盘管理,这是最好用的一款。

数学分析

  1. Matlab

网络

  1. FreeIPScanner
    局域网Ip扫描工具
  2. Wireshark
    经典的网络数据包分析工具,可详细的提供数据包信息以及网络上层协议信息。
  3. Capsa Packet Sniffer
    以太网包探测工具,用于网络故障分析,实时监测网络数据,透视网络动态。

VPN

免费的没有太好用的,国内用lantern的较多,如果主要是资料浏览、查阅可以选择Chrome的插件vpnso。

翻译

  1. Lingoes
  2. Bing
您的支持是我原创的动力