SlideShare une entreprise Scribd logo
1  sur  31
Télécharger pour lire hors ligne
iOS Development
Introduction
Gonzalo Parra
Friday 22 October 2010
Background
Friday 22 October 2010
iOS?
• iPod Touch
• iPhone
• iPad
Friday 22 October 2010
What is the iPhone?
• accelerometer
• gyroscophe
• GPS
• Digital compass
• multi-touch display
• sensors (proximity, ambient light)
• camera (photos, video)
• UMTS/HSDPA, GSM/EDGE,WI-FI, Bluetooth
Friday 22 October 2010
What is the iPhone?
Based on a work at cs193p.stanford.edu
Friday 22 October 2010
Core OS
OSX Kernel
Mach 3.0
BSD
Sockets
Security
Power Management
Keychain Access
Certificates
File System
Bonjour
iOS
Cocoa Touch
Media
Core Services
Core OS
Based on a work at cs193p.stanford.edu
Friday 22 October 2010
Core Services
Collections
Address Book
Networking
File Access
SQLite
Core Location
Net Services
Threading
Preferences
URL Utilities
iOS
Cocoa Touch
Media
Core Services
Core OS
Based on a work at cs193p.stanford.edu
Friday 22 October 2010
Media
Core Audio
OpenAL
Audio Mixing
Audio Recording
Video Playback
JPEG, PNG, TIFF
PDF
Quartz (2D)
Core Animation
OpenGL ES
iOS
Cocoa Touch
Media
Core Services
Core OS
Based on a work at cs193p.stanford.edu
Friday 22 October 2010
Cocoa Touch
Multi-Touch
Core Motion
View Hierarchy
Localization
Controls
Alerts
Web View
Map Kit
Image Picker
Camera
iOS
Cocoa Touch
Media
Core Services
Core OS
Based on a work at cs193p.stanford.edu
Friday 22 October 2010
Basics
Friday 22 October 2010
Components
• iOS SDK (requires an Intel Mac)
• Frameworks: Foundation, UIKit,...
• MVC
• Language: Objective-C
• Tools: XCode, Interface Builder, iPhone
Simulator, Instruments
• Apple Developer Program
Friday 22 October 2010
MVC
St
C
Fa
Controller
MVC
Model View
It’s all about managing communication between camps
Based on a work at cs193p.stanford.edu
Friday 22 October 2010
MVC: Controller
St
C
Fal
Controller
MVC
Model View
outlet
Controllers can also talk directly to their View.
Based on a work at cs193p.stanford.edu
Friday 22 October 2010
MVC:View
St
C
Fal
Controller
MVC
Model View
action
delegate
outlet
data
source
should
will did
target
count
data
at
No. The Model is (should be) UI independent.
Based on a work at cs193p.stanford.edu
Friday 22 October 2010
MVC: Model
St
C
Fal
Controller
MVC
Model View
action
Notification
& KVO
delegate
outlet
data
source
should
will did
target
count
data
at
Now combine MVC groups to make complicated programs ...
Based on a work at cs193p.stanford.edu
Friday 22 October 2010
MVCsMVCs working together
Stanford
CS193p
Fall 2010
Based on a work at cs193p.stanford.edu
Friday 22 October 2010
Hello iPhone!
Friday 22 October 2010
Hello iPhone!
• Tools
• XCode
• Interface Builder
Friday 22 October 2010
Hello iPhone MVC
Sta
CS
Fall
Controller
MVC
Model View
action
outlet
target
Then hand out an action to the View.
myButtonPushed
Based on a work at cs193p.stanford.edu
Friday 22 October 2010
Hello iPhone MVC
Sta
CS
Fall
Controller
MVC
Model View
action
outlet
target
Then hand out an action to the View.
HelloiPhoneViewController
myButtonPushed
Based on a work at cs193p.stanford.edu
Friday 22 October 2010
Hello iPhone MVC
Sta
CS
Fall
Controller
MVC
Model View
action
outlet
target
Then hand out an action to the View.
HelloiPhoneViewController
UILabel
myButtonPushed
Based on a work at cs193p.stanford.edu
Friday 22 October 2010
Hello iPhone MVC
Sta
CS
Fall
Controller
MVC
Model View
action
outlet
target
Then hand out an action to the View.
HelloiPhoneViewController
UILabel UIButton
myButtonPushed
Based on a work at cs193p.stanford.edu
Friday 22 October 2010
Hello iPhone MVC
Sta
CS
Fall
Controller
MVC
Model View
action
outlet
target
Then hand out an action to the View.
HelloiPhoneViewController
UILabel UIButton
myButtonPushed
UISlider
Based on a work at cs193p.stanford.edu
Friday 22 October 2010
Hello iPhone MVC
Sta
CS
Fall
Controller
MVC
Model View
action
outlet
target
Then hand out an action to the View.
HelloiPhoneViewController
UILabel UIButton
myButtonPushed
X UISlider
Based on a work at cs193p.stanford.edu
Friday 22 October 2010
Hello iPhone!
Hands-on
Friday 22 October 2010
Calculator
• http://bit.ly/iphonecalculator
Friday 22 October 2010
MapApp (MapKit)
Friday 22 October 2010
MapApp (MapKit)
Friday 22 October 2010
Extra material
• http://developer.apple.com/iphone/
• WWW
Friday 22 October 2010
Code
• HelloiPhone: http://bit.ly/helloiphonecode
• Calculator: http://bit.ly/mume10calc
• MapApp: http://bit.ly/mume10map
Friday 22 October 2010
References
• CS193P: Developing Applications for iOS, Stanford
University: http://cs193p.stanford.edu/
• HelloWorld Tutorial: http://bit.ly/helloiphone
• iPhone Programming Tutorial: http://bit.ly/crwpk0
• The Spoken Word: http://bit.ly/dcMXBK
Friday 22 October 2010

Contenu connexe

Similaire à iOS Development Introduction

iPhone Os开发简介
iPhone Os开发简介iPhone Os开发简介
iPhone Os开发简介
Hao Peiqiang
 
CodeFest 2014. Krzysztof Szafranek — Mobile game development: the good, the b...
CodeFest 2014. Krzysztof Szafranek — Mobile game development: the good, the b...CodeFest 2014. Krzysztof Szafranek — Mobile game development: the good, the b...
CodeFest 2014. Krzysztof Szafranek — Mobile game development: the good, the b...
CodeFest
 
Introduction to MonoTouch
Introduction to MonoTouchIntroduction to MonoTouch
Introduction to MonoTouch
Jonas Follesø
 
Google Developer Group(GDG) DevFest Event 2012 Android talk
Google Developer Group(GDG) DevFest Event 2012 Android talkGoogle Developer Group(GDG) DevFest Event 2012 Android talk
Google Developer Group(GDG) DevFest Event 2012 Android talk
Imam Raza
 
I like i phone and android but know .net
I like i phone and android but know .netI like i phone and android but know .net
I like i phone and android but know .net
Chris Love
 

Similaire à iOS Development Introduction (20)

Html5 Apps
Html5 AppsHtml5 Apps
Html5 Apps
 
C# on the iPhone with MonoTouch Glasgow
C# on the iPhone with MonoTouch GlasgowC# on the iPhone with MonoTouch Glasgow
C# on the iPhone with MonoTouch Glasgow
 
Apple WWDC 2014 highlights
Apple WWDC 2014 highlightsApple WWDC 2014 highlights
Apple WWDC 2014 highlights
 
Create Cross-Platform Native Mobile Apps in Flex with ELIPS Studio
Create Cross-Platform Native Mobile Apps in Flex with ELIPS StudioCreate Cross-Platform Native Mobile Apps in Flex with ELIPS Studio
Create Cross-Platform Native Mobile Apps in Flex with ELIPS Studio
 
Human APIs
Human APIsHuman APIs
Human APIs
 
iPhone Os开发简介
iPhone Os开发简介iPhone Os开发简介
iPhone Os开发简介
 
CodeFest 2014. Krzysztof Szafranek — Mobile game development: the good, the b...
CodeFest 2014. Krzysztof Szafranek — Mobile game development: the good, the b...CodeFest 2014. Krzysztof Szafranek — Mobile game development: the good, the b...
CodeFest 2014. Krzysztof Szafranek — Mobile game development: the good, the b...
 
Mobile Development. A primer.
Mobile Development. A primer.Mobile Development. A primer.
Mobile Development. A primer.
 
Introduction to MonoTouch
Introduction to MonoTouchIntroduction to MonoTouch
Introduction to MonoTouch
 
Google Developer Group(GDG) DevFest Event 2012 Android talk
Google Developer Group(GDG) DevFest Event 2012 Android talkGoogle Developer Group(GDG) DevFest Event 2012 Android talk
Google Developer Group(GDG) DevFest Event 2012 Android talk
 
Beginning Real World iOS App Development
Beginning Real World iOS App DevelopmentBeginning Real World iOS App Development
Beginning Real World iOS App Development
 
Mob324 Windows IoT Core Dave Glover Microsoft Australia
Mob324 Windows IoT Core Dave Glover Microsoft AustraliaMob324 Windows IoT Core Dave Glover Microsoft Australia
Mob324 Windows IoT Core Dave Glover Microsoft Australia
 
Lecture1
Lecture1Lecture1
Lecture1
 
PHP in a Mobile Ecosystem (Zendcon 2010)
PHP in a Mobile Ecosystem (Zendcon 2010)PHP in a Mobile Ecosystem (Zendcon 2010)
PHP in a Mobile Ecosystem (Zendcon 2010)
 
I like i phone and android but know .net
I like i phone and android but know .netI like i phone and android but know .net
I like i phone and android but know .net
 
Smartphone Reporting Done Smarter
Smartphone Reporting Done SmarterSmartphone Reporting Done Smarter
Smartphone Reporting Done Smarter
 
Rococo Software Overview Q3 2010
Rococo Software Overview Q3 2010Rococo Software Overview Q3 2010
Rococo Software Overview Q3 2010
 
Hybrid Apps with Angular & Ionic Framework
Hybrid Apps with Angular & Ionic FrameworkHybrid Apps with Angular & Ionic Framework
Hybrid Apps with Angular & Ionic Framework
 
Mobile Development Platforms
Mobile Development PlatformsMobile Development Platforms
Mobile Development Platforms
 
Mobile Widgets Development
Mobile Widgets DevelopmentMobile Widgets Development
Mobile Widgets Development
 

Plus de Gonzalo Parra (13)

Mume JQueryMobile Intro
Mume JQueryMobile IntroMume JQueryMobile Intro
Mume JQueryMobile Intro
 
Mume HTML5 Intro
Mume HTML5 IntroMume HTML5 Intro
Mume HTML5 Intro
 
iOS Dev Intro
iOS Dev IntroiOS Dev Intro
iOS Dev Intro
 
TiNYARM @ MATEL WS
TiNYARM @ MATEL WSTiNYARM @ MATEL WS
TiNYARM @ MATEL WS
 
iOS Development Introduction (MuMe11)
iOS Development Introduction (MuMe11)iOS Development Introduction (MuMe11)
iOS Development Introduction (MuMe11)
 
Mobile development
Mobile developmentMobile development
Mobile development
 
More! @ EC-TEL
More! @ EC-TELMore! @ EC-TEL
More! @ EC-TEL
 
More! @ ED-MEDIA
More! @ ED-MEDIAMore! @ ED-MEDIA
More! @ ED-MEDIA
 
Research2.0
Research2.0Research2.0
Research2.0
 
More! A Social Discovery Tool for Researchers
More! A Social Discovery Tool for ResearchersMore! A Social Discovery Tool for Researchers
More! A Social Discovery Tool for Researchers
 
MACE
MACEMACE
MACE
 
ARIADNE LOM Application Profile
ARIADNE LOM Application ProfileARIADNE LOM Application Profile
ARIADNE LOM Application Profile
 
Iphone Presentation for MuMe09
Iphone Presentation for MuMe09Iphone Presentation for MuMe09
Iphone Presentation for MuMe09
 

iOS Development Introduction