Делаем жизнь лучше с CocoaPods
description
Transcript of Делаем жизнь лучше с CocoaPods
Делаем жизнь лучшес CocoaPods
Глеб Тарасов31 мая 2013
Предшественники• RubyGems, Ruby (2001 год)
• Maven, Java (2002 год)
• pip, Python (2008 год)
• Nuget, C# (2010 год)
CocoaPods, Objective-C (2011 год)
Варианты подключения библиотек
Скачать, положить в папочку и добавить в
проект– легкая первая установка– легко допиливать библиотеку– сложно обновлять– невозможно слить свои изменения с обновлением
Подключить как git submodule (svn externals)
Ссылка на HEAD
Ссылка на тег версии
Ссылка на свой fork
– неприятно добавлять– гораздо проще с изменениями, обновлением и слиянием– но обновление все еще целая проблема:
– сделать pull– передобавить в проект– проверить не отвалились ли зависимости– …
Использовать CocoaPods
pod 'AFNetworking'pod 'MagicalRecord'pod 'Nimbus'pod 'P34Utils'
Podfile
$ pod install
Workspace
Проект Pods
platform :ios, '5.0'
pod 'P34Utils', :git => 'https://github.com/pilot34/P34Utils.git', :branch => 'minimal'
pod 'P34FilesDownloader', :git => 'https://github.com/pilot34/P34FilesDownloader.git'
pod 'MagicalRecord'
pod 'AFNetworking', '0.5.1'
pod 'vfrReader', :git => 'https://github.com/pilot34/Reader.git'
pod 'NSDate-TimeDifference', :git => 'https://github.com/pilot34/NSDate-
TimeDifference.git'
pod 'DETweetComposeViewController'
Podfile
Демо(подключаем AFNetwokring)
Как работает?https://github.com/CocoaPods/Specs
Исправляем чужие библиотеки
1. делаем fork библиотеки
2. делаем fork CocoaPods Specs repo
2. кладем исправленный Podspec файл в наш fork
3. указываем кастомную git ссылку в Podfile
3. исправляем там Podspec
Пишем свои библиотеки
1. пишем библиотеку
3. делаем fork CocoaPods Specs repo
3. кладем Podspec файл в наш репозиторий
4. указываем кастомную git ссылку в Podfile
4. добавляем Podspec туда
2. пишем для нее Podspec
5. делаем pull request в общий Specs repo
Демо(пишем библиотеку)
Проблемы
• Перевод существующего проекта может затянуться
• Зависимость еще от одного вендора• Неудобно одновременно дописывать и программу и библиотеку
Что почитать:
• http://www.raywenderlich.com/ru/25225/Введение-в-cocoapods
• http://cocoapods.org
Если осталось время
Crashlyticshttps://www.crashlytics.com
Twitter$100 млн
Всё, спасибо!