в чем разница между целью и проектом?

#iphone #cocoa-touch #xcode #ipad #xcode4

#iPhone #cocoa-touch #xcode #iPad #xcode4

Вопрос:

вот изображения проекта и цели

в чем разница между этими двумя?

почему дано и то, и другое? введите описание изображения здесь

Изображение project..

введите описание изображения здесь Изображение target..

Ответ №1:

  • Проект — это набор файлов и общих настроек.
  • Target — это подмножество файлов и конкретные настройки (которые переопределяют настройки проекта).
  • Каждая цель создает продукт, который может быть библиотекой, исполняемым файлом или фреймворком.
  • Поскольку target что-то создает, у него также есть этапы сборки и правила сборки, где вы можете добавлять зависимости и уточнять, что копируется, где и как.

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

Ответ №2:

  • Проект — это хранилище для всех файлов, ресурсов и информации, необходимых для создания одного или нескольких программных продуктов.
  • Target указывает продукт для сборки и содержит инструкции по сборке продукта из набора файлов в проекте или рабочей области.

Это хорошо задокументировано здесь, в официальных документах Apple — Концепции Xcode. Я только что прочитал это. Это могло бы очень помочь.

Ответ №3:

В одном проекте xcode может быть несколько целевых объектов. Таким образом, вы можете разработать проект, содержащий несколько приложений или фреймворков, например, приложение, которое также включает фреймворк, над которым вы работаете. Вы можете заставить xcode скомпилировать целевой фреймворк, затем он может скомпилировать другую цель, ваше фактическое приложение и скопировать фреймворк по пути frameworks в пакете.

Ответ №4:

  • project — это контейнер для всех файлов и ресурсов, необходимых для создания одного или нескольких программных продуктов. Проект содержит одну или несколько целей, которые определяют, как создавать продукты. Он определяет настройки сборки по умолчанию для всех целевых объектов в проекте. Однако каждая цель может указывать свои собственные настройки сборки, переопределяя таким образом настройки уровня проекта по умолчанию.
  • С другой стороны, target указывает продукт для сборки и содержит инструкции по сборке продукта из набора файлов в проекте. Target определяет отдельный продукт и организует входные данные в систему сборки. Проекты могут содержать одну или несколько целей, каждая из которых производит один продукт.