课题组常用工具推荐

By 小穷博士

前言

公欲利其事,必先利其器。对于我们这个课题组,经常需要编程序进行软件开发,因此选择一些趁手的工具是必须的。所以这里我挑选了一些常用的工具软件给大家,请大家在日常工作和科研活动中坚持使用,不断学习,提高自己的业务水平。

这些工具软件大概分为以下类别:Linux操作系统,编程语言,编程环境,UML建模工具,效率工具,写作工具,版本管理工具等。下面开始详细介绍,在介绍每一款工具的时候,我会给出工具软件的具体名称,下载地址,推荐理由和推荐级别。推荐级别一般分为必装,强烈推荐,试用等三个等级。一般来说必装的,是要求大家都要安装并且使用的。

Linux操作系统

这里说Linux操作系统当然不是说编程序只能用Linux或者说Linux是程序员最好的操作系统,尽管我自己是这么认为的。但是大多数人还是认为MacBook才是程序员应该用的计算机。但是显然这个不符合咱们组的组情,毕竟能用的起MacBook的人还是少数。所以,还是说说Linux吧。另外,咱们这个组做的东西无非就是网络计算和计算机视觉,而Linux毫无疑问是最佳平台,所以第一个推荐的就是Linux操作系统。在这一部分我推荐两个系统,分别是Arch Linux和Ubuntu。其中前者是给配置比较低的电脑准备的,后者是给主流电脑准备的。

1 Arch Linux

最近我一直在用Arch Linux,以前我一直以为Arch Linux用起来会很烦,有点像LFS那样,后来实际使用了才发现,Arch Linux使用起来真是太简单了。因为它有wiki.archlinux.org这个强大的知识库在后面支撑的,有什么不懂的,立刻就能找到答案,不但让你会用,还能让你知道为什么这样用。是学习linux的最好的系统。

Arch Linux

名称:Arch Linux
下载地址http://www.archlinux.org
推荐等级:必装
推荐理由:轻量级的Linux,适合绝大多数电脑,具有丰富的知识库(wiki.archlinux.org),运行速度快,支持硬件多,高可定制,适合有志学习Linux的人。

2 Ubuntu

Ubuntu是一款非常成熟的,在业界拥有相对知名度的Linux发行版本,易用性强是它的最大优点,使用者众多,好处是有了什么问题非常容易找到解决办法,而且很多的软件都为Ubuntu专门制作了发行包,而且学术界似乎也比较偏爱Ubuntu,很多机器视觉的算法都是在这个平台上编译运行的。不足之处就是发行版本比较臃肿,也略微耗费些资源,不过这都是在一般计算机硬件配置的承受范围之内。

名称:Ubuntu
下载地址http://www.ubuntu.com
推荐等级:必装
推荐理由:发行量大,用户多,运行平台广,对初学者友好,图形界面使用方便,各种功能比较齐备。适合初学Linux并且不准备在Linux上太折腾的同学。

编程语言

既然主要业务是编程,那么编程语言这里似乎没有必要推荐了,因为有的时候使用什么编程语言往往不取决于自身好恶而是项目的要求。但是,这里推荐的编程语言跟项目其实没什么关系,因为作为程序员,没事的时候也应该写点程序自娱自乐一下,所以在语言上自己还是有发言权的。而且从科学研究的角度来看,确实有一些语言是必须要掌握的,所以这里列出了几种语言,我认为大家应该掌握,但是不强求。

3 Java

这里推荐安装Java编程环境,不但是因为Java在网络编程和软件工程方面的优势,更重要的是后面推荐的很多工具本身是基于Java的,所以安装一个JDK(或者至少你得装个JRE吧)是很有必要的。

名称:Java Development Kit (Java Runtime Environment)
下载地址http://java.oracle.com
推荐等级:强烈推荐
推荐理由:非常健全的生态环境,能够胜任从服务器到嵌入式系统的全栈开发,应用范围广,语言对软件工程的支持度高,就业市场好。
替代工具:openJDK,可以直接利用Linux发行版本软件管理工具在线安装,例如:pacman -S openjdk 或者 apt-get install openjdk

4 Python

Python这个大家都知道了吧,绝对是科研利器,必须得装,不装不行。建议大家安装python2,当然你可以2,3都装,一般情况下也是没什么问题的。另外在安装python的同时把pip和其他的python包也装上,这里就不赘述,有机会另外撰文说明。

名称:Python 2.7
下载地址https://www.python.org/ (推荐利用包管理工具在线安装)
推荐等级:必装
推荐理由:科研利器,配合openCV是研究计算机视觉的必备套装。同时也是平时写写小程序首选工具,特别是在Bash编程方面还不够纯熟的情况下。另外,跨平台,支持包众多,丰富的学习资源等都是使用它的理由。

5 Go语言

Go语言现在还不是很流行,但是应该是网络计算的首选语言,希望从事网络计算方面的同学能够抽时间学习一下。这个语言本身不是很难学,有项目的情况下稍微实践一下,应该能够比较快的掌握。

名称:Go语言
下载地址http://golangtc.com/
推荐等级:推荐试用
推荐理由:Google出品,可以编译为本地代码,语言本身跨平台(类似C语言),语言本身支持并发且效率高,编码效率高(就是实现同样的功能Go语言所需要敲击键盘的次数最少),适合服务器上程序开发,号称网络时代的C语言。对于Linux操作系统可以直接利用pacman或者apt-get进行安装。

编程环境

编程环境就是用来实际进行软件开发的IDE(Integrated Development Environment),一般的语言都有约定俗成的开发环境,不过这里还是列出我推荐的IDE。注意,编程环境是一个很大的话题,而且很多程序员都有自己的编程哲学,所以我的要求是推荐大家使用,但不强求。

6 Eclipse

Eclipse是Java首选开发环境,当然它同时也可以用于其他语言的开发(包括上面提到的Python和GO),所以第一个推荐的,就是它。

名称: Eclipse
下载地址http://www.eclipse.org
推荐等级:强烈推荐
推荐理由:功能实在是太强大了,没有语言可以形容。略微占用资源。

7 VIM

VIM是Linux上的一款编辑器(其实Win上也有,叫GVIM),这款编辑器我也是无力吐槽,只知道它被称之为用的编辑器。关于它的推荐,大家可以百度之,爱的爱死,恨的恨死。但是,我要说的是,功能实在是太强大了。与其说是用的编辑器,不如说是开发出来的这款编辑器。与此类似的还有Emacs,但光学VIM就已经耗费了我许多的时光,实在是没精力再去折腾Emacs。VIM和Emacs都是神器,它们的信徒门为了争夺第一神器的称号经常在各大论坛掀起一阵阵的血雨腥风。我最早接触的就是VIM,所以我一直坚持着用它。推荐大家也用它,我觉得要相对比较容易入手一些吧。

名称:GVim,VIM
下载地址http://www.vim.org/
推荐等级:推荐试用
推荐理由用的编辑器,通过插件可以扩展无数功能出来,可以定制各种功能,只有想不到,没有做不到。

UML建模工具

这里的软件工程工具主要是建模工具,总体而言我们的代码量比起公司来说要少的多,因此很多的软件工程工具这里就不放进来了,但是建模是必须的,所以这里就放一类软件建模的工具,也就是UML建模工具。

8 Astah Community

Astah Community是Change Version Inc的产品,好像以前不叫这个名字的,不过不用去操心这个问题了,我们只需要知道这是一个UML的建模工具,而且是社区版的(即免费的),当然它有商业版本功能更强,但是我们没钱去买,对于学生它有免费的学生License可以去索取。但我觉得其实社区版已经够用了。商业版我唯一喜欢的功能是能够导出无损的图形格式,这样方便插入到论文里去不会损失精度,否则只能导出PNG格式的图片,而且还有水印。如果大家不知道什么是UML建模工具,我也不能帮助大家,大家自行百度或者有时间另外撰文介绍吧。其实正宗的UML建模工具应该是Rational Rose,但是这个没有免费版,网上虽然有破解版下载,但是作为一个软件从业人员,版权意识一定要有,所以我不用Rose。

名称:Astah Community
下载地址http://astah.net/editions/community
推荐等级:必装
推荐理由:UML建模工具,经过我多年寻找比较目前比较满意的一个软件,软件基于Java因此必须安装Java运行环境才能执行。

版本控制软件

版本控制对编程人员来说是必不可少的,一定要有。当然版本控制软件很多,这里给大家推荐git。

9 Git

Git可以单机使用,也可以使用服务器,对于科研来说,很多作者会把它的代码放到git服务器上,因此必须要使用git工具将其clone到自己的机器上来才能使用。所以这个工具也是我们组每位同学都必须要会使用的软件。关于Git如何使用,会另外再开辟文章进行说明,大家也可以在网上搜索教程,很多的。

名称:Git
下载地址:被墙,大家自己百度,Linux系统可以直接使用包管理工具在线安装
推荐等级:必装
推荐理由:大家都用,你呢?

效率工具

这里的效率工具主要是指帮助大家理清思绪的工具软件,不包括常见的记事本,日历,待办列表什么的。这里指的主要就是思维导图,这里的软件都是推荐大家试用的。思维导图是利用图形结构的方式,帮助你整理自己的思绪,找出困扰你的线索,或者安排你的任务工作等,任何需要动脑子的地方,都可以考虑用思维导图来进行辅助。

10 Freemind

FreeMind是一款免费的思维导图软件,本身是基于Java的,因此是跨平台的,同时又是开源的,使用也比较方便。但是能够使用的导图不是很多,而且近些年来的版本感觉在自动布局上怪怪的,虽然说不上什么不好,但是感觉使用不是很舒服,但是总体而言还是一款比较优秀的思维辅助软件。

名称:FreeMind
下载地址:(自行百度,SourceForge经常被封或者上不去)
推荐等级:推荐试用
推荐理由:使用方便,添加对象比较顺手,其他一般,主要感觉免费的mind mapping tools 太少了。

11 XMind

XMind是另一款思维导图软件,和FreeMind不同的是,这个软件不是开源的,而且做了封装(里子是Java,然后封装成本地代码),但是也是跨平台,支持主流平台。在Linux系统中往往可以直接利用包管理软件在线安装(例如pacman -S xmind)。XMind的界面比较漂亮,使用感觉还行,很多功能要收费。

名称:XMind
下载地址http://www.xmind.net/
推荐等级:推荐试用
推荐理由:使用方便,界面比较好看,其他还行,主要感觉免费的mind mapping tools 太少了。

写作工具

写作工具就是写文章的工具软件了。写文章有两种方式,一种是优雅的写文章,一种是高效的写文章,这里推荐两种风格的写法。当然,你尽可以使用WPS或者MS Office等软件。这里推荐的显然不是这两者。这种是所见即所得(WYSIWYG)的写作软件,适合办公用。要是用于出版等目的的话,显然要差一些。

12 Markdown

MarkDown是那种可以优雅的写作的工具。其实这不算是个软件,应该说是一种规范,有很多软件已经实现了它。但是目前应用最广泛的还是在线写作网站。比方说《简书》《作业部落》。有一种说法是文科生用简书,理科生用作业部落。非在线的Markdown软件还没找到在各个平台通用的,先凑合用在线版的吧。

名称:简书/作业部落
下载地址http://www.jianshu.com/, http://www.zybuluo.com
推荐等级:推荐试用
推荐理由:可以快速撰写适合在线看的文章,论文等。熟练应用可以快速让自己的Biger越来越大。

最近发现了另外一个功能比较强大的离线编辑和查看MD文件的程序:Typora 。字体优美,可以输入表格和公式,另外可以输出HTML和PDF格式。

13 Latex

Latex是专业的学术排版工具软件,可以帮你生成漂亮的令人发指的学术论文。另外就是输入公式极其方便。

名称:TexLive
下载地址http://tug.org/texlive/
推荐等级:推荐试用
推荐理由:科技论文撰写利器。不要嫌大,硬盘那么大,与其浪费着,不如用来装一些有意义的东西。当然能用到的确实就只有那么一点点,如果实在不想全装,它可以选择安装,可以只装XeLatex,我用过,对中文支持比较好。虽然我写中文论文一般不会用Latex(杂志社只认Office)。

结语

这里列出了我认为对大家工作学习有作用的一些软件,希望大家能够去一一试用一下,能够写出这样的软件,创作者必然是牛人,我们在使用他们软件的同时,也能够感受到作者的一些哲学思想,开阔思路和眼界。其它的软件,有些是课题研究中必用的,这里反而就不说了,因为那是不得不用的软件,放在这讲了也没什么意思。就像机械专业的CAD软件,电子专业的Eda软件等。各位同学风华正茂,将来是要开辟一片天地的,因此眼界和思路对你们的作用远大于学习一些具体的技能和知识。计算机科学,信息技术是这个科技时代的潮流,优秀的软件不但能够帮助我们提高效率,还能够让我们更多的了解这个时代的发展和趋势。希望大家一定要抱有开放的头脑,不要辜负这个时代。

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 201,681评论 5 474
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 84,710评论 2 377
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 148,623评论 0 334
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 54,202评论 1 272
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 63,232评论 5 363
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 48,368评论 1 281
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 37,795评论 3 393
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 36,461评论 0 256
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 40,647评论 1 295
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 35,476评论 2 317
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 37,525评论 1 329
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 33,226评论 3 318
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 38,785评论 3 303
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 29,857评论 0 19
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 31,090评论 1 258
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 42,647评论 2 348
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 42,215评论 2 341

推荐阅读更多精彩内容