本指南可帮助你将熟悉的 macOS 开发工作流转移到Windows、适用于 Linux 的 Windows 子系统(WSL)和Windows本机开发人员工具。
对于本机Windows应用开发,与 Xcode 最接近的等效项是Visual Studio。 对于跨平台源代码编辑和大型扩展生态系统,请使用Visual Studio Code。 如果从终端或跨平台框架生成Windows应用,则公共预览版Windows 应用开发 CLI 可以设置 SDK、添加包标识和创建 MSIX 包。
为开发设置 Windows
从以下Windows 11功能开始:
配置开发人员设置。 在Windows 11版本 25H2 及更高版本上,打开“设置系统>高级”>以配置文件扩展名、隐藏文件、长路径、默认终端、PowerShell 脚本、sudo、开发人员模式和开发驱动器。 在较早版本中,请在“设置”中搜索面向开发人员。 开发人员模式主要用于开发、部署和测试Windows应用;大多数 Web 或跨平台开发不需要它。 有关详细信息,请参阅高级Windows设置。
使用 WinGet 安装工具。Windows 包管理器(WinGet)相当于 Windows 上的 Homebrew 这类包管理器。 使用它搜索、安装、升级、删除和配置应用程序。 例如,
winget upgrade --all更新 WinGet 管理的包。使设置可重复。WinGet 配置使用 YAML 文件声明包和Windows设置。 将配置与项目或入门文档一起保存,在运行该配置之前检查其资源,并使用以下命令应用它:
winget configure -f <path-to-configuration-file>请考虑开发驱动器。开发驱动器 是针对开发工作负载优化的 ReFS 卷。 将其用于源存储库、包缓存和生成输出,而不是常规文档。 可在 设置 > 系统 > 存储 > 高级存储设置 > 磁盘和卷 中创建一个。
键盘快捷方式
小窍门
使用 PowerToys 键盘管理器 重新映射键和快捷方式。 PowerToys 快速重音可快速输入带重音的字符。
| Operation | macOS | Windows |
|---|---|---|
| 复制 | Command+C | Ctrl+C |
| 剪切 | 命令+X | Ctrl+X |
| 粘贴 | Command+V | Ctrl+V |
| 撤消 | 命令+Z (Command+Z) | Ctrl+Z |
| 保存 | 命令键+S | Ctrl+S |
| 开放 | Command+O | Ctrl+O |
| 锁定计算机 | Command+Control+Q | Windows 键+L |
| 显示桌面 | Command+F3 | Windows 键+D |
| 打开文件浏览器 | Finder 中的 Command+N | Windows 键+E |
| 最小化前端应用或桌面中的所有窗口 | Command+Option+M(前台应用) | Windows键+M(桌面版) |
| 搜寻 | 命令键+空格 | Windows 键+S |
| 关闭文档或选项卡 | Command+W | Ctrl+W |
| 退出活动应用或关闭活动窗口 | Command+Q (退出应用) | Alt+F4 (关闭窗口) |
| 切换应用 | Command+Tab(命令+Tab键) | Alt+Tab |
| 显示打开的窗口 | Control+Up | Windows键+Tab |
| 切换虚拟桌面 | Control+Left 或 Control+Right | Windows 键+Ctrl+左箭头键或 Windows 键+Ctrl+右箭头键 |
| 打开对齐布局 | 无 | Windows 键+Z |
| 保存屏幕截图 | Command+Shift+3 | Windows key+PrtScn |
| 截取区域或窗口 | Command+Shift+4 | Windows键+Shift+S |
| 查看项信息或属性 | Command+I | Alt+Enter |
| 选择全部项 | Command+A | Ctrl+A |
| 选择非连续项 | 命令,然后选择每个项 | Ctrl,然后选择每个项 |
| 打开表情符号和符号选取器 | Control+Command+Space | Windows键+ 。 |
在Windows 终端中,使用 Ctrl+Shift+C 和 Ctrl+Shift+V 默认复制和粘贴。 Ctrl+C 仍可用于中断正在运行的命令。
触控板快捷方式
注释
这些手势需要精确触摸板。 在“设置蓝牙和设备>触摸板”>下配置三指和四指手势。
| Operation | macOS | Windows |
|---|---|---|
| 滚动 | 双指垂直轻扫 | 双指垂直轻扫 |
| 缩放 | 双指捏合 | 双指捏合 |
| 打开上下文菜单 | 双指单击 | 双指点击 |
| 显示打开的窗口 | 四指向上轻扫 | 三指向上轻扫 |
| 显示桌面 | 张开四指 | 三指向下轻扫 |
| 切换应用 | 无 | 三指向左或向右轻扫 |
| 切换虚拟桌面 | 向左或向右轻扫四指 | 四指向左或向右轻扫 |
有关当前手势列表,请参阅用于Windows的触摸手势。
命令行 shell 和终端
Windows 终端可以托管 PowerShell、命令提示符、WSL 分发版、SSH、Azure CLI、Git Bash 和其他命令行应用程序。
PowerShell
PowerShell 是基于.NET构建的跨平台 shell 和自动化语言。 PowerShell 7 开放源代码,在 Windows、macOS 和 Linux 上运行,并随 Windows 随附的 Windows PowerShell 5.1 版本一起安装。 使用 WinGet 安装当前版本:
winget install --id Microsoft.PowerShell --source winget
使用 pwsh.. 启动 PowerShell 7。 诸如 ls、mv 和 cat 之类的命令是 PowerShell cmdlet 的别名,而不是 GNU 实用工具。 其参数和基于对象的管道行为不同于 Bash。 转换脚本时,使用 Get-Help 并阅读 有关 PowerShell 别名 的信息。
命令提示符仍可用于依赖于 Cmd 语法的批处理文件和工具。
原生 Unix 风格工具
许多熟悉的命令无需 WSL 即可在 Windows 上原生运行:
-
Coreutils for Windows 提供由 Microsoft 维护的命令构建版本,例如
ls、cat、find、tail、head、wc、mv、grep、cp、sort和uniq。 使用winget install Microsoft.Coreutils安装它。 PowerShell 别名可以优先,因此请使用名称,例如ls.exe,或者cp.exe当你特别想要 Coreutils 命令时。 -
sudo 在 Windows 11 版本 24H2 及更高版本中,通过用户帐户控制提升命令的权限。 与 Unix
sudo不同,它不会以其他用户身份运行命令。 在Windows 11版本 25H2 及更高版本上,在“设置系统>高级”>下启用它。 - 包含 curl 和 tar ,用于下载文件和处理存档。
-
编辑是当前Windows 11版本中包括的轻型终端文本编辑器。 使用
winget install Microsoft.Edit将其安装到其他受支持的系统上。
将 Linux 与 WSL 配合使用
适用于 Linux 的 Windows 子系统 (WSL) 直接在 Windows 上运行 Linux 环境,对于来自 macOS 的开发人员来说,通常是最熟悉的选项。 新安装默认使用 WSL 2。
若要安装具有默认 Ubuntu 分发版的 WSL,请在提升的 PowerShell 窗口中运行以下命令,然后重启Windows:
wsl --install
若要选择其他分发版,请列出可用分发版,并改为按名称安装:
wsl --list --online
wsl --install -d <DistributionName>
安装后,使用以下命令更新 WSL:
wsl --update
为了获得 Linux 工具的最佳性能,请将项目存储在 Linux 文件系统中,例如 /home/<user>/project,而不是在 Linux 文件系统下 /mnt/c。 在 WSL 中,运行 explorer.exe . 以在文件资源管理器中打开当前目录。 Windows 通过 \\wsl$ 访问 Linux 文件,Windows 和 Linux 命令可以相互调用。
Visual Studio Code 可以使用 code . 在 WSL 中打开项目,同时让编辑器界面保留在 Windows 上,而扩展、终端和工具则在 Linux 中运行。 请参阅在 WSL 中使用Visual Studio Code和跨 Windows 和 Linux 文件系统进行开发。
使用Windows 终端
Windows 终端 是 Windows 上进行命令行工作的推荐主机程序。 它支持配置文件、选项卡、拆分窗格、主题、Unicode 和 GPU 加速文本呈现。 Windows 终端 随 Windows 11 提供,也可通过 Microsoft Store 在 Windows 10 上获取。
- 使用 Ctrl+Shift+P 打开其命令面板。
- 使用 Alt+Shift+Plus 或 Alt+Shift+Minus 将当前配置文件拆分成多个窗格。
- 为 PowerShell、WSL、命令提示符、SSH 和其他工具创建配置文件。
旧版Windows控制台主机仍可用于与较旧的命令行应用程序兼容。
窗口管理和工作效率
Windows 11包括 Snap 布局、Snap Assist、Snap 组和多个桌面。 将鼠标悬停在窗口的最大化按钮上,或按 Windows 键+Z 选择布局。 使用Windows键+Tab 查看对齐组和桌面。
Microsoft PowerToys 为开发人员和高级用户提供了实用工具。 命令面板 是应用、命令、文件、设置、WinGet 包、打开窗口、剪贴板历史记录和终端配置文件的聚焦式启动器。 使用 Windows 键+Alt+空格打开它。 其他有用的实用工具包括键盘管理器、快速重音、FancyZones 和工作区。
文件资源管理器结合了本地文件和云文件、固定位置、选项卡和最近项。 使用“视图显示”>显示文件扩展名和隐藏文件。 简化的上下文菜单将常用命令保留在顶部;选择“显示旧 shell 扩展 的更多选项 ”。
应用和实用工具
| 任务 | macOS | Windows |
|---|---|---|
| 设置 | 系统设置 | 设置 |
| 监视进程 | 活动监视器 | 任务管理器 |
| 格式化磁盘并对其进行分区 | 磁盘实用程序 | 磁盘管理 |
| 编辑文本 | 文本编辑器 | 记事本或 编辑 |
| 查看系统事件 | 控制台 | 事件查看器 |
| 查找文件和应用 | 聚光灯 | Windows 搜索或 PowerToys 命令面板 |
| 管理软件包 | Homebrew | WinGet |
| 存储开发文件 | 无 | 开发者驱动器 |
| 运行 Unix 命令行工具 | 内置 | Coreutils、 sudo 或 WSL |
| 排列窗口 | 任务控制 | 对齐布局和多个桌面 |
| 添加生产力实用工具 | 无 | PowerToys |