2016-09-05 5 views
1

Я разрабатываю приложение для IOS, и мне нужно использовать некоторые фреймворки. как вы знаете, Cocoa pods и Carthage являются менеджером зависимостей для iOS и Mac OS , мой вопрос: «Почему мы должны использовать менеджер зависимостей ?, вместо того, чтобы использовать менеджер зависимостей, просто клонировать этот проект [был написан другим программистом и может использоваться как рамки] и перетащить на ваш проект? "Почему мы должны использовать диспетчер зависимостей?

Спасибо за ваши ответы

ответ

1

В какой-то момент вы можете захотеть использовать 3-й код партии, чтобы получить дополнительные функции или что-то, вы можете скопировать исходный код, но как вы будете обновлять его в будущем ? продолжайте справляться с этим снова!

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

Менеджеры зависимостей обрабатывают все это для вас.

Мой совет - использовать Карфаген или подмодули, но не использовать CocoPods, все, что касается файла проекта, не является хорошей практикой с Apple.

+0

Да, Карфаген намного лучше, чем CocoPods – Ehsan

+0

Не согласен с использованием CocoaPods. Это зависит от того, где использовать что. Cocoapods - это самое простое решение менеджера зависимостей. Также у меня нет проблем при его использовании. – mkeremkeskin

+0

Не уверен, что вы подразумеваете под большинством простейших, Карфаген делает все, что не влияет на обновление рабочего файла/файла проекта. Это может быть проблемой, но я уверен, что большинство инженеров предпочтут Карфаген из-за менее интрузивной интеграции. – Ash83

2

несколько вещей, которые вы должны думать о том:

  1. Обновление ваших зависимостей, когда новые версии вышли.

  2. Обновление зависимостей для нескольких платформ.

  3. Взаимосвязанные рамки и различные версии каркаса для зависимых фреймворков.

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

1

Почему Библиотеки Ваш Друг

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

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

Без менеджера зависимостей вы просто добавляете каждый код библиотеки в свой проект вручную. Тем не менее, этот подход имеет несколько недостатков:

  1. Обновление библиотеки для новой версии может быть трудно, особенно если несколько библиотек должны быть обновлены вместе, потому что один зависит от другого .
  2. Включая библиотеку в свой проект, возникает соблазн внести локальные изменения в код, что затрудняет обновление до более поздней версии .
  3. Определение текущих версий библиотек, используемых в вашем приложении, может быть затруднено, особенно если вы не упреждаете их отслеживать.
  4. Поиск новых библиотек может быть затруднен без централизованного расположения, чтобы увидеть все доступные библиотеки.
  5. CocoaPods поможет вам преодолеть все эти проблемы и многое другое.Он извлекает библиотечный код, разрешает зависимости между библиотеками, помогает вы ищете и открываете новые библиотеки и даже настраиваете правильную среду , чтобы создать свой проект с минимальными трудностями.

Предоставлено https://www.raywenderlich.com/97014/use-cocoapods-with-swift

Смежные вопросы