déjeuner technologiques - introduction to ios development & app marketing
DESCRIPTION
Slides of my talk about iOS development & app marketing, given at Lille 1 University on 11/05/2013. And yes ! I love the smurfps ! :)TRANSCRIPT
iOS Programming!From the first line of code to publication on store
Clément SAUVAGE!Founder & Lead Developper @ Kalokod !
iOS, OS X Developer
Lille 1 University - November 5th 2013
Les déjeuners technologiques
What about the talk ?
iOS developement
Mobile App Marketing
Who am I ?
Clément Sauvage 22 years oldSupinfo Student
iOS & OS X DeveloperFounder & Lead Dev of KalokodCocoa SpeakerOpenClassrooms Obj-C & iOS content author
Organizer of Cocoaheads Lille Meeting
Slides available on my SlideShare & SpeakerDeck profile at the end of the talk
Sources code available on my GitHub Profile tonight
iOS developement
Thanks Captain Obvious
A system to rule them all
One Programming Language
Objective C-
One Programming Language
Objective C
I don’t like POO at all
Categories Protocols
…
OOPClasses/Objects!Polymorphism!Inheritance /!\!…
Messages(Inherited from SmallTalk)
PHP
C++
C #
JavaPerl
C Language
Entity
Entity
Entity
Entity
Entity
Objective-C!Superset
C Language
Objective-C!Superset
C Language
!!
API Cocoa!!
Foundation Kit UIKit
CoreData!CoreGraphics!
…!
!!
API Cocoa!!
Foundation Kit UIKit
CoreData!CoreGraphics!
…!
!!
API Cocoa!!
Foundation Kit UIKit
CoreData!CoreGraphics!
…!
Historical reminders
1976 : Creation of Apple Computer, Inc.1985-86 : Jobs set up NeXT1996 : Apple bought NeXT for USD 41 000 0002001 (03/24) Apple release Mac OS X (10.1) Cheetah
Developer Toolbox
XCode 5!(Build 5A2053)
Available
Mac App Store ! Dev platform
Foundation Kit Essentials
Data Wrappers
String *myStringNSMutableNSDate *myString NSNumber *aNumber
Foundation Kit Essentials
Working with collections
Array *myArrayDictionnary *myDict
Set *mySetNSNS
NS
Foundation Kit Essentials
Working with collections
Array *myArrayDictionnary *myDict
Set *mySetNSNS
NSMutableMutable
Mutable
Developer Toolbox
Foundation Kit Demo
Find project on Github
How to develop an app
One pattern to rule them all
MVCModel View Controller
How to develop an app
One pattern to rule them all
Model
Controller View
How to develop an app
@interface
@implementation
Careful ! ViewController isn’t View & Controller!but a controller only !
Interface Design
There’s 2 ways to design your UI
CodeInterface builder & Storyboards
Interface Design with Storyboards
-
+Quickly set a UI Straightforward impl. for small apps ≠ XIBs for ≠ localizations Adjust the layout
Difficult to merge conflicts in a team environment Impossible to describe dynamic views XIBs lack customizations Harder to debug
Interface Design with IB & Story
Interface Design with IB & Story
DemoCreating a simple app w/ storyboard
Interface Design with code
+
-
Easier to merge conflicts and diff lines of code than it is a XIB file Trace code in debug mode / defensive programming Faster view creation More control
Visualize the UI More time to layout your views
Interface Design with code
//---- Create red rect UIView CGFloat width = self.view.bounds.size.width; //Grab width of main (blue) view ! CGFloat height = self.view.bounds.size.height; //Grab height of main (blue) view UIView *infoPanel = [[UIView alloc]initWithFrame: CGRectMake(width*0.02, height*0.84, width*0.96, height*0.15)]; infoPanel.backgroundColor = [UIColor redColor]; [self.view addSubview:infoPanel]; !! //---- AutoLayout methods goes here !
Interface Design
So… what should I use ?
Interface Design
No fixed answer !
Multiple factors
Team project or alone cowboy?!How much time do you have ?!
Have you a precise idea of your UI ? !If team, is there a designer in it ?
Bibliographie selective
Gaël DURAND - Abdelhalim RAFRAFI ! 829 pages Livre (broché) - 17 x 21 cm ISBN : 978-2-7460-7717-1
Bibliographie selective
Aaron HILLEGASS - Joe CONWAY !590 pages Big Nerd Ranch Guides; 3 edition ISBN : 978-0321821522
Bibliographie selective
Clément Sauvage !
280 - 550 pages ISBN : ???-??????????
Sortie : Late November - Early December 2013
Objective-C iOS 7
Bibliographie selective
Available on March 2014!Currently iOS 6 version
iOS App Marketing
Publishing your app
Illus
trat
ions
© C
lair
e M
illet
- c
estu
nmac
.com
Imp from Cupertino
Marketing, HI, App Review Guideline
Publishing your app
Illus
trat
ions
© C
lair
e M
illet
- c
estu
nmac
.com
1. Terms and conditions 2. Functionality 3. Metadata 4. Location 5. Push Notifications 6. Game Center 7. Advertising 8. Trademarks and trade dress 9. Media content 10. User interface 11. Purchasing and currencies 12. Scraping and aggregation 13. Damage or injury 14. Personal attacks 15. Violence 16. Objectionable content 17. Privacy 18. Pornography 19. Religion, culture, and ethnicity 20. Contests, sweepstakes, lotteries, raffles, and gambling 21. Charities and contributions 22. Legal requirements 23. Passbook 24. Kids Apps
Publishing your app
Illus
trat
ions
© C
lair
e M
illet
- c
estu
nmac
.com
Publishing your app
Illus
trat
ions
© C
lair
e M
illet
- c
estu
nmac
.com
Publishing your app
Illus
trat
ions
© C
lair
e M
illet
- c
estu
nmac
.com
User Feedback
User Feedback
User Feedback
Monetizing your app
Free + Pub
Free + Subscription
Paid app
Freemium
30% / 70%
Statistics
900 000 000 iDevices (June 2013)1st Professional OS (SPC +)70 % under iOS 71 000 000 App on store (october 2013)USD 30 000 000 000 for developersGlobally 2,69€/month/user
Selected Bibliography
App Savvy de Ken Yarmosh 352 pages!O'Reilly Media, Inc, USA (2 novembre 2010)!English!ISBN-10: 1449389767
Selected Bibliography
TapWorthy by Josh Clark Broché: 320 pages!Editeur : O'Reilly Media, Inc, USA; !Édition : 1 (13 juillet 2010)!English!ISBN-13: 978-1449381653!
Thank you !
@clementsauvage!@kalokod_ http://www.kalokod.com
Clément Sauvage
csauvage