Подтвердить что ты не робот

Любой эквивалент ReSharper для Xcode?

Я полный новичок Xcode/ Objective-C/Cocoa, но я быстро учусь и действительно получаю удовольствие от общения с новым языком, платформой и парадигмой.

Однако, несмотря на то, что я использовал Visual Studio с R # так долго, я немного испорчен инструментами кодирования, такими как рефакторинг и завершение и т.д., и насколько я могу судить, Xcode имеет довольно ограниченную встроенную поддержка этого материала.

В этой записке кто-нибудь знает, есть ли какие-либо надстройки или что-то еще для среды Xcode, которые добавляют помощники кодирования, такие как автоматическое создание скелетов реализации из определения интерфейса класса и т.д.?

Я подозреваю, что нет, но я полагаю, что это не может не спросить.

4b9b3361

Ответ 1

Звучит так, как будто вы ищете три основные вещи: шаблоны кода, инструменты рефакторинга и автозаполнение.

Хорошей новостью является то, что Xcode 3 и более поздние версии обеспечивают превосходное автозаполнение и поддержку шаблонов. По умолчанию вам необходимо явно запросить завершение, нажав клавишу escape. (Это действительно работает во всех NSTextView s, попробуйте!) Если вы хотите, чтобы пополнения отображались автоматически, вы можете перейти в Настройки Смысл кода и установить всплывающее окно появится автоматически через несколько секунд. Вы должны найти хорошие дополнения для кода C и Objective-C и довольно хорошие дополнения для С++.

Xcode также имеет прочную систему шаблонов/скелетов, которую вы можете использовать. Вы можете увидеть, какие шаблоны доступны по умолчанию, выбрав "Редактировать" → "Вставить текстовый макрос". Конечно, вы не хотите вставлять текстовые макросы с помощью мыши; который побеждает точку. Вместо этого у вас есть два варианта:

  • Вернитесь в Предпочтения, перейдите в привязки клавиш, а затем под привязкой клавиш меню назначьте специальный ярлык для макросов, которые вы часто используете, Я лично не беспокоюсь об этом, но я знаю много отличных разработчиков Mac, которые делают
  • Используйте CompletionPrefix. По умолчанию почти все шаблоны имеют специальный префикс, который, если вы наберете и затем удалите ключ escape, приведет к вставке шаблона. Вы можете использовать Control-/для перемещения между полями завершения.

    Вы можете увидеть полный список макросов по умолчанию для Xcode и связанных с ними CompletionPrefix es в Croked Spin.

    Вы также можете добавить свои собственные макросы или изменить значения по умолчанию. Для этого отредактируйте файл /Developer/Library/Xcode/Specifications/{C,HTML}.xctxtmacro. Синтаксис должен быть самоочевидным, если не очень дружелюбным.

К сожалению, если вы зависимы от R #, вы будете разочарованы своими вариантами рефакторинга. Базовый рефакторинг предоставляется в Xcode через контекстное меню или путем нажатия Shift-Apple-J. Оттуда вы можете извлекать и переименовывать методы, продвигать и понижать их по иерархии классов и несколько других общих операций. К сожалению, ни Xcode, ни сторонние утилиты не предлагают ничего, что подходит к Resharper, поэтому на этом фронте вам пока что не повезло. К счастью, Apple уже продемонстрировала версии Xcode в своих работах, которые значительно улучшили возможности рефакторинга, поэтому, надеюсь, вам не придется ждать слишком долго, пока ситуация не начнет улучшаться.

Ответ 2

Я рад сказать, что JetBrains решили сделать достойную IDE для Objective-C кодеров.

Он называется AppCode, и он основан на других инструментах, таких как RubyMine и Resharper. Он не является родным Cocoa, но имеет массу необработанной мощности рефакторинга.

http://www.jetbrains.com/objc/index.html

Я начал использовать его для моего основного проекта Objective C, и я уже влюблен. Он все еще находится в нем, но для редактирования кода и рефакторинга он уже удаляет Xcode.

Обновление

Теперь он полностью работоспособен. Я переключился на это на полный рабочий день, и мне все еще кажется, что потрясающий рефакторинг и кодирование сравниваются с Xcode. Он просто обрабатывает так много для вас - автоматический импорт, почти бесконечная настройка. Это делает Xcode похожим на игрушку.

Ответ 3

У Xcode есть рефакторинг для C и Objective-C. Просто выберите то, что вы хотите рефакторировать, выберите "Рефакторинг..." из панели меню или контекстного меню, и вы получите окно, включающее доступные рефакторинги и область предварительного просмотра.

В настоящее время Xcode не имеет открытого API подключаемого модуля; если есть определенные типы плагинов, которые вы хотели бы включить Apple, запросы на улучшение файлов в Репортер ошибок. Таким образом, Apple может рассчитывать и отслеживать такие запросы.

Однако существуют сторонние инструменты, такие как Accessorizer и mogenerator (последняя версия mogenerator 1.10), которые вы можете использовать для ускорения выполнения различных задач разработки. Accessorizer помогает вам создавать методы доступа для ваших классов, а mogenerator - более сложная генерация кода для классов объектов, управляемых базовыми данными, которые моделируются с использованием инструментов моделирования Xcode.

Ответ 4

Просто, чтобы люди знали, Accessorizer делает больше, чем просто генерирует accessors (как 1.0, так и свойства для 2.0), он также генерирует Core Data код для сохраняющихся нестандартных атрибутов, ваши NSSet-аксессоры для пользовательских ко многим отношениям.

Фактически Accessorizer поможет предоставить вам доступ к ключам init, keypath, keyed-archiving, индексированным аксессуарам, аксессуарам для неупорядоченных коллекций такие как NSSet, copyWithZone, KVO, проверка ключа, односторонние переопределения, dealloc, setNilForKey, нестандартная стойкость атрибутов (Core Data), блокировка, headerdoc, метод преобразования для селектора, методы NSUndoManager и т.д.

Ответ 5

Я нашел некоторые файлы xtmacro в пакете Xcode.app: /Developer/Applications/Xcode.app/Contents/PlugIns/TextMacros.xctxtmacro/Contents/Resources

Установленный Xcode ver. 3.2.5.