Переход с Mac (Unix) на Windows

Это руководство поможет вам перенести привычные процессы разработки в macOS на Windows, в подсистему Windows для Linux (WSL) и в собственные средства разработки Windows.

Для разработки нативных приложений для Windows ближайшим эквивалентом Xcode является Visual Studio. Для редактирования кроссплатформенного исходного кода и большой экосистемы расширений используйте Visual Studio Code. Если вы создаете приложения для Windows из терминала или с помощью кроссплатформенного фреймворка, общедоступная предварительная версия приложение для Windows Development CLI может настроить SDK, добавить идентификатор пакета и создать пакеты MSIX.

Настройка Windows для разработки

Начните с следующих функций Windows 11:

  1. Настройка параметров разработчика. В Windows 11 версии 25H2 и более поздних версиях откройте Параметры > Система > Дополнительно, чтобы настроить расширения файлов, скрытые файлы, длинные пути, терминал по умолчанию, сценарии PowerShell, sudo, режим разработчика и Dev Drive. В более ранних версиях выполните поиск в разделе «Параметры» по запросу Для разработчиков. Режим разработчика в первую очередь необходим для разработки, развертывания и тестирования приложений Windows; он не требуется для большинства веб-или кроссплатформенных разработок. Дополнительные сведения см. в разделе Дополнительные параметры Windows.

  2. Установите инструменты с помощью WinGet.Windows диспетчер пакетов (WinGet) — это аналог диспетчера пакетов, такого как Homebrew, в Windows. Используйте его для поиска, установки, обновления, удаления и настройки приложений. Например, winget upgrade --all обновляет пакеты, управляемые WinGet.

  3. Сделайте настройку повторяемой.Конфигурация WinGet использует YAML-файл для объявления пакетов и Windows параметров. Сохраните конфигурацию вместе с проектом или документацией по онбордингу, просмотрите её ресурсы перед запуском и примените её с помощью:

    winget configure -f <path-to-configuration-file>
    
  4. Рассмотрим диск разработки.Диск разработки — это том ReFS, оптимизированный для рабочих нагрузок разработки. Используйте его для исходных репозиториев, кэшей пакетов и выходных данных сборки, а не общих документов. Создайте его в Параметры > Система > Память > Дополнительные параметры хранилища > Диски и тома.

Сочетания клавиш

Совет

Используйте PowerToys Keyboard Manager, чтобы переназначать клавиши и сочетания клавиш. PowerToys Quick Accent обеспечивает быстрый доступ к символам с диакритическими знаками.

Operation macOS Windows
Копировать Команда+C CTRL+C
Резать Cmd+X CTRL+X
Вставить Command+V CTRL+V
Отменить Команда+Z CTRL+Z
Сохранить Команда+S CTRL+S
Открыть Команда+O CTRL+O
Блокировка компьютера Команда+Контроль+Q клавиша Windows+L
Отображение рабочего стола Команда+F3 Клавиша Windows + D
Открытие браузера файлов Command+N в Finder ключ Windows+E
Свернуть все окна в интерфейсном приложении или на рабочем столе Command+Option+M (переднее приложение) клавиша Windows+M (рабочий стол)
Искать Command+Пробел Клавиша Windows+S
Закрытие документа или вкладки Command+W CTRL+W
Закройте активное приложение или закройте активное окно Command+Q (выход из приложения) ALT+F4 (закрыть окно)
Переключение приложений Command+TAB ALT+TAB
Показать открытые окна Control+UP клавиша Windows+Tab
Переключение виртуальных рабочих столов Control+Left или Control+Right Клавиша Windows+Ctrl+Влево или Клавиша Windows+Ctrl+Вправо
Открыть макеты привязки Не применимо Клавиша Windows+Z
Сохранение снимка экрана Command+SHIFT+3 Клавиша Windows+PrtScn
Запись региона или окна Command+SHIFT+4 клавиша Windows+Shift+S
Просмотр сведений о элементах или свойствах Команда+I ALT+ВВОД
Выбор всех элементов Команда+A CTRL+A
Выбор несмежных элементов Команда, а затем выберите каждый элемент Ctrl, а затем выберите каждый элемент
Открыть панель выбора эмодзи и символов Control+Command+Space клавиша Windows+.

В Терминал Windows используйте CTRL+SHIFT+C и CTRL+SHIFT+V для копирования и вставки по умолчанию. Ctrl+C остается доступным для прерывания выполнения команды.

Жесты для трекпада

Заметка

Для этих жестов требуется высокоточная сенсорная панель. Настройте жесты с тремя и четырьмя пальцами в разделе "Параметры Bluetooth и устройства > Touchpad".>

Operation macOS Windows
Прокрутка Вертикальный свайп двумя пальцами Вертикальный свайп двумя пальцами
Zoom / Увеличить Щипок двумя пальцами Щипок двумя пальцами
Открыть контекстное меню Дважды щелкните пальцем Касание двумя пальцами
Показать открытые окна Смахивание вверх четырьмя пальцами Свайп вверх тремя пальцами
Отображение рабочего стола Разведите четыре пальца Смахивание вниз тремя пальцами
Переключение приложений Не применимо Смахивание тремя пальцами влево или вправо
Переключение виртуальных рабочих столов Смахивание четырьмя пальцами влево или вправо Смахивание четырьмя пальцами влево или вправо

Список текущих жестов см. в разделе "Жесты касания" для Windows.

Оболочки командной строки и терминалы

Терминал Windows может размещать powerShell, командную строку, дистрибутивы WSL, SSH, Azure CLI, Git Bash и другие приложения командной строки.

PowerShell

PowerShell — это кроссплатформенный язык оболочки и автоматизации, основанный на .NET. PowerShell 7 имеет открытый исходный код, работает на Windows, macOS и Linux и устанавливается параллельно с версией Windows PowerShell 5.1, входящей в состав Windows. Установите текущую версию с помощью WinGet:

winget install --id Microsoft.PowerShell --source winget

Запустите PowerShell 7 с помощью pwsh. Такие команды, как ls, mvи cat являются псевдонимами для командлетов PowerShell, а не служебных программ GNU. Их параметры и поведение конвейера на основе объектов отличаются от Bash. Используйте Get-Help и ознакомьтесь с псевдонимами PowerShell при переводе скриптов.

Командная строка остается доступной для пакетных файлов и инструментов, которые зависят от синтаксиса Cmd.

Собственные инструменты в стиле Unix

Многие знакомые команды выполняются в собственном коде Windows без WSL:

  • Coreutils для Windows предоставляет поддерживаемые Microsoft сборки таких команд, как ls, cat, grep, find, mv, cp, tail, wc, head, 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

подсистема Windows для Linux (WSL) запускает среду Linux непосредственно на Windows и часто является наиболее знакомым вариантом для разработчиков, поступающих из macOS. Новые установки по умолчанию используют WSL 2.

Чтобы установить WSL с дистрибутивом Ubuntu по умолчанию, выполните следующую команду в окне PowerShell с повышенными привилегиями, а затем перезапустите Windows:

wsl --install

Чтобы выбрать другое распределение, перечислите доступные дистрибутивы и установите один по имени:

wsl --list --online
wsl --install -d <DistributionName>

После установки выполните следующую команду, чтобы обновить WSL:

wsl --update

Для обеспечения оптимальной производительности с помощью средств Linux сохраните проекты в файловой системе Linux, например /home/<user>/project, а не в /mnt/c. В WSL запустите explorer.exe . , чтобы открыть текущий каталог в проводнике. Windows предоставляет файлы Linux в \\wsl$разделе , а команды Windows и Linux могут вызывать друг друга.

Visual Studio Code может открывать проект внутри WSL с помощью code ., при этом интерфейс редактора остается в Windows, а расширения, терминалы и инструменты работают в Linux. См. статью "Разработка в WSL с помощью Visual Studio Code и работы в Windows и файловых системах Linux".

Использование Терминал Windows

Терминал Windows — это рекомендуемая среда для работы с командной строкой в Windows. Она поддерживает профили, вкладки, разделенные области, темы, Юникод и отрисовку текста с ускорением GPU. Терминал Windows входит в состав Windows 11 и доступен из Microsoft Store для Windows 10.

  • Откройте палитру команд с помощью CTRL+SHIFT+P.
  • Разделение текущего профиля на области с помощью ALT+SHIFT+PLUS или ALT+SHIFT+Минус.
  • Создание профилей для PowerShell, WSL, командной строки, SSH и других средств.

Прежний Windows Console Host по-прежнему доступен для обеспечения совместимости со старыми приложениями командной строки.

Управление окнами и производительность

Windows 11 включает макеты привязки, помощник по привязке, группы привязки и несколько рабочих столов. Наведите указатель мыши на кнопку развёртывания окна или нажмите клавиши Windows+Z, чтобы выбрать схему расположения. Используйте клавишу Windows + Tab, чтобы просмотреть группы привязки и рабочие столы.

Microsoft PowerToys включает утилиты для разработчиков и опытных пользователей. Палитра команд — это средство запуска в стиле Spotlight для приложений, команд, файлов, настроек, пакетов WinGet, открытых окон, истории буфера обмена и профилей терминала. Откройте его сочетанием клавиш Windows+Alt+Пробел. К другим полезным утилитам относятся Keyboard Manager, Quick Accent, FancyZones и Workspaces.

Проводник объединяет локальные и облачные файлы, закреплённые папки, вкладки и недавние элементы. Используйте представление show > для отображения расширений и скрытых файлов. Упрощенное контекстное меню сохраняет общие команды в верхней части окна; Выберите "Показать дополнительные параметры для устаревших расширений оболочки".

Приложения и служебные программы

задачи macOS Windows
Параметры Параметры системы Параметры
Мониторинг процессов Монитор активности Диспетчер задач
Форматирование и секционирование дисков Служебная программа диска Управление дисками
Редактирование текста TextEdit (текстовый редактор) Блокнот или Edit
Просмотр системных событий Консоль Просмотр событий
Поиск файлов и приложений Прожектор Поиск Windows или палитра команд PowerToys
Управление пакетами Homebrew WinGet
Хранение файлов разработки Не применимо Диск разработки
Запуск средств командной строки Unix Встроенный Coreutils, sudo или WSL
Упорядочить окна Управление миссиями Макеты привязки и несколько рабочих столов
Добавление служебных программ для повышения производительности Не применимо PowerToys