SlideShare ist ein Scribd-Unternehmen logo
1 von 15
Downloaden Sie, um offline zu lesen
Using 3rd Party Libraries /
Frameworks in iOS
Lecture 09
Jonathan R. Engelsma, Ph.D.
TOPICS
• Motivation
• UsefulThird Party Libraries
• Working with CocoaPods
WHY USE 3RD PARTY
LIBRARIES?
• Duh…..
• Avoid reinventing the wheel?
• Take advantage of tons of amazing open source software -
often written by smarter-than-average developers!
• Make your app more feature rich (and shiny) with less work!
AFNETWORKING
• Most popular networking library for iOS
• Extends the foundation networking frameworks on
iOS.
• More info: https://github.com/AFNetworking/
AFNetworking
NIMBUS
• iOS toolkit with commonly needed
components
• Well documented!
• http://nimbuskit.info/
CORE PLOT
• 2D Plotting Framework for iOS
and OS X.
• Supports a wide variety of
different kinds of graphs/plots.
• https://github.com/core-plot/core-
plot
FMDB
• An Cocoa/Objective-C wrapper around SQLite
• Higher level API that makes interacting with SQLite DB’s easy.
• https://github.com/ccgus/fmdb
SSTOOLKIT
• a collection of well-documented iOS
classes for making life easier by
solving common problems all iOS
developers face.
• http://sstoolk.it/
MBPROGRESSHUD
• translucent HUD with an indicator
and/or labels while work is being done
in a background thread.
• https://github.com/jdg/
MBProgressHUD
• Style your native iOS/Android apps using CSS
• Open source project has graduated into a startup
(pixate.com - beautiful but not free)!
• http://www.freestyle.org/
FONT AWESOME FOR IOS
• a Objective-C category that brings Font
awesome (an iconic font) to iOS.
• https://github.com/alexdrone/ios-
fontawesome
COCOACONTROLS.COM
COCOAPODS
• A popular dependency manager for Objective-C projects.
• Thousands of libraries/frameworks supported.
• Popular in the open source community.
• http://cocoapods.org/
WHY A DEPENDENCY MGR?
• Why not just manually download library/framework and add
to your project?
• library code is stored in each project you use it, wasting
space.
• No global catalog of available libraries that you can search..
• Difficult to update libraries to a new version, especially if
several libraries need to be updated together.
• You will be tempted to modify the code, making future
updates difficult!
COCOAPODS DEMO

Weitere ähnliche Inhalte

Was ist angesagt?

Xcode, Basics and Beyond
Xcode, Basics and BeyondXcode, Basics and Beyond
Xcode, Basics and Beyondrsebbe
 
CocoaHeads Toulouse - iOS TechTalk - Mélanie Bessagnet
CocoaHeads Toulouse - iOS TechTalk - Mélanie BessagnetCocoaHeads Toulouse - iOS TechTalk - Mélanie Bessagnet
CocoaHeads Toulouse - iOS TechTalk - Mélanie BessagnetCocoaHeads France
 
Cross-Platform Desktop Apps with Electron (Condensed Version)
Cross-Platform Desktop Apps with Electron (Condensed Version)Cross-Platform Desktop Apps with Electron (Condensed Version)
Cross-Platform Desktop Apps with Electron (Condensed Version)David Neal
 
Presentation on java
Presentation on javaPresentation on java
Presentation on javatopu93
 
Computer Devices - What Are they?
Computer Devices - What Are they?Computer Devices - What Are they?
Computer Devices - What Are they?Andrew Willetts
 
Independent Development and Writing Your Own Engine
Independent Development and Writing Your Own EngineIndependent Development and Writing Your Own Engine
Independent Development and Writing Your Own EngineananseKmensah
 
Build IoT Applications with C#
Build IoT Applications with C#Build IoT Applications with C#
Build IoT Applications with C#Ken Samson, MISM
 
Jailbreaking iOS
Jailbreaking iOSJailbreaking iOS
Jailbreaking iOSKai Aras
 
Breaking The Confinement Cycle Using Linux
Breaking The Confinement Cycle Using LinuxBreaking The Confinement Cycle Using Linux
Breaking The Confinement Cycle Using LinuxSpencer Hunley
 
First Steps in iOS Development
First Steps in iOS DevelopmentFirst Steps in iOS Development
First Steps in iOS DevelopmentSasha Goldshtein
 
DNN Connect - Mobile Development With Xamarin
DNN Connect - Mobile Development With XamarinDNN Connect - Mobile Development With Xamarin
DNN Connect - Mobile Development With XamarinMark Allan
 
Jailbreaking iOS
Jailbreaking iOSJailbreaking iOS
Jailbreaking iOSMihir Patel
 

Was ist angesagt? (20)

Unified logging on iOS
Unified logging on iOSUnified logging on iOS
Unified logging on iOS
 
Xcode, Basics and Beyond
Xcode, Basics and BeyondXcode, Basics and Beyond
Xcode, Basics and Beyond
 
CocoaHeads Toulouse - iOS TechTalk - Mélanie Bessagnet
CocoaHeads Toulouse - iOS TechTalk - Mélanie BessagnetCocoaHeads Toulouse - iOS TechTalk - Mélanie Bessagnet
CocoaHeads Toulouse - iOS TechTalk - Mélanie Bessagnet
 
Mocast Postmortem
Mocast PostmortemMocast Postmortem
Mocast Postmortem
 
Core Java
Core JavaCore Java
Core Java
 
DjangoSki
DjangoSkiDjangoSki
DjangoSki
 
Cross-Platform Desktop Apps with Electron (Condensed Version)
Cross-Platform Desktop Apps with Electron (Condensed Version)Cross-Platform Desktop Apps with Electron (Condensed Version)
Cross-Platform Desktop Apps with Electron (Condensed Version)
 
Presentation on java
Presentation on javaPresentation on java
Presentation on java
 
Desktop application
Desktop applicationDesktop application
Desktop application
 
Computer Devices - What Are they?
Computer Devices - What Are they?Computer Devices - What Are they?
Computer Devices - What Are they?
 
Independent Development and Writing Your Own Engine
Independent Development and Writing Your Own EngineIndependent Development and Writing Your Own Engine
Independent Development and Writing Your Own Engine
 
Build IoT Applications with C#
Build IoT Applications with C#Build IoT Applications with C#
Build IoT Applications with C#
 
Jailbreaking iOS
Jailbreaking iOSJailbreaking iOS
Jailbreaking iOS
 
Breaking The Confinement Cycle Using Linux
Breaking The Confinement Cycle Using LinuxBreaking The Confinement Cycle Using Linux
Breaking The Confinement Cycle Using Linux
 
First Steps in iOS Development
First Steps in iOS DevelopmentFirst Steps in iOS Development
First Steps in iOS Development
 
DNN Connect - Mobile Development With Xamarin
DNN Connect - Mobile Development With XamarinDNN Connect - Mobile Development With Xamarin
DNN Connect - Mobile Development With Xamarin
 
Jailbreaking iOS
Jailbreaking iOSJailbreaking iOS
Jailbreaking iOS
 
Sabres groupprojectone
Sabres groupprojectoneSabres groupprojectone
Sabres groupprojectone
 
Corona
CoronaCorona
Corona
 
Inter-process audio options on iOS
Inter-process audio options on iOSInter-process audio options on iOS
Inter-process audio options on iOS
 

Andere mochten auch

NAAS Journal Rating 2013
NAAS Journal Rating 2013NAAS Journal Rating 2013
NAAS Journal Rating 2013sanchu007
 
Encyclopedia marketing management, Terms and Definitions
Encyclopedia marketing management, Terms and DefinitionsEncyclopedia marketing management, Terms and Definitions
Encyclopedia marketing management, Terms and Definitionshttp://www.drawpack.com
 
Encyclopedia human resource, business terms
Encyclopedia human resource, business termsEncyclopedia human resource, business terms
Encyclopedia human resource, business termshttp://www.drawpack.com
 
What Every IT Manager Should Know About Mobile Apps
What Every IT Manager Should Know About Mobile AppsWhat Every IT Manager Should Know About Mobile Apps
What Every IT Manager Should Know About Mobile AppsJonathan Engelsma
 
Selling Honey at Farmers Markets, Expos, etc.
Selling Honey at Farmers Markets, Expos, etc. Selling Honey at Farmers Markets, Expos, etc.
Selling Honey at Farmers Markets, Expos, etc. Jonathan Engelsma
 
Hierarchy diagrams for business presentations
Hierarchy diagrams for business presentationsHierarchy diagrams for business presentations
Hierarchy diagrams for business presentationshttp://www.drawpack.com
 
Line & curve diagrams for business presentations
Line & curve diagrams for business presentationsLine & curve diagrams for business presentations
Line & curve diagrams for business presentationshttp://www.drawpack.com
 
Positioning diagrams for business presentations
Positioning diagrams for business presentationsPositioning diagrams for business presentations
Positioning diagrams for business presentationshttp://www.drawpack.com
 
Encyclopedia economics, Terms and Definitions
Encyclopedia economics, Terms and DefinitionsEncyclopedia economics, Terms and Definitions
Encyclopedia economics, Terms and Definitionshttp://www.drawpack.com
 
150 Business Models for your management presentation
150 Business Models for your management presentation150 Business Models for your management presentation
150 Business Models for your management presentationhttp://www.drawpack.com
 
Organization Management, business presentations
Organization Management, business presentationsOrganization Management, business presentations
Organization Management, business presentationshttp://www.drawpack.com
 
Réseaux Sociaux : Quand le marketing et la DSI partagent leurs expériences.
Réseaux Sociaux : Quand le marketing et la DSI partagent leurs expériences. Réseaux Sociaux : Quand le marketing et la DSI partagent leurs expériences.
Réseaux Sociaux : Quand le marketing et la DSI partagent leurs expériences. Marie_Estager
 

Andere mochten auch (14)

NAAS Journal Rating 2013
NAAS Journal Rating 2013NAAS Journal Rating 2013
NAAS Journal Rating 2013
 
WLC AAR
WLC AARWLC AAR
WLC AAR
 
Encyclopedia marketing management, Terms and Definitions
Encyclopedia marketing management, Terms and DefinitionsEncyclopedia marketing management, Terms and Definitions
Encyclopedia marketing management, Terms and Definitions
 
Encyclopedia human resource, business terms
Encyclopedia human resource, business termsEncyclopedia human resource, business terms
Encyclopedia human resource, business terms
 
What Every IT Manager Should Know About Mobile Apps
What Every IT Manager Should Know About Mobile AppsWhat Every IT Manager Should Know About Mobile Apps
What Every IT Manager Should Know About Mobile Apps
 
Selling Honey at Farmers Markets, Expos, etc.
Selling Honey at Farmers Markets, Expos, etc. Selling Honey at Farmers Markets, Expos, etc.
Selling Honey at Farmers Markets, Expos, etc.
 
Hierarchy diagrams for business presentations
Hierarchy diagrams for business presentationsHierarchy diagrams for business presentations
Hierarchy diagrams for business presentations
 
Line & curve diagrams for business presentations
Line & curve diagrams for business presentationsLine & curve diagrams for business presentations
Line & curve diagrams for business presentations
 
Positioning diagrams for business presentations
Positioning diagrams for business presentationsPositioning diagrams for business presentations
Positioning diagrams for business presentations
 
Encyclopedia general business terms
Encyclopedia general business termsEncyclopedia general business terms
Encyclopedia general business terms
 
Encyclopedia economics, Terms and Definitions
Encyclopedia economics, Terms and DefinitionsEncyclopedia economics, Terms and Definitions
Encyclopedia economics, Terms and Definitions
 
150 Business Models for your management presentation
150 Business Models for your management presentation150 Business Models for your management presentation
150 Business Models for your management presentation
 
Organization Management, business presentations
Organization Management, business presentationsOrganization Management, business presentations
Organization Management, business presentations
 
Réseaux Sociaux : Quand le marketing et la DSI partagent leurs expériences.
Réseaux Sociaux : Quand le marketing et la DSI partagent leurs expériences. Réseaux Sociaux : Quand le marketing et la DSI partagent leurs expériences.
Réseaux Sociaux : Quand le marketing et la DSI partagent leurs expériences.
 

Ähnlich wie iOS Bootcamp: learning to create awesome apps on iOS using Swift (Lecture 09)

A brief intro to RubyMotion
A brief intro to RubyMotionA brief intro to RubyMotion
A brief intro to RubyMotionKamil Lelonek
 
Native App Development for iOS, Android, and Windows with Visual Studio
Native App Development for iOS, Android, and Windows with Visual StudioNative App Development for iOS, Android, and Windows with Visual Studio
Native App Development for iOS, Android, and Windows with Visual StudioXamarin
 
Delphi Prism for iPhone/iPad and Linux with Mono and Monotouch
Delphi Prism for iPhone/iPad and Linux with Mono and MonotouchDelphi Prism for iPhone/iPad and Linux with Mono and Monotouch
Delphi Prism for iPhone/iPad and Linux with Mono and MonotouchAndreano Lanusse
 
Game On With NativeScript
Game On With NativeScriptGame On With NativeScript
Game On With NativeScriptJen Looper
 
Firefox operating system
Firefox operating systemFirefox operating system
Firefox operating systemNishant Mehare
 
Big analytics meetup - Extended Jupyter Kernel Gateway
Big analytics meetup - Extended Jupyter Kernel GatewayBig analytics meetup - Extended Jupyter Kernel Gateway
Big analytics meetup - Extended Jupyter Kernel GatewayLuciano Resende
 
Mobile ECM with JavaScript - JSE 2011
Mobile ECM with JavaScript - JSE 2011Mobile ECM with JavaScript - JSE 2011
Mobile ECM with JavaScript - JSE 2011Nuxeo
 
OSS SW Basics Lecture 03: Fundamental parts of open-source projects
OSS SW Basics Lecture 03: Fundamental parts of open-source projectsOSS SW Basics Lecture 03: Fundamental parts of open-source projects
OSS SW Basics Lecture 03: Fundamental parts of open-source projectsJeongkyu Shin
 
Building a Cross-Platform Mobile SDK in Rust.pdf
Building a Cross-Platform Mobile SDK in Rust.pdfBuilding a Cross-Platform Mobile SDK in Rust.pdf
Building a Cross-Platform Mobile SDK in Rust.pdfIanWagner13
 
GoOpen 2010: David Elboth
GoOpen 2010: David ElbothGoOpen 2010: David Elboth
GoOpen 2010: David ElbothFriprogsenteret
 
AFNetworking
AFNetworking AFNetworking
AFNetworking joaopmaia
 
.NET per la Data Science e oltre
.NET per la Data Science e oltre.NET per la Data Science e oltre
.NET per la Data Science e oltreMarco Parenzan
 
Mozilla + Rust at PCU Manila 02 DEC 2016
Mozilla + Rust at PCU Manila 02 DEC 2016Mozilla + Rust at PCU Manila 02 DEC 2016
Mozilla + Rust at PCU Manila 02 DEC 2016Robert 'Bob' Reyes
 
Portable Class Library Deep Dive
Portable Class Library Deep DivePortable Class Library Deep Dive
Portable Class Library Deep DiveJames Montemagno
 
Top programming Languages in software Industry companies
Top programming Languages in software Industry companiesTop programming Languages in software Industry companies
Top programming Languages in software Industry companiesKiran Patil
 
Let's Write Better Node Modules
Let's Write Better Node ModulesLet's Write Better Node Modules
Let's Write Better Node ModulesKevin Whinnery
 
Starting from scratch in 2017
Starting from scratch in 2017Starting from scratch in 2017
Starting from scratch in 2017Stefano Bonetta
 
Introduction to MonoTouch and Monodroid/Mono for Android
Introduction to MonoTouch and Monodroid/Mono for AndroidIntroduction to MonoTouch and Monodroid/Mono for Android
Introduction to MonoTouch and Monodroid/Mono for AndroidChris Hardy
 
What Is The BEST WAY TO LEARN PYTHON In 2023.pptx
What Is The BEST WAY TO LEARN PYTHON In 2023.pptxWhat Is The BEST WAY TO LEARN PYTHON In 2023.pptx
What Is The BEST WAY TO LEARN PYTHON In 2023.pptxcalltutors
 

Ähnlich wie iOS Bootcamp: learning to create awesome apps on iOS using Swift (Lecture 09) (20)

A brief intro to RubyMotion
A brief intro to RubyMotionA brief intro to RubyMotion
A brief intro to RubyMotion
 
Native App Development for iOS, Android, and Windows with Visual Studio
Native App Development for iOS, Android, and Windows with Visual StudioNative App Development for iOS, Android, and Windows with Visual Studio
Native App Development for iOS, Android, and Windows with Visual Studio
 
Delphi Prism for iPhone/iPad and Linux with Mono and Monotouch
Delphi Prism for iPhone/iPad and Linux with Mono and MonotouchDelphi Prism for iPhone/iPad and Linux with Mono and Monotouch
Delphi Prism for iPhone/iPad and Linux with Mono and Monotouch
 
Game On With NativeScript
Game On With NativeScriptGame On With NativeScript
Game On With NativeScript
 
Firefox operating system
Firefox operating systemFirefox operating system
Firefox operating system
 
Big analytics meetup - Extended Jupyter Kernel Gateway
Big analytics meetup - Extended Jupyter Kernel GatewayBig analytics meetup - Extended Jupyter Kernel Gateway
Big analytics meetup - Extended Jupyter Kernel Gateway
 
Mobile ECM with JavaScript - JSE 2011
Mobile ECM with JavaScript - JSE 2011Mobile ECM with JavaScript - JSE 2011
Mobile ECM with JavaScript - JSE 2011
 
OSS SW Basics Lecture 03: Fundamental parts of open-source projects
OSS SW Basics Lecture 03: Fundamental parts of open-source projectsOSS SW Basics Lecture 03: Fundamental parts of open-source projects
OSS SW Basics Lecture 03: Fundamental parts of open-source projects
 
Building a Cross-Platform Mobile SDK in Rust.pdf
Building a Cross-Platform Mobile SDK in Rust.pdfBuilding a Cross-Platform Mobile SDK in Rust.pdf
Building a Cross-Platform Mobile SDK in Rust.pdf
 
GoOpen 2010: David Elboth
GoOpen 2010: David ElbothGoOpen 2010: David Elboth
GoOpen 2010: David Elboth
 
AFNetworking
AFNetworking AFNetworking
AFNetworking
 
.NET per la Data Science e oltre
.NET per la Data Science e oltre.NET per la Data Science e oltre
.NET per la Data Science e oltre
 
Mozilla + Rust at PCU Manila 02 DEC 2016
Mozilla + Rust at PCU Manila 02 DEC 2016Mozilla + Rust at PCU Manila 02 DEC 2016
Mozilla + Rust at PCU Manila 02 DEC 2016
 
Portable Class Library Deep Dive
Portable Class Library Deep DivePortable Class Library Deep Dive
Portable Class Library Deep Dive
 
Evalution about programming language part 1
Evalution about programming language part 1Evalution about programming language part 1
Evalution about programming language part 1
 
Top programming Languages in software Industry companies
Top programming Languages in software Industry companiesTop programming Languages in software Industry companies
Top programming Languages in software Industry companies
 
Let's Write Better Node Modules
Let's Write Better Node ModulesLet's Write Better Node Modules
Let's Write Better Node Modules
 
Starting from scratch in 2017
Starting from scratch in 2017Starting from scratch in 2017
Starting from scratch in 2017
 
Introduction to MonoTouch and Monodroid/Mono for Android
Introduction to MonoTouch and Monodroid/Mono for AndroidIntroduction to MonoTouch and Monodroid/Mono for Android
Introduction to MonoTouch and Monodroid/Mono for Android
 
What Is The BEST WAY TO LEARN PYTHON In 2023.pptx
What Is The BEST WAY TO LEARN PYTHON In 2023.pptxWhat Is The BEST WAY TO LEARN PYTHON In 2023.pptx
What Is The BEST WAY TO LEARN PYTHON In 2023.pptx
 

Mehr von Jonathan Engelsma

Knowing Your Bees: Becoming a Better Beekeeper
Knowing Your Bees: Becoming a Better BeekeeperKnowing Your Bees: Becoming a Better Beekeeper
Knowing Your Bees: Becoming a Better BeekeeperJonathan Engelsma
 
BIP Hive Scale Program Overview
BIP Hive Scale Program OverviewBIP Hive Scale Program Overview
BIP Hive Scale Program OverviewJonathan Engelsma
 
Harvesting and Handling Honey for Hobby and Small Sideline Beekeepers
Harvesting and Handling Honey for Hobby and Small Sideline BeekeepersHarvesting and Handling Honey for Hobby and Small Sideline Beekeepers
Harvesting and Handling Honey for Hobby and Small Sideline BeekeepersJonathan Engelsma
 
iOS Bootcamp: learning to create awesome apps on iOS using Swift (Lecture 05)
iOS Bootcamp: learning to create awesome apps on iOS using Swift (Lecture 05)iOS Bootcamp: learning to create awesome apps on iOS using Swift (Lecture 05)
iOS Bootcamp: learning to create awesome apps on iOS using Swift (Lecture 05)Jonathan Engelsma
 
iOS Bootcamp: learning to create awesome apps on iOS using Swift (Lecture 04)
iOS Bootcamp: learning to create awesome apps on iOS using Swift (Lecture 04)iOS Bootcamp: learning to create awesome apps on iOS using Swift (Lecture 04)
iOS Bootcamp: learning to create awesome apps on iOS using Swift (Lecture 04)Jonathan Engelsma
 
iOS Bootcamp: learning to create awesome apps on iOS using Swift (Lecture 03)
iOS Bootcamp: learning to create awesome apps on iOS using Swift (Lecture 03) iOS Bootcamp: learning to create awesome apps on iOS using Swift (Lecture 03)
iOS Bootcamp: learning to create awesome apps on iOS using Swift (Lecture 03) Jonathan Engelsma
 
iOS Bootcamp: learning to create awesome apps on iOS using Swift (Lecture 02)
iOS Bootcamp: learning to create awesome apps on iOS using Swift (Lecture 02) iOS Bootcamp: learning to create awesome apps on iOS using Swift (Lecture 02)
iOS Bootcamp: learning to create awesome apps on iOS using Swift (Lecture 02) Jonathan Engelsma
 
So You Want To Be a Beekeeper?
So You Want To Be a Beekeeper? So You Want To Be a Beekeeper?
So You Want To Be a Beekeeper? Jonathan Engelsma
 
2013 Michigan Beekeepers Association Annual Spring Conference
2013 Michigan Beekeepers Association Annual Spring Conference2013 Michigan Beekeepers Association Annual Spring Conference
2013 Michigan Beekeepers Association Annual Spring ConferenceJonathan Engelsma
 
2012 Michigan Beekeepers Association Annual Spring Conference - Beekeepers On...
2012 Michigan Beekeepers Association Annual Spring Conference - Beekeepers On...2012 Michigan Beekeepers Association Annual Spring Conference - Beekeepers On...
2012 Michigan Beekeepers Association Annual Spring Conference - Beekeepers On...Jonathan Engelsma
 

Mehr von Jonathan Engelsma (12)

Knowing Your Bees: Becoming a Better Beekeeper
Knowing Your Bees: Becoming a Better BeekeeperKnowing Your Bees: Becoming a Better Beekeeper
Knowing Your Bees: Becoming a Better Beekeeper
 
BIP Hive Scale Program Overview
BIP Hive Scale Program OverviewBIP Hive Scale Program Overview
BIP Hive Scale Program Overview
 
Selling Honey Online
Selling Honey OnlineSelling Honey Online
Selling Honey Online
 
Harvesting and Handling Honey for Hobby and Small Sideline Beekeepers
Harvesting and Handling Honey for Hobby and Small Sideline BeekeepersHarvesting and Handling Honey for Hobby and Small Sideline Beekeepers
Harvesting and Handling Honey for Hobby and Small Sideline Beekeepers
 
iOS Bootcamp: learning to create awesome apps on iOS using Swift (Lecture 05)
iOS Bootcamp: learning to create awesome apps on iOS using Swift (Lecture 05)iOS Bootcamp: learning to create awesome apps on iOS using Swift (Lecture 05)
iOS Bootcamp: learning to create awesome apps on iOS using Swift (Lecture 05)
 
iOS Bootcamp: learning to create awesome apps on iOS using Swift (Lecture 04)
iOS Bootcamp: learning to create awesome apps on iOS using Swift (Lecture 04)iOS Bootcamp: learning to create awesome apps on iOS using Swift (Lecture 04)
iOS Bootcamp: learning to create awesome apps on iOS using Swift (Lecture 04)
 
iOS Bootcamp: learning to create awesome apps on iOS using Swift (Lecture 03)
iOS Bootcamp: learning to create awesome apps on iOS using Swift (Lecture 03) iOS Bootcamp: learning to create awesome apps on iOS using Swift (Lecture 03)
iOS Bootcamp: learning to create awesome apps on iOS using Swift (Lecture 03)
 
iOS Bootcamp: learning to create awesome apps on iOS using Swift (Lecture 02)
iOS Bootcamp: learning to create awesome apps on iOS using Swift (Lecture 02) iOS Bootcamp: learning to create awesome apps on iOS using Swift (Lecture 02)
iOS Bootcamp: learning to create awesome apps on iOS using Swift (Lecture 02)
 
So You Want To Be a Beekeeper?
So You Want To Be a Beekeeper? So You Want To Be a Beekeeper?
So You Want To Be a Beekeeper?
 
Mobile Gamification
Mobile GamificationMobile Gamification
Mobile Gamification
 
2013 Michigan Beekeepers Association Annual Spring Conference
2013 Michigan Beekeepers Association Annual Spring Conference2013 Michigan Beekeepers Association Annual Spring Conference
2013 Michigan Beekeepers Association Annual Spring Conference
 
2012 Michigan Beekeepers Association Annual Spring Conference - Beekeepers On...
2012 Michigan Beekeepers Association Annual Spring Conference - Beekeepers On...2012 Michigan Beekeepers Association Annual Spring Conference - Beekeepers On...
2012 Michigan Beekeepers Association Annual Spring Conference - Beekeepers On...
 

Kürzlich hochgeladen

Mixin Classes in Odoo 17 How to Extend Models Using Mixin Classes
Mixin Classes in Odoo 17  How to Extend Models Using Mixin ClassesMixin Classes in Odoo 17  How to Extend Models Using Mixin Classes
Mixin Classes in Odoo 17 How to Extend Models Using Mixin ClassesCeline George
 
SKILL OF INTRODUCING THE LESSON MICRO SKILLS.pptx
SKILL OF INTRODUCING THE LESSON MICRO SKILLS.pptxSKILL OF INTRODUCING THE LESSON MICRO SKILLS.pptx
SKILL OF INTRODUCING THE LESSON MICRO SKILLS.pptxAmanpreet Kaur
 
On National Teacher Day, meet the 2024-25 Kenan Fellows
On National Teacher Day, meet the 2024-25 Kenan FellowsOn National Teacher Day, meet the 2024-25 Kenan Fellows
On National Teacher Day, meet the 2024-25 Kenan FellowsMebane Rash
 
General Principles of Intellectual Property: Concepts of Intellectual Proper...
General Principles of Intellectual Property: Concepts of Intellectual  Proper...General Principles of Intellectual Property: Concepts of Intellectual  Proper...
General Principles of Intellectual Property: Concepts of Intellectual Proper...Poonam Aher Patil
 
ComPTIA Overview | Comptia Security+ Book SY0-701
ComPTIA Overview | Comptia Security+ Book SY0-701ComPTIA Overview | Comptia Security+ Book SY0-701
ComPTIA Overview | Comptia Security+ Book SY0-701bronxfugly43
 
Kodo Millet PPT made by Ghanshyam bairwa college of Agriculture kumher bhara...
Kodo Millet  PPT made by Ghanshyam bairwa college of Agriculture kumher bhara...Kodo Millet  PPT made by Ghanshyam bairwa college of Agriculture kumher bhara...
Kodo Millet PPT made by Ghanshyam bairwa college of Agriculture kumher bhara...pradhanghanshyam7136
 
Unit-IV- Pharma. Marketing Channels.pptx
Unit-IV- Pharma. Marketing Channels.pptxUnit-IV- Pharma. Marketing Channels.pptx
Unit-IV- Pharma. Marketing Channels.pptxVishalSingh1417
 
The basics of sentences session 3pptx.pptx
The basics of sentences session 3pptx.pptxThe basics of sentences session 3pptx.pptx
The basics of sentences session 3pptx.pptxheathfieldcps1
 
Key note speaker Neum_Admir Softic_ENG.pdf
Key note speaker Neum_Admir Softic_ENG.pdfKey note speaker Neum_Admir Softic_ENG.pdf
Key note speaker Neum_Admir Softic_ENG.pdfAdmir Softic
 
Food safety_Challenges food safety laboratories_.pdf
Food safety_Challenges food safety laboratories_.pdfFood safety_Challenges food safety laboratories_.pdf
Food safety_Challenges food safety laboratories_.pdfSherif Taha
 
How to Give a Domain for a Field in Odoo 17
How to Give a Domain for a Field in Odoo 17How to Give a Domain for a Field in Odoo 17
How to Give a Domain for a Field in Odoo 17Celine George
 
Accessible Digital Futures project (20/03/2024)
Accessible Digital Futures project (20/03/2024)Accessible Digital Futures project (20/03/2024)
Accessible Digital Futures project (20/03/2024)Jisc
 
Understanding Accommodations and Modifications
Understanding  Accommodations and ModificationsUnderstanding  Accommodations and Modifications
Understanding Accommodations and ModificationsMJDuyan
 
Holdier Curriculum Vitae (April 2024).pdf
Holdier Curriculum Vitae (April 2024).pdfHoldier Curriculum Vitae (April 2024).pdf
Holdier Curriculum Vitae (April 2024).pdfagholdier
 
Magic bus Group work1and 2 (Team 3).pptx
Magic bus Group work1and 2 (Team 3).pptxMagic bus Group work1and 2 (Team 3).pptx
Magic bus Group work1and 2 (Team 3).pptxdhanalakshmis0310
 
How to Manage Global Discount in Odoo 17 POS
How to Manage Global Discount in Odoo 17 POSHow to Manage Global Discount in Odoo 17 POS
How to Manage Global Discount in Odoo 17 POSCeline George
 
Russian Escort Service in Delhi 11k Hotel Foreigner Russian Call Girls in Delhi
Russian Escort Service in Delhi 11k Hotel Foreigner Russian Call Girls in DelhiRussian Escort Service in Delhi 11k Hotel Foreigner Russian Call Girls in Delhi
Russian Escort Service in Delhi 11k Hotel Foreigner Russian Call Girls in Delhikauryashika82
 
Third Battle of Panipat detailed notes.pptx
Third Battle of Panipat detailed notes.pptxThird Battle of Panipat detailed notes.pptx
Third Battle of Panipat detailed notes.pptxAmita Gupta
 
psychiatric nursing HISTORY COLLECTION .docx
psychiatric  nursing HISTORY  COLLECTION  .docxpsychiatric  nursing HISTORY  COLLECTION  .docx
psychiatric nursing HISTORY COLLECTION .docxPoojaSen20
 

Kürzlich hochgeladen (20)

Mixin Classes in Odoo 17 How to Extend Models Using Mixin Classes
Mixin Classes in Odoo 17  How to Extend Models Using Mixin ClassesMixin Classes in Odoo 17  How to Extend Models Using Mixin Classes
Mixin Classes in Odoo 17 How to Extend Models Using Mixin Classes
 
SKILL OF INTRODUCING THE LESSON MICRO SKILLS.pptx
SKILL OF INTRODUCING THE LESSON MICRO SKILLS.pptxSKILL OF INTRODUCING THE LESSON MICRO SKILLS.pptx
SKILL OF INTRODUCING THE LESSON MICRO SKILLS.pptx
 
On National Teacher Day, meet the 2024-25 Kenan Fellows
On National Teacher Day, meet the 2024-25 Kenan FellowsOn National Teacher Day, meet the 2024-25 Kenan Fellows
On National Teacher Day, meet the 2024-25 Kenan Fellows
 
General Principles of Intellectual Property: Concepts of Intellectual Proper...
General Principles of Intellectual Property: Concepts of Intellectual  Proper...General Principles of Intellectual Property: Concepts of Intellectual  Proper...
General Principles of Intellectual Property: Concepts of Intellectual Proper...
 
ComPTIA Overview | Comptia Security+ Book SY0-701
ComPTIA Overview | Comptia Security+ Book SY0-701ComPTIA Overview | Comptia Security+ Book SY0-701
ComPTIA Overview | Comptia Security+ Book SY0-701
 
Kodo Millet PPT made by Ghanshyam bairwa college of Agriculture kumher bhara...
Kodo Millet  PPT made by Ghanshyam bairwa college of Agriculture kumher bhara...Kodo Millet  PPT made by Ghanshyam bairwa college of Agriculture kumher bhara...
Kodo Millet PPT made by Ghanshyam bairwa college of Agriculture kumher bhara...
 
Unit-IV- Pharma. Marketing Channels.pptx
Unit-IV- Pharma. Marketing Channels.pptxUnit-IV- Pharma. Marketing Channels.pptx
Unit-IV- Pharma. Marketing Channels.pptx
 
The basics of sentences session 3pptx.pptx
The basics of sentences session 3pptx.pptxThe basics of sentences session 3pptx.pptx
The basics of sentences session 3pptx.pptx
 
Key note speaker Neum_Admir Softic_ENG.pdf
Key note speaker Neum_Admir Softic_ENG.pdfKey note speaker Neum_Admir Softic_ENG.pdf
Key note speaker Neum_Admir Softic_ENG.pdf
 
Mehran University Newsletter Vol-X, Issue-I, 2024
Mehran University Newsletter Vol-X, Issue-I, 2024Mehran University Newsletter Vol-X, Issue-I, 2024
Mehran University Newsletter Vol-X, Issue-I, 2024
 
Food safety_Challenges food safety laboratories_.pdf
Food safety_Challenges food safety laboratories_.pdfFood safety_Challenges food safety laboratories_.pdf
Food safety_Challenges food safety laboratories_.pdf
 
How to Give a Domain for a Field in Odoo 17
How to Give a Domain for a Field in Odoo 17How to Give a Domain for a Field in Odoo 17
How to Give a Domain for a Field in Odoo 17
 
Accessible Digital Futures project (20/03/2024)
Accessible Digital Futures project (20/03/2024)Accessible Digital Futures project (20/03/2024)
Accessible Digital Futures project (20/03/2024)
 
Understanding Accommodations and Modifications
Understanding  Accommodations and ModificationsUnderstanding  Accommodations and Modifications
Understanding Accommodations and Modifications
 
Holdier Curriculum Vitae (April 2024).pdf
Holdier Curriculum Vitae (April 2024).pdfHoldier Curriculum Vitae (April 2024).pdf
Holdier Curriculum Vitae (April 2024).pdf
 
Magic bus Group work1and 2 (Team 3).pptx
Magic bus Group work1and 2 (Team 3).pptxMagic bus Group work1and 2 (Team 3).pptx
Magic bus Group work1and 2 (Team 3).pptx
 
How to Manage Global Discount in Odoo 17 POS
How to Manage Global Discount in Odoo 17 POSHow to Manage Global Discount in Odoo 17 POS
How to Manage Global Discount in Odoo 17 POS
 
Russian Escort Service in Delhi 11k Hotel Foreigner Russian Call Girls in Delhi
Russian Escort Service in Delhi 11k Hotel Foreigner Russian Call Girls in DelhiRussian Escort Service in Delhi 11k Hotel Foreigner Russian Call Girls in Delhi
Russian Escort Service in Delhi 11k Hotel Foreigner Russian Call Girls in Delhi
 
Third Battle of Panipat detailed notes.pptx
Third Battle of Panipat detailed notes.pptxThird Battle of Panipat detailed notes.pptx
Third Battle of Panipat detailed notes.pptx
 
psychiatric nursing HISTORY COLLECTION .docx
psychiatric  nursing HISTORY  COLLECTION  .docxpsychiatric  nursing HISTORY  COLLECTION  .docx
psychiatric nursing HISTORY COLLECTION .docx
 

iOS Bootcamp: learning to create awesome apps on iOS using Swift (Lecture 09)

  • 1. Using 3rd Party Libraries / Frameworks in iOS Lecture 09 Jonathan R. Engelsma, Ph.D.
  • 2. TOPICS • Motivation • UsefulThird Party Libraries • Working with CocoaPods
  • 3. WHY USE 3RD PARTY LIBRARIES? • Duh….. • Avoid reinventing the wheel? • Take advantage of tons of amazing open source software - often written by smarter-than-average developers! • Make your app more feature rich (and shiny) with less work!
  • 4. AFNETWORKING • Most popular networking library for iOS • Extends the foundation networking frameworks on iOS. • More info: https://github.com/AFNetworking/ AFNetworking
  • 5. NIMBUS • iOS toolkit with commonly needed components • Well documented! • http://nimbuskit.info/
  • 6. CORE PLOT • 2D Plotting Framework for iOS and OS X. • Supports a wide variety of different kinds of graphs/plots. • https://github.com/core-plot/core- plot
  • 7. FMDB • An Cocoa/Objective-C wrapper around SQLite • Higher level API that makes interacting with SQLite DB’s easy. • https://github.com/ccgus/fmdb
  • 8. SSTOOLKIT • a collection of well-documented iOS classes for making life easier by solving common problems all iOS developers face. • http://sstoolk.it/
  • 9. MBPROGRESSHUD • translucent HUD with an indicator and/or labels while work is being done in a background thread. • https://github.com/jdg/ MBProgressHUD
  • 10. • Style your native iOS/Android apps using CSS • Open source project has graduated into a startup (pixate.com - beautiful but not free)! • http://www.freestyle.org/
  • 11. FONT AWESOME FOR IOS • a Objective-C category that brings Font awesome (an iconic font) to iOS. • https://github.com/alexdrone/ios- fontawesome
  • 13. COCOAPODS • A popular dependency manager for Objective-C projects. • Thousands of libraries/frameworks supported. • Popular in the open source community. • http://cocoapods.org/
  • 14. WHY A DEPENDENCY MGR? • Why not just manually download library/framework and add to your project? • library code is stored in each project you use it, wasting space. • No global catalog of available libraries that you can search.. • Difficult to update libraries to a new version, especially if several libraries need to be updated together. • You will be tempted to modify the code, making future updates difficult!