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

Как использовать пространства имен в коде iOS objective-c?

Я пишу приложение iOS, "Лучшая Корея". Название моей организации - "Srsly.co". Я собираюсь писать повторно используемые библиотеки новостей, которые я буду использовать в своих приложениях.

Каждое приложение iOS будет иметь свои собственные константы приложения в файле .h, а код библиотеки будет иметь свои константы, а также в заголовочных файлах. У меня также будут тесты для каждого из этих проектов.

Это стандартный способ делать вещи?

В Ruby, Python, Java и т.д. я установил пространства имен в этих строках:

co.srsly.bestkorea
co.srsly.bestkorea.test
co.srsly.newslib
co.srsly.newslib.test

Насколько я вижу, шаблон Objective-C предназначен для каждого разработчика, чтобы выбрать две или три буквы верхнего регистра и префикс каждого имени класса с ними.

Итак, в моем случае, я думаю, что я выбрал бы BK как префикс класса приложения и NL для кода новостной библиотеки? Думаю ли я об этом правильно?

EDIT: Я рассматриваю возможность использования пространства имен вообще в моем коде приложения, как обсуждалось здесь.

4b9b3361

Ответ 1

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

Ответ 2

В Objective-C отсутствует имя Name в пространстве, которое вы ожидаете в Java.

Objective-C использует префикс класса как NS, UI, CG, CF и т.д., чтобы безопасно удалять столкновения имен.

И было бы лучше использовать 3-буквенный префикс для вашего класса.

Вы должны прочитать следующее: Каков наилучший способ решения конфликта пространства имен Objective-C?