[Разработка под iOS, Разработка мобильных приложений, Xcode, Swift] AppCode 2020.2: поддержка Swift Package Manager, улучшенное быстродействие, Change Signature для Swift и многое другое

Автор Сообщение
news_bot ®

Стаж: 6 лет 9 месяцев
Сообщений: 27286

Создавать темы news_bot ® написал(а)
06-Авг-2020 20:31

КПДВ — это Change Signature, уже пятый рефакторинг для Swift. Обо всем остальном в новом AppCode 2020.2 — под катом.

Поддержка Swift Package Manager
Мы сделали начальную поддержку SPM-зависимостей в проектах для Xcode, а именно:
  • Отображение зависимостей в окне проекта:
  • Автодополнение, подсветку и навигацию для них, плюс некоторые специфичные для SPM-зависимостей возможности, такие как автодополнение таргетов в Package.swift:

Быстродействие
Мы постоянно работаем над улучшением быстродействия IDE — к примеру, в прошлом релизе получилось ускорить повторное открытие проектов. В версии 2020.2 мы закончили большой кусок работы, переработав механизм индексации. В результате IDE должна стать в целом отзывчивее, а подвисания при открытии проекта или его перезагрузке (например, во время переключений бранчей) должны исчезнуть.
Change Signature
Изменение сигнатуры метода — частая операция. Обычно ее приходится делать с помощью нескольких последовательных рефакторингов переименования, после чего часть работы в любом случае придется делать руками (поменять область видимость, вручную переставить параметры местами и так далее). Теперь AppCode может выполнить все эти действия за один раз — достаточно вызвать рефакторинг Change Signature (⌘F6) на любом использовании метода. Если этот метод был перегружен, можно выбрать, необходимо ли выполнить рефакторинг на базовом методе и перегруженных или только на самом перегруженном методе:

В открывшемся диалоге можно переименовать метод, изменить внутренние и внешние имена параметров, а также добавить новые или удалить существующие параметры. При добавлении параметра можно выставить значение по умолчанию, а затем с помощью чекбокса Optional либо оставить значение в сигнатуре метода, либо вставить его во все вызовы метода:

Самое простое применение — просто поменять местами пару параметров (⌥↑/⌥↓):

Автодополнение
Одно из самых интересных изменений — это использование SourceKit в автодополнении. В прошлом релизе мы начали использовать его во время индексации, с этого релиза начинаем использовать и после нее, добавляя результаты SourceKit к результатам AppCode. В целом, это должно сделать автодополнение более корректным. Кроме этого, есть пачка небольших, но полезных улучшений:
  • Автодополнение для get, set, didSet, и willSet теперь автоматически ставит курсор внутри тела выражения:

  • В режиме Smart теперь показываются конструкторы:
  • Заработало такое же, как в Objective-C, автодополнение имен шрифтов:
  • Trailing closures стали отображаться в списке автодополнения при наборе {:

Инспекции
На смену старому индикатору инспекций пришел новый доработанный виджет, который отображает количество ошибок и предупреждений в текущем файле и позволяет между ними переключаться. По клику на него открывается окно Problems, отображающее все ошибки и предупреждения в текущем файле списком:

Также в нем можно изменить текущий уровень подсветки файла с помощью выпадающего списка Highlight...
Пулл-реквесты GitHub

Как и все IDE от JetBrains, AppCode получил полную поддержку пулл-реквестов GitHub, которая включает в себя следующие возможности:
  • Отображение всей информации по пулл-реквесту (название, автор, переписка и др.) в отдельном окне
  • Полная интеграция работы с ревью: теперь можно прямо из IDE начать или запросить ревью своих изменений, оставить комментарий или отправить изменения на ревью.
  • Merge прямо из IDE.

На этом всё! Все вопросы и пожелания пишите прямо тут в комментариях — будем рады ответить!
Команда AppCode
===========
Источник:
habr.com
===========

Похожие новости: Теги для поиска: #_razrabotka_pod_ios (Разработка под iOS), #_razrabotka_mobilnyh_prilozhenij (Разработка мобильных приложений), #_xcode, #_swift, #_swift, #_ios, #_change_signature, #_appcode, #_refaktoring (рефакторинг), #_swift_package_manager, #_blog_kompanii_jetbrains (
Блог компании JetBrains
)
, #_razrabotka_pod_ios (
Разработка под iOS
)
, #_razrabotka_mobilnyh_prilozhenij (
Разработка мобильных приложений
)
, #_xcode, #_swift
Профиль  ЛС 
Показать сообщения:     

Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете голосовать в опросах
Вы не можете прикреплять файлы к сообщениям
Вы не можете скачивать файлы

Текущее время: 22-Ноя 17:52
Часовой пояс: UTC + 5