工程師都會有自己習慣的電腦設定,身為一個 iOS 開發者的我自然也不例外。本文記錄了我自己的環境建置,方便以後換電腦或換工作時可以快速 setup,也歡迎有需要的人拿去修改或留言推薦你喜歡的工具。

建立開發環境

最基本的開發環境大概就是以下這些,裝好就能開始 build code 了。

Xcode 及其 Extension

Homebrew

/usr/bin/ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"

Git

brew install git

rbenv + ruby

brew install rbenv
rbenv install 2.4.1 # 沒特殊需求的話可以指定最新穩定版
rbenv rehash
rbenv global 2.4.1

~/.bashrc~/.zshrc 檔案結尾加入以下設定,然後重新登入。

export RBENV_ROOT=/usr/local/var/rbenv
if which rbenv > /dev/null; then eval "$(rbenv init -)"; fi

CocoaPods

gem install cocoapods
pod setup

必備工具軟體

我的電腦裝的軟體不多,這邊列出的都是我比較常用的。

瀏覽器

我常用的是 Google Chrome,最近覺得 Vivaldi 也蠻不錯的,兩個都符合我的需求:「多組帳號切換」、「設定可同步」、「套件多」。我不選擇 Firefox 的原因是因為它的帳號切換不好用。

通訊軟體

除了用 LINE 跟親友聯絡之外,工作上還需要用到 SlackSkype,有時還會用 TelegramFacebook Messenger 聊天打屁。

開一大堆視窗只為了傳訊息讓我覺得很蠢,所以我通常使用 Franz 這個整合型通訊工具,類似的還有 Station

編輯器

我的文字跟程式碼編輯器首選是 Visual Studio Code,理由是它「速度夠快」、「界面友好」、「套件多」。之前我有用過 Sublime Text 3,它真的很快,但因為它界面不夠友善而我懶得折騰所以放棄了。

工程師一定要用的還有 Markdown 編輯器,我強烈推薦 Typora,它的所見即所得以及多種佈景主題讓我用過就再也離不開。如果習慣傳統的左右兩欄界面的人,可以考慮用 MacDown

終端機

內建的 Terminal 不夠好用,所以我都會改用 iTerm,配合 oh-my-zsh 使用 Zsh shell。

開發工具

不管是工作的案子或是自己的 side project,我都會用 Git 做版本控制。Git 很強大但也很難用(雖然常用的指令就那麼幾個),還好它有很多免費或商用的 GUI,比較有名氣的大概是 SourceTreeTowerSmartGit、以及 GitKraken。但我用的不是上述這些,我用的是 Fork,它的使用介面非常友善,並且操作非常流暢。

我用 Dash 觀看 API 文件與管理程式碼片段,用 Postman 管理與呼叫 API。

如果要檢查 app 的 UI 的話,平時 Xcode 內建的工具就很夠用了,若需要進階一點可以考慮免費的 Lookin,或是需要付費的 RevealSherlock

生產力工具

為了支援更多的壓縮檔格式,我用 The UnarchiverKeka 解壓縮。如果不介意 command line 的話,也可以考慮 WinRAR for Mac

我會使用心智圖來紀錄一些比較發散或是比較階層性的想法,XMind 是個很好用的工具,最大的缺點大概就是稍嫌笨重吧。

內建的 Spotlight 雖然不錯,但我更喜歡 Alfred,它的自訂性比較高。

我用 Magnet 跟 HyperSwitch 強化 Mac 的視窗管理功能,用 Open In Terminal 強化 Finder 的功能。如果覺得 Finder 真的太難用,可以考慮 ForkLift 3,它除了是檔案總管之外,也是檔案傳輸工具。

線上工具

有些不常用的需求,可以使用一些免費的線上工具解決。

  • Diff Checker

    針對兩份文字做 diff 的工具,為什麼 VSCode 沒有套件可以讓我左右兩邊各貼一段文字然後就自動 diff 呢?

  • JSON Editor Online

    檢視與編輯 JSON 的工具

  • draw.ioZen Flowchart

    流程圖與其他圖表繪製工具

  • ASCIIFlow Infinity

    輕鬆畫出 ASCII 圖,我拿來畫程式架構,然後放在程式碼註解裡。

  • Collage Maker

    圖片拼貼工具,通常我在送 PR 給同事 review 時,如果是關於 UI 的修改,我會附上前後對照圖。