создать шаблон проекта - или просто zip-файл с шаблоном.
сначала определите, где вы можете использовать (что-то вроде) xml defs вместо переопределения и других изменений уровня источника.
Всегда устанавливаются разные изображения для визуальных элементов (для элементов управления, видов, значков и т. Д.);
добавить ресурсы-заполнители в шаблон проекта
Редко разные файлы XIB для небольшого изменения структуры пользовательского интерфейса
добавить его в проект, ссылаясь на изменения (если они изменились) через vc
Визуальные настройки - уровень кода;
основных библиотек, общих для всех проектов. рассмотрите возможность использования c или c ++, если библиотека будет большой. объект не может быть удален. он содержит заглушки реализации, а также общий код, базовые классы и интерфейсы.
Небольшие функциональные модификации
расширяет интерфейс ваших основных классов, так что подклассы могут легко реализовывать частые изменения. эти файлы являются частью шаблона.
Возможность возврата к предыдущим персонализированным версиям;
это должно быть в vc, и версии зависимостей также должны отслеживаться.
Один функциональный движок (например, функция поиска);
неопределенная фабричная функция достаточно проста:
id<MONSearchEngineProtocol> MONAppCoreCreateSearchEngine();
объявить его в статической библиотеке, но определить (и реализовать то, что необходимо) в одном из конкретных источников проекта. Вы можете добавить это в других местах - некоторые люди добавят его в контроллер приложения и переопределят.
если у вас есть много таких для управления, рассмотрите возможность перемещения ваших ресурсов в код (вместо того, чтобы управлять кучей перьев). nib определяет много кода, который представляет собой практически дублированный код для управления. для некоторых ресурсов это будет иметь смысл, а для других - не очень.