公司發了 MacBook,你仍下意識按 Ctrl+S 儲存、用 Win 找應用程式——最難遷的不是語言或框架,而是桌面習慣。本文不列 50 個 App,只挑 5 個能立刻拉回效率曲線 的工具,並給出首日安裝順序。
從 Windows 遷到 macOS 開發的團隊裡,常見兩種失敗模式:一是第一天就裝完整 Xcode + 十幾個 App,結果半天耗在權限彈窗和路徑問題上;二是什麼都不裝,硬扛系統預設體驗,一週後抱怨「Mac 不適合寫程式」。
更穩的路徑是:用少量高槓桿工具,先把「找應用程式、擺視窗、敲命令、按快捷鍵」四件事找回來,再按需加 IDE、Docker、Xcode。下面 5 個工具面向 後端、全端、行動跨平台、從 Visual Studio / VS Code 轉來的開發者;若你同時要配 .NET 與 iOS 流水線,可對照 Visual Studio 開發者轉 Mac 環境指南。
為何只推薦 5 個工具
遷移期的認知頻寬有限。每多裝一個「也許有用」的 App,就多一條學習曲線和一條更新鏈。這 5 個工具的共同點是:
- 覆蓋高頻動作:裝依賴、搜應用程式、擺視窗、開終端機、按快捷鍵——佔開發者一天裡大部分「非編碼」時間。
- 有明確 Windows 對照物:降低「我以前在 Windows 上怎麼做」的翻譯成本。
- 免費或核心功能免費:團隊批量推廣時阻力小。
- 不綁定特定語言棧:Java、Go、Node、Python、.NET 都適用。
原則: 先讓桌面「像能幹活的樣子」,再深入語言 SDK。IDE 可以第二天再定(Rider、VS Code、Cursor、Xcode 視棧而定),但 Homebrew 和終端機習慣建議首日搞定。
五工具一覽:各自替代 Windows 上的什麼
| # | macOS 工具 | Windows 上大致等價 | 解決的核心痛點 |
|---|---|---|---|
| 1 | Homebrew | winget / Chocolatey + 手動裝 CLI | 一條命令裝 git、node、docker CLI 等 |
| 2 | Raycast | PowerToys Run / 開始功能表搜尋 | 秒開應用程式、剪貼簿歷史、腳本片段 |
| 3 | Rectangle | Win + 方向鍵貼靠 / PowerToys FancyZones | IDE + 瀏覽器 + 文件三欄並排 |
| 4 | iTerm2 | Windows Terminal | 分屏、搜尋、SSH 工作階段、與 zsh 配合 |
| 5 | Karabiner-Elements | PowerToys Keyboard Manager / AutoHotkey | 外接鍵盤 Ctrl→⌘、Caps Lock 改 Esc 等 |
工具 1:Homebrew — 套件管理與 CLI 入口
在 Windows 上你習慣 winget install Git.Git 或下載安裝包;在 Mac 上,Homebrew 是事實標準。它統一管理命令列工具和 GUI 應用程式(brew install --cask)。
首日最小安裝
xcode-select --install # 先裝 Command Line Tools(含 git、clang)
/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"
# Apple Silicon 記得把 brew 加入 PATH:
echo 'eval "$(/opt/homebrew/bin/brew shellenv)"' >> ~/.zprofile
eval "$(/opt/homebrew/bin/brew shellenv)"
開發者常用第一批套件
brew install git gh jq fzf ripgrep fd
brew install --cask docker # 若團隊容器化
brew install --cask visual-studio-code # 或 cursor、iterm2、rectangle、raycast
- 與 Windows 的差異
- 路徑在 Apple Silicon 上預設
/opt/homebrew(Intel 為/usr/local)。文件裡寫「把 xxx 加到 PATH」時,別照搬 Windows 的Program Files思維。 - 團隊腳本
- 可在儲存庫放
Brewfile,新同事brew bundle一鍵對齊環境——比發 Word「環境設定說明」可維護得多。
工具 2:Raycast — 啟動器與快捷動作
macOS 內建 Spotlight(⌘+Space)能搜應用程式,但開發者日常還要搜檔案、查剪貼簿歷史、跑腳本、調視窗。Raycast 在免費版裡已覆蓋大部分需求,體驗接近 Windows 上的 PowerToys Run,擴充生態更豐富。
建議首日開啟的能力
- Application Search:替代「開始功能表裡翻 IDE」。
- Clipboard History:複製過的 JSON、token、路徑片段隨時找回——除錯 API 時極省時間。
- Window Management(可選):若暫未裝 Rectangle,可先用 Raycast 視窗命令應急。
- Snippets:把
git commit -m "fix: ..."、常用 SSH 命令存成縮寫。
安裝:brew install --cask raycast。首次啟動按精靈授予輔助使用權限——與 Windows 上 PowerToys 類似,屬於正常要求。
與 Alfred 怎麼選? Alfred 更老牌、Workflow 成熟;Raycast 對現代 UI 和擴充商店更友善。二者選一即可,不必都裝。
工具 3:Rectangle — 視窗貼靠與多螢幕佈局
這是從 Windows 轉 Mac 最容易被低估的痛點:macOS 預設沒有 Win11 那種「拖到邊緣自動半屏/四分之一屏」。你習慣 IDE 左半、瀏覽器右半、終端機居底——沒有工具就要手動拖像素。
Rectangle 免費開源,支援:
- ⌃+⌥+←/→ 左右半屏(可自訂為更順手的組合)
- 四分之一屏、置中、下三分之一(終端機監視日誌很實用)
- 多顯示器:把視窗發到另一塊螢幕
安裝:brew install --cask rectangle。花 10 分鐘把快捷鍵改成 muscle memory 裡接近 Windows 的組合,比背 20 個 macOS 原生手勢見效快。
工具 4:iTerm2 — 終端機與 Shell 工作流
系統內建 Terminal 能用,但從 Windows Terminal 過來的人會想念分屏、搜尋、無限捲動和設定檔。iTerm2 仍是 Mac 開發者終端機的事實標準之一。
推薦最小設定
brew install --cask iterm2
brew install starship eza bat zoxide # 可選:提示符與常用 CLI 增強
在 ~/.zshrc 裡可加:
eval "$(starship init zsh)"
alias ls='eza --icons'
alias cat='bat'
- PowerShell 使用者
- 可
brew install powershell並在 iTerm2 裡設預設 profile;長期仍建議團隊腳本統一 bash/zsh,減少 shebang 混用。 - 與 IDE 內建終端機
- Rider / VS Code 內建終端機適合跑單條命令;長時間跑 docker compose、tail 日誌、多 SSH 工作階段 仍建議獨立 iTerm2 視窗或分屏。
工具 5:Karabiner-Elements — 鍵位過渡與外接鍵盤
Mac 鍵盤用 ⌘ 承擔 Windows 上 Ctrl 的「儲存、複製、復原」;若你繼續用外接 Windows 佈局鍵盤,前兩週會非常痛苦。Karabiner-Elements 用規則把實體鍵對應成你期望的行為。
常見規則(按需啟用)
- 左 Ctrl → 左 ⌘:外接鍵盤上一秒適應「Mac 版 Ctrl+S」。
- Caps Lock → Esc:vim 使用者友善;也與很多 IDE 快捷鍵減少衝突。
- 右 ⌘ → 右 Ctrl:需要在終端機裡用 Tmux 的 Ctrl+b 時更方便。
安裝:brew install --cask karabiner-elements,在「Complex Modifications」社群規則裡搜尋 Change left Control to Command 即可匯入。配合 IDE 的 Visual Studio Keymap 擴充,遷移曲線會平很多。
| 動作 | Windows | macOS 預設 | 外接鍵盤 + Karabiner 過渡期 |
|---|---|---|---|
| 儲存 | Ctrl+S | ⌘+S | 仍按左 Ctrl(對應為 ⌘) |
| 切換應用程式 | Alt+Tab | ⌘+Tab | 保持 ⌘+Tab |
| 關閉分頁 | Ctrl+W | ⌘+W | 對應後同 Windows 手指位置 |
推薦安裝順序(首日 → 首週)
- 上午(30–60 分鐘):
xcode-select --install→ Homebrew →brew install git→ 複製主儲存庫,確認core.autocrlf input。 - 下午(30 分鐘):Raycast + Rectangle,恢復「找應用程式 + 擺視窗」手感。
- 同日或次日:iTerm2 + 常用 CLI;IDE 用團隊既定方案(VS Code / Rider / Cursor)。
- 首週內:Karabiner-Elements;Docker Desktop;按需
brew install node@20/dotnet-sdk等。 - 僅在做 iOS / MAUI iOS 時:再裝完整 Xcode(30GB+),或把 Archive 放到 雲端 Mac。
| 階段 | 目標 | 驗收標準 |
|---|---|---|
| 首日 | 能拉程式碼、裝依賴、開啟 IDE | git clone + npm test 或 dotnet build 通過 |
| 首週 | 團隊協作無摩擦 | SSH key、內部 NuGet/npm 源、pre-commit 鉤子可跑 |
| 首月 | CI 與平台建置對齊 | macOS runner 或雲端 Mac 能打出與本地一致的包 |
這 5 個工具解決不了什麼
誠實劃界,避免期望錯位:
- 不能替代 Xcode:iOS 模擬器、Archive、App Store 簽名必須在 macOS + Apple 工具鏈上完成。Windows 主力團隊見 Windows 上如何用 Xcode:雲端 Mac 方案。
- 不能執行 WinForms / WPF 設計器:需要 Parallels 或遠端 Windows,那是另一套預算與合規問題。
- 不能自動統一團隊 IDE:工具只解決桌面效率;程式碼規範仍靠 EditorConfig、lint、CI。
若你每月只需幾次 iOS 建置,本機保持輕量(上述 5 工具 + 日常 IDE),把 xcodebuild archive 放到獨享雲端 Mac mini,往往比給每人裝完整 Xcode 更省磁碟與維護成本。
收束:先恢復手感,再談技術棧
從 Windows 遷移至 macOS 開發,優先級應是:Homebrew 裝得起依賴 → Raycast 找得到應用程式 → Rectangle 擺得開視窗 → iTerm2 跑得穩腳本 → Karabiner 按得對快捷鍵。這五步完成後,你再選 Rider、VS Code 還是 Xcode,都不會被桌面摩擦拖垮。
工具會變,但目標不變:第一天能編譯,第一週能合併 PR,第一個月能穩定交付。 需要把 iOS 建置從筆電上剝離時,雲端 Mac 是這 5 個工具之外、同樣值得列入清單的「第 6 項基礎設施」。
本機配環境,雲端 Mac 跑 iOS 建置
上述 5 個工具足以支撐日常跨平台開發;MAUI / 原生 iOS 的 Archive 與 CI 更適合 offload 到獨享雲端 Mac mini。SSH 接入、按日/週/月計費,無需為偶爾建置再買第二台硬體。
延伸閱讀
常見問題
從 Windows 轉 Mac 開發,第一天必須先裝什麼?
先裝 Xcode Command Line Tools(xcode-select --install),再裝 Homebrew。Raycast、Rectangle、iTerm2、Karabiner-Elements 可在首日下班前分批完成,不必一次裝齊。
Ctrl 和 Cmd 衝突怎麼辦?
短期用 Karabiner-Elements 把外接鍵盤左 Ctrl 對應為 ⌘,或在 IDE 安裝 Visual Studio Keymap。長期建議刻意練習 ⌘ 組合鍵;前三天貼一張 Ctrl→⌘ 對照條比背快捷鍵表更有效。
Homebrew 和 Mac App Store 怎麼選?
CLI 工具、開發依賴、開源軟體優先 brew install;需要沙盒、自動更新、Apple 生態整合的 GUI(如 Xcode)走 App Store 或 brew install --cask。
這 5 個工具夠做 iOS 開發嗎?
日常編碼與終端機夠用;iOS Archive、模擬器與簽名仍需完整 Xcode 或遠端 macOS。Windows 主力 + 偶爾 iOS 建置可配合 雲端 Mac。
還要裝 Parallels 跑 Windows 嗎?
僅當遺留 WinForms、WPF、SSMS 或特定 Windows 外掛時才需要。Web、後端、跨平台行動開發通常不必把 Windows 虛擬機當日常主力。