打造程序员的高效生产力工具-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. Ajax:一种网页开发技术(Asynchronous Javascript + XML)

    创建新的 XMLHttpRequest 对象(Ajax 应用程序的核心): <script language="javascript" type="text/jav ...

  2. Python爬虫进阶二之PySpider框架安装配置

    关于 首先,在此附上项目的地址,以及官方文档 PySpider 官方文档 安装 1. pip 首先确保你已经安装了pip,若没有安装,请参照 pip安装 2. phantomjs PhantomJS ...

  3. 数据库连接池c3p0学习

    这里只记录c3p0的数据源,不会涉及到其它方面和别的数据库连接池的对比 配置文件主要的实现方式有三种: 1.手写代码去加载一个配置文件 创建一个config.properties文件如下: drive ...

  4. WebGL入门教程(五)-webgl纹理

    前面文章: WebGL入门教程(一)-初识webgl WebGL入门教程(二)-webgl绘制三角形 WebGL入门教程(三)-webgl动画 WebGL入门教程(四)-webgl颜色 这里就需要用到 ...

  5. JAVABeanUtils

    在写如何使用java BeanUlits 之前需要清楚几件事情 1. 我们每次所定义的类,其实是实体,同时也被称作为JavaBean; 2.  为什么我们要使用BeanUlits这个框架     &g ...

  6. PDA无线数据采集器在仓库管理系统中的应用

    条码数据采集器在仓库管理系统中的应用,条码数据采集器,顾名思义就是通过扫描货物条码,对货物进行数量分类采集,方便仓库正规化管理.条码数据采集器是现代化条码仓库管理系统中不可缺少的一部分,能提升企业的整 ...

  7. 【刷题笔记】I'm stuck! (迷宫)-----java方案

    题目描述 : 给定一个R行C列的地图,地图的每一个方格可能是'#', '+', '-', '|', '.', 'S', 'T'七个字符中的一个,分别表示如下意思: '#': 任何时候玩家都不能移动到此 ...

  8. CSS常用布局学习笔记

    水平居中-行内元素 如果是文字和图片这类的行内元素,则在其父级元素上加上样式:text-align:center; 水平居中-定宽块元素 div{ width:100px; margin:0 auto ...

  9. 【转】Microsoft .NET Framework 3.5 sp1 安装速度慢,快速离线安装的方法

    1.到官网上下载3.5SP1的完整安装包.2.下载完成后,命令行下运行dotnetfx35.exe/x,解压到一个目录(如D:"),此时会生成一个D:"wcu目录3.进入解压目录下 ...

  10. Logback_日志使用详解(转)

    概述 Logback建立于三个主要类之上:日志记录器(Logger),输出端(Appender)和日志格式化器(Layout).这三种组件协同工作,使开发者可以按照消息类型和级别来记录消息,还可以在程 ...