打造程序员的高效生产力工具-mac篇

1   概述

古语有云:“工欲善其事,必先利其器” [1] ,作为一个程序员,他最重要的生产资源是脑力知识,最重要的生产工具是什么?电脑。

在进行重要的脑力成果输出前,有必要先“利其器”,为自己打造一台专门为程序员而生的电脑生产平台。以保证自己高效地工作和产出。

本系统的主要适用群体为互联网行业的开发人员和环境配置指导,主要目的是让Mac成为程序员的重要的智力成果输出工具。

2   开发环境

对于软件开发人员来说,基本上绝大多数的IDE都有主流平台(Windows/Mac/Linux)的解决方案,下面只陈列出来的都是有免费可用的版本(不用破解或者盗版)。

  • Java开发:Eclipse [2]
  • 前端开发:WebStorm [3]
  • Python开发:Pycharm [4]
  • 前端调试:Chrome [5]、Firefox [6]
  • Mongodbo数据库客户端:Robomongo [7]
  • Android开发:Android Studio [8]
  • 思维导图工具:Xmind [9]

基本上可以这么说:除非一些针对具体的平台做本地化底层开发外,MAC基本上可以胜任各种应用程序的开发。这一点,在设计领域也是一样的。基本上Win下有解决方案的,在Mac下也会有相同的解决方案。

3   文档写作

传统的办公套件:

  • Microsoft Office
    • Word
    • Excel
    • PowerPoint

  • Mac Office
    • Pages
    • Numbers
    • KeyNote

但是以上工具可能并不适合开发人员,开发人员的实力完全有更Geek更高效的解决方案。

以下方案可以纯本地化写作,而且配合git做版本管理

  • Markdown写作
    • Mou
    • MacDown
  • ReText写作
    • SublimeText+OmniMarkupPreviewer插件
    • Python+docutils+restview

ReText写作和即时预览效果如下:

或者使用支持Markdown的在线笔记进行同步:

  • 印象笔记+马克飞象工具
  • 为知笔记

流程图工具:

  • Axure

备注:在Mac没有找到好的类似于Visio这样的本地化解决这那,但是使用原本绘制原型设计图的Axure可以比较好的弥补这一短板。

绘制出的流程图效果:

4   终端工具

作为一个互联网的软件开发人员,打交道最多的可能就是命令行终端了。在Mac下有很好的终端解决方案:

  • iTerm2

这是一个 第三方免费 提供的强大的终端软件,可以完全替代系统的简单的终端工具。

熟悉此终端操作的人,完全可以从Linux系统无缝过渡到Mac。

几大特色:

  • 支持多标签
  • 支持横向和纵向分屏
  • 支持全局调出显示终端
  • 支持z-shell安装
  • 支持强大的快捷键

更多的使用技巧:

  • 设置开机启动
  • 设置显示窗口模式
  • 设置全局快捷键随时快速打开终端
  • 在Finder的当前目录打开终端
  • 设置全屏模式下显示多标签
  • 了解快捷键,快速实现标签切换
  • 设置新建Tab路径为前一Tab的工作路径

这些技巧的详细操作,用户可以自己网上搜索,本文只告之是可以实现的,并提供相应搜索关键字。

使用效果(设置了半透明):

备注:以上的 “在Finder的当前目录打开终端” 的实现,需要借助于第三方的应用,用户只需要下载 Go2Shell 进行简单配置即可,在Finder应用的工具栏中直接点击按钮,就可以当前目录为路径打开终端,避免了在终端中繁杂的路径切换。

5   其它使用技巧

熟练如下操作之后,能够让工作窗口的切换变得高效快捷:

  • 了解多个Space的切换手势或者快捷键
  • 熟练双屏下的多个Space的切换
  • 了解其它的经常使用的快捷键

多个工作空间Space的切换效果(在触摸板上四指上扫的动作):

6   小结

网传“MacOSX是对程序员最友好的生产力平台”,入坑后,发现确实如此。

本人是从Linux平台转移过来的,如果之前对Linux平台比较熟悉的,完全可以平滑过渡。

欢迎大家入坑。

本来想出两个平台的开发人员环境配置指南:Linux版和Mac版的。但是后来想想这样做重复的搬砖工作不是我的风格,就专注于Mac的特点只写这一篇了吧。

参考文献 :

[1] 《论语·卫灵公》
[2] Eclipse Mac 版下载
[3] WebStorm Mac 版下载
[4] Pycharm Mac 版下载
[5] Chrome Mac 版下载
[6] Firefox Mac 版下载
[7] Robomongo Mac 版下载
[8] Android Studio Mac 版下载
[9] Xmind Mac 版下载

作者: Harmo哈莫
作者介绍: https://zhengwh.github.io
技术博客: http://www.cnblogs.com/beer
Email: dreamzsm@gmail.com
QQ: 1295351490
时间: 2016-02
版权声明: 欢迎以学习交流为目的读者随意转载,但是请 【注明出处】
支持本文: 如果文章对您有启发,可以点击博客右下角的按钮进行 【推荐】
  如果文章对您有启发,可以点击博客右下角的按钮进行 【推荐】

打造程序员的高效生产力工具-mac篇的更多相关文章

  1. Git学习总结(6)——作为一名程序员这些代码托管工具你都知道吗?

    作为一名程序员这些代码托管工具你都知道吗? 作为一名优秀的开发者,大家都会用到代码托管,我本人用的是github,确实github里面有很多很多开源的项目,所以我们目前的创业项目程序员客栈www.pr ...

  2. 好程序员web前端分享HTML基础篇

    好程序员web前端分享HTML基础篇,最近遇到很多新手,都会问,如果要学web前端开发,需要学什么?难不难学啊?多久能入门之类的问题?那么今天好程序员就先来给大家分享一下web前端学习路线:HTML基 ...

  3. 解析:为什么程序员应该有一台Mac个人电脑?

    对于开发来讲,使用Mac电脑的好处,下面简单列举几个: 首先,macOS很安全和稳定,Mac 系统的底层是最原始的unix操作系统,很多大型的银行和军工企业都是这个操作系统,安全性很高,基本不需要安装 ...

  4. BAT程序员常用的开发工具,建议收藏!

    今天给大家推荐一批 BAT 公司常用的开发工具,个个好用,建议转发+收藏. 阿里篇 一.Java 线上诊断工具 Arthas Arthas 是阿里巴巴 2018 年 9 月开源的一款 Java 线上诊 ...

  5. Python超级程序员使用的开发工具

    我以个人的身份采访了几个顶尖的Python程序员,问了他们以下5个简单的问题: 当前你的主要开发任务是什么? 你在项目中使用的电脑是怎样的? 你使用什么IDE开发? 你将来的计划是什么? 有什么给Py ...

  6. 5款Python程序员高频使用开发工具推荐

    很多Python学习者想必都会有如下感悟:最开始学习Python的时候,因为没有去探索好用的工具,吃了很多苦头.后来工作中深刻体会到,合理使用开发的工具的便利和高效.今天,我就把Python程序员使用 ...

  7. 为什么程序员应该有一台 Mac 个人电脑

    阅读本文大概需要 5.4 分钟. 对于开发来讲,使用 Mac 电脑的好处,下面简单列举几个: 首先,macOS 很安全和稳定,Mac 系统的底层是最原始的 unix 操作系统,很多大型的银行和军工企业 ...

  8. Web程序员必备的CSS工具

    对于web开发来说,CSS是最有效的美化页面.设置页面布局的技术.但问题是,CSS是一种标记性语言,语法结构非常的松散.不严谨.WEB程序员会经常发现自己的或别人的CSS文件里有大量的冗余代码或错误或 ...

  9. windows/Linux下的程序员文档浏览工具

    Dash + Alfred https://www.jianshu.com/p/77d2bf8df81f 对于程序员来说,查看api文档是非常频繁,经常窗口之间切换非常麻烦,mac下就有一个查文档的神 ...

随机推荐

  1. D3中数据与DOM element绑定之data() enter() exit()浅析

    几个非常有用的links: [1] three little circles. http://bost.ocks.org/mike/circles/ [2] How selection works.  ...

  2. Myeclipse反编译插件的安装

    1.首先需要下载 jad.exe 和 jadClipse.jar 2.找到myeclipse的安装路径会有两个文件夹 3.需要新建一下文件夹 看准路径和jad.exe的位置 4.配置jadClipse ...

  3. 1208PHP语句

    var_dump(empty($a)); 判断变量是否为空var_dump(isset($a)); 判断变量是否定义 unset(变量); 删除变量 &代表变量的地址:$a = ;$b = & ...

  4. 贝塞尔曲线(cubic bezier)

    对于css3的Transitions,网上很多介绍,相信大家都比较了解,这里用最简单的方式介绍下: transition语法:transition:<transition-property> ...

  5. python urllib

    在伴随学习爬虫的过程中学习了解的一些基础库和方法总结扩展 1. urllib 在urllib.request module中定义下面的一些方法 urllib.request.urlopen(url,d ...

  6. Java IO 操作(一)

    (1)File 类的基础用法 // 1.创建 一个file 对象File file = new File("D:\\aaa");// 2.判断此 file 是否是一个文件夹file ...

  7. iOS 图片文件格式判断、圆角图片

    1.圆角图片 // 设置圆形图片(放到分类中使用) - (UIImage *)cutCircleImage { UIGraphicsBeginImageContextWithOptions(self. ...

  8. WP8如何添加Newtonsoft.Json包

    WP8开发的时候如何使用Newtonsoft.Json包呢?我在网上包括官网下的DLL文件,添加引用时都给出了这样的提示: 而后在网上找到的解决办法是:使用NuGet程序包来添加. 首先点击工具--& ...

  9. haha2

    # YOU - fhasd - fdks jf > jd sfkjd sf ```python print "helloworld" ``` 来自为知笔记(Wiz)

  10. Codeforces Round #368 (Div. 2)

    直达–>Codeforces Round #368 (Div. 2) A Brain’s Photos 给你一个NxM的矩阵,一个字母代表一种颜色,如果有”C”,”M”,”Y”三种中任意一种就输 ...