Создать заголовок и файл реализации в swift

Это скорее вопрос стиля кодирования, но я считаю, что он действителен. Исходя из фона, я всегда создаю .h и .m при создании класса. Однако с быстрым изменением и всем, что входит в один файл. Я знаю, что для некоторых это классно, но мне не хватает двух разных вещей.

Цитата из комментария Zaph

"Я скучаю, это список общественных методов, а не поиск весь исходный файл для методов, не отмеченных частным. Eсть концепция программирования" запись в интерфейс ". И общественность методы должны быть тщательно подобраны не только потому, что разработчик забыл сделать некоторые частные."

Есть ли способ иметь класс - класс реализации в отдельных файлах с помощью swift? Может быть, какой-то трюк?

Спасибо

Ответ 1

Возможно, вы можете использовать Сгенерированный интерфейс, чтобы просмотреть все общедоступные методы и свойства. Вы можете найти эту опцию в нижней части связанных файлов в верхнем левом углу окна редактора. Чтобы вернуться назад, нажмите Исходный источник в том же всплывающем окне.

Создать интерфейс

Вот как выглядит сгенерированный файл интерфейса.

Сгенерированный файл интерфейса

Ответ 2

Насколько я знаю, это невозможно. При этом, если вы правильно указали свои .swift файлы, они все еще очень читаемы. Я склонен следовать этому в качестве ориентира для стилизации в swift, и я обнаружил, что он разбивает вещи на читаемые разделы, особенно используя //MARK: также.

Ответ 3

Короче говоря, нет.. Но что вам не хватает..? Как только вы привыкнете к этому, вы, вероятно, предпочтете это так! Старое разделение не имеет явного преимущества над этим новым!

Ответ 4

Все больше и больше языков используют этот подход, поскольку он уменьшает связь и ошибки. Поэтому, когда вы меняете подпись функции, нужно проверить другой файл, чтобы обновить ее, это только дублирование без какого-либо добавленного значения.

Проблема, которую вы описываете (как видеть только "общедоступные" функции) обычно делается с помощью инструментов покупки (IDE) или генераторов документации.

Ответ 5

Вы можете создать 2 быстрых файла:

  • YourClassNameHeader.swift

class YourClassName {//помещаем сюда все ваши свойства
}

  1. YourClassNameMethods.swift или YourClassNamePrivate.swift

extension YourClassName {//помещаем сюда все частные методы и свойства}

Но в целом его не очень хорошая практика