公司发了 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 虚拟机当日常主力。