打造程序员的高效生产力工具-mac篇
打造程序员的高效生产力工具-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篇的更多相关文章
- Git学习总结(6)——作为一名程序员这些代码托管工具你都知道吗?
作为一名程序员这些代码托管工具你都知道吗? 作为一名优秀的开发者,大家都会用到代码托管,我本人用的是github,确实github里面有很多很多开源的项目,所以我们目前的创业项目程序员客栈www.pr ...
- 好程序员web前端分享HTML基础篇
好程序员web前端分享HTML基础篇,最近遇到很多新手,都会问,如果要学web前端开发,需要学什么?难不难学啊?多久能入门之类的问题?那么今天好程序员就先来给大家分享一下web前端学习路线:HTML基 ...
- 解析:为什么程序员应该有一台Mac个人电脑?
对于开发来讲,使用Mac电脑的好处,下面简单列举几个: 首先,macOS很安全和稳定,Mac 系统的底层是最原始的unix操作系统,很多大型的银行和军工企业都是这个操作系统,安全性很高,基本不需要安装 ...
- BAT程序员常用的开发工具,建议收藏!
今天给大家推荐一批 BAT 公司常用的开发工具,个个好用,建议转发+收藏. 阿里篇 一.Java 线上诊断工具 Arthas Arthas 是阿里巴巴 2018 年 9 月开源的一款 Java 线上诊 ...
- Python超级程序员使用的开发工具
我以个人的身份采访了几个顶尖的Python程序员,问了他们以下5个简单的问题: 当前你的主要开发任务是什么? 你在项目中使用的电脑是怎样的? 你使用什么IDE开发? 你将来的计划是什么? 有什么给Py ...
- 5款Python程序员高频使用开发工具推荐
很多Python学习者想必都会有如下感悟:最开始学习Python的时候,因为没有去探索好用的工具,吃了很多苦头.后来工作中深刻体会到,合理使用开发的工具的便利和高效.今天,我就把Python程序员使用 ...
- 为什么程序员应该有一台 Mac 个人电脑
阅读本文大概需要 5.4 分钟. 对于开发来讲,使用 Mac 电脑的好处,下面简单列举几个: 首先,macOS 很安全和稳定,Mac 系统的底层是最原始的 unix 操作系统,很多大型的银行和军工企业 ...
- Web程序员必备的CSS工具
对于web开发来说,CSS是最有效的美化页面.设置页面布局的技术.但问题是,CSS是一种标记性语言,语法结构非常的松散.不严谨.WEB程序员会经常发现自己的或别人的CSS文件里有大量的冗余代码或错误或 ...
- windows/Linux下的程序员文档浏览工具
Dash + Alfred https://www.jianshu.com/p/77d2bf8df81f 对于程序员来说,查看api文档是非常频繁,经常窗口之间切换非常麻烦,mac下就有一个查文档的神 ...
随机推荐
- 【leetcode】Compare Version Numbers
题目描述: Compare two version numbers version1 and version2. If version1 > version2 return 1, if vers ...
- CozyRSS开发记录18-番外之Atom1.0的支持
CozyRSS开发记录18-番外之Atom1.0的支持 1.对CozyRSS.Syndication批判一番 由于我工作的主要开发语言是c++,所以会看到我的c#代码写得非常朴素,很多语法糖都没有用上 ...
- web.xml文件加载顺序
1.启动一个WEB项目的时候,WEB容器会去读取它的配置文件web.xml,读取<listener>和<context-param>两个结点. 2.紧急着,容创建一个Servl ...
- MR操作
MR操作————Map.Partitioner.Shuffle.Combiners.Reduce 1.Map步骤 1.1 读取输入文件,解析成k-v对,其中每个k-v对调用一次map函数 1.2 写自 ...
- 如何使用android百度地图离线地图
1.首先把离线地图放在android工程下的assets里面. 注意:建议离线地图下载通过百度地图APIDEMO去下载,因为到官网上下载的离线地图文件格式不一样,APIDEMO的格式是.dat,而官网 ...
- 中国剩余定理(Chinese Remainder Theorem)
我理解的中国剩余定理的含义是:给定一个数除以一系列互素的数${p_1}, \cdots ,{p_n}$的余数,那么这个数除以这组素数之积($N = {p_1} \times \cdots \tim ...
- 转:Delphi 6 实用函数
来自: daocaoren0824, 时间: -- ::, ID: 再给你一份 程序员实用函数 {▎▎▎▎▎▎▎▎▎▎▎▎▎▎▎▎▎▎▎▎▎▎▎▎▎▎▎▎▎▎▎▎▎▎▎▎▎▎▎} {▎ ▎} {▎ 大 ...
- css3实现圆形逐渐减少动画
写这个动画刚开始完全没有思路,后来参考网上的资料发现可以用半圆实现,具体原理如下: 1.,一个div作为背景,三个div做出三个半圆出来,一个用于旋转,一个靠左(用于与背景吻合),一个靠右(用于与背景 ...
- Asp.net MVC中Html.Partial, RenderPartial, Action,RenderAction 区别和用法(mvc部分视图的添加)
Partial 和RenderPartial:这两个的性质都是一样, 只指把一个个View给镶入进来, 只是回传值有点不一样Partial 回传的一个Object (MvcHtmlString), 回 ...
- Web API返回JSON数据
对Web API新手来说,不要忽略了ApiController 在web API中,方法的返回值如果是实体的话实际上是自动返回JSON数据的例如: 他的返回值就是这样的: { "Conten ...