Practical Cocoapods
@MicheleTitolo
Objective-C Library
Dependency Manager
Specify Dependencies
Specify Versions
Dependency Resolution
Private Pods
Yes, this is a thing
Theory
You can add a .podspec
to anything
Any remote can be a pod
2 options
Your own Spec repo
└── [SPEC_NAME]
└── [VERSION]
└── [SPEC_NAME].podspec
$ pod repo add NAME SOURCE_URL
$ cd ~/.cocoapods/NAME
$ pod repo lint .
Don’t need a private fork of
CocoaPods/Specs
Any code, anywhere
Specify any remote
that has a .podspec
pod ‘BananaLib’, :git=>git@github.com/…
Podspecs should be in the root
folder of the repository
Specify a .podspec
pod ‘BananaLib’, :podspec => ‘https://…’
Specify a path
pod ‘BananaLib’, :path => ‘~/Projects/…’
Modular Code
Smaller dependencies
Independent pieces
Decouple
More dependencies
“Dependencies are bad!”
Choosing dependencies
Commits
Stars, Watchers, and Forks
Open : Closed Issues
Pull Requests
Look at the code
In Summary
Thank You
@MicheleTitolo
Practical Cocoapods
Practical Cocoapods
Practical Cocoapods
Practical Cocoapods
Practical Cocoapods
Practical Cocoapods
Upcoming SlideShare
Loading in …5
×

Practical Cocoapods

1,054 views

Published on

Practical CocoaPods, from Renaissance.io 2014.

Published in: Technology
0 Comments
3 Likes
Statistics
Notes
  • Be the first to comment

No Downloads
Views
Total views
1,054
On SlideShare
0
From Embeds
0
Number of Embeds
44
Actions
Shares
0
Downloads
15
Comments
0
Likes
3
Embeds 0
No embeds

No notes for slide

Practical Cocoapods

  1. 1. Practical Cocoapods @MicheleTitolo
  2. 2. Objective-C Library Dependency Manager
  3. 3. Specify Dependencies
  4. 4. Specify Versions
  5. 5. Dependency Resolution
  6. 6. Private Pods
  7. 7. Yes, this is a thing
  8. 8. Theory
  9. 9. You can add a .podspec to anything
  10. 10. Any remote can be a pod
  11. 11. 2 options
  12. 12. Your own Spec repo
  13. 13. └── [SPEC_NAME] └── [VERSION] └── [SPEC_NAME].podspec
  14. 14. $ pod repo add NAME SOURCE_URL $ cd ~/.cocoapods/NAME $ pod repo lint .
  15. 15. Don’t need a private fork of CocoaPods/Specs
  16. 16. Any code, anywhere
  17. 17. Specify any remote that has a .podspec
  18. 18. pod ‘BananaLib’, :git=>git@github.com/…
  19. 19. Podspecs should be in the root folder of the repository
  20. 20. Specify a .podspec
  21. 21. pod ‘BananaLib’, :podspec => ‘https://…’
  22. 22. Specify a path
  23. 23. pod ‘BananaLib’, :path => ‘~/Projects/…’
  24. 24. Modular Code
  25. 25. Smaller dependencies
  26. 26. Independent pieces
  27. 27. Decouple
  28. 28. More dependencies
  29. 29. “Dependencies are bad!”
  30. 30. Choosing dependencies
  31. 31. Commits
  32. 32. Stars, Watchers, and Forks
  33. 33. Open : Closed Issues
  34. 34. Pull Requests
  35. 35. Look at the code
  36. 36. In Summary
  37. 37. Thank You @MicheleTitolo

×