Поддерживаются ли частные платформы на iOS? - PullRequest
7 голосов
/ 20 июля 2011

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

Мне нравится понятие «частные рамки» в настольном Cocoa, т.е. фреймворки, включенные в комплект приложения. Из моего небольшого опыта фреймворки лучше подходят для повторного использования кода, чем простые библиотеки, поскольку фреймворки могут включать в себя свои собственные заголовки. Это значительно упрощает добавление новой платформы в существующий проект.

Проблема в том, что эти «частные» фреймворки не поддерживаются в iOS. Там вы имеете дело со статическими библиотеками, а управление заголовками - это боль. Есть ли у Apple хорошая техническая причина не поддерживать фреймворки на iOS?

(Просто чтобы убедиться: Apple, к сожалению, использует термин «частная структура» для двух вещей. Первая - «пользовательские» платформы, которые поставляются вместе с приложением, вторая - недокументированные и запрещенные среды, которые люди не должны использовать на iOS. Я спрашиваю о первом.)

PS. Изменилось ли это в iOS 8? В Xcode 6 есть шаблон «Cocoa Touch Framework».

1 Ответ

2 голосов
/ 10 июня 2014

Похоже, что пользовательские платформы теперь поддерживаются Xcode 6 :

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

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...