iphone development quick start
DESCRIPTION
Chris Van Buskirk of Calliope Digital presents to gnocode.org about iPhone development.http://www.calliopedigital.comhttp://www.gnocode.orgTRANSCRIPT
iPhone Development Quick Start
Chris Van Buskirk
Topics
• Planning
• Design
• Development
• Deployment
• Marketing
iPhone Development Quick Start
Planning
• Apple Developer Connection (ADC)
• Account Choices
• Project Description
• Sketches
• Building Your Team
iPhone Development Quick Start
iPhone Developer Accounts
• Free
• Individual ($99)
• Company ($99)
• Enterprise ($299)
iPhone Development Quick Start
Project Description• What is your application?
• Review possible competition.
• Target Audience
• Feature list
• Must have...
• Nice to have...
iPhone Development Quick Start
Sketching
iPhone Development Quick Start
Team Roles
• Project Manager
• Designer
• Developer
• Quality Control
iPhone Development Quick Start
iPhone Design
• Tools
• Wire Framing
• Screen Design
• Interface Builder (IB)
• Resources
iPhone Development Quick Start
Tools• OmniGraffle
Professional
• iPhone Stencils
• Photoshop
• iPhone template
• Correctly layered
iPhone Development Quick Start
Wire Framing
iPhone Development Quick Start
Schedule Arthur Hardy About
Endymion
Doubloon or Crest(see article for
examples)
Parade Route Arthur says...Click Button to open a map of
the parade route.
Click Button to open history note. Story template screen will be used (last slide).
Date
Time 6:00 PM
Location Uptown New Orleans
Theme secret
History 69th annual parade
Floats 28
Members 665 men
Royalty John Doe
Throws doubloons, flashing, lighted winged sandals, medallion beads, doubloons
Special award-winning floats, flambeaux, officers on horseback
Parade Details. This section might scroll (box only) for the
purposes of growth, as it maybe a web
view. I want the Map and History buttons
always present.
Schedule Title of the parade.Button shall
return user back to schedule
screen.
Note: The map screen will not need design.
Screen Design
iPhone Development Quick Start
Schedule Arthur Hardy About
Endymion
Doubloon or Crest(see article for
examples)
Parade Route Arthur says...
Date
Time 6:00 PM
Location Uptown New Orleans
Theme secret
History 69th annual parade
Floats 28
Members 665 men
Royalty John Doe
Throws doubloons, flashing, lighted winged sandals, medallion beads, doubloons
Special award-winning floats, flambeaux, officers on horseback
Schedule
Screen Design
iPhone Development Quick Start
Saturday, February 16, 2009
IRIS UPTOWN 11:00AM
TUCKS UPTOWN 12:00PM
ENDYMION MID-CITY 4:30PM
ISIS METARIE 6:30PM
Sunday, February 17, 2009
THOTH UPTOWN 11:00AM
VENUS UPTOWN 12:00PM
BACCHUS UPTOWN 4:00PM
NAPOLEON METARIE 4:00PM
TUT HOUMA 6:00PM
Sunday, February 17, 2009
ORPHEOUS UPTOWN 7:00PM
Schedule Arthur Hardy About
PARADE SCHEDULE 2010
Interface Builder (IB)
iPhone Development Quick Start
• Visually build interfaces.
• Drop and drag UI controls.
• Change properties visually.
• Concept of wiring.
• Connect to instance variables using outlets.
• Use actions to fire methods.
Resources
iPhone Development Quick Start
• Apple Human Interface Guidelines.
• Edward Tufte on iPhone design.
• iPhone User Interface Design Projects (Apress).
• Smashing Magazine.
iPhone Development• Tools
• Objective-C
• Design Patterns
• Frameworks
• Data
• Resources
iPhone Development Quick Start
Tools
• Xcode IDE
• Simulator
• Instruments
• Shark
iPhone Development Quick Start
Objective-C• Derived from the C programming language.
• Syntax from Smalltalk, and is Object based.
• Separates files for interface and implementation.
• Uses message passing to object instances.
• Reference counting for memory model.
• Much more...
iPhone Development Quick Start
Objective-C 2.0
• Garbage collection. (sorry no iphone)
• Properties (dot syntax with classes)
• Faster enumeration
iPhone Development Quick Start
Objective-C Code
iPhone Development Quick Start
#import <Foundation/NSObject.h>
@interface Fraction: NSObject { int numerator; int denominator;}
-(void) print;-(void) setNumerator: (int) n;-(void) setDenominator: (int) d;-(int) numerator;-(int) denominator;@end
Objective-C Code
iPhone Development Quick Start
#import "Fraction.h"#import <stdio.h>
@implementation Fraction-(void) print { printf( "%i/%i", numerator, denominator );}-(void) setNumerator: (int) n { numerator = n;}-(void) setDenominator: (int) d { denominator = d;}-(int) denominator { return denominator;}@end
Objective-C Code
iPhone Development Quick Start
#import <stdio.h>#import "Fraction.h"
int main( int argc, const char *argv[] ) { // create a new instance Fraction *frac = [[Fraction alloc] init];
// set the values [frac setNumerator: 1]; [frac setDenominator: 3];
printf( "The fraction is: " ); [frac print]; printf( "\n" );
// free memory [frac release];
return 0;}
Design Patterns
iPhone Development Quick Start
Model-View-Controller (MVC)
Design Patterns
iPhone Development Quick Start
Delegation Pattern
Frameworks• Foundation Kit (Arrays, Dictionaries, Numbers,
XML, Networking, Dates, etc..)
• UI Kit (UITableViews, UIScrollViews, UIButtons, UILabels, UIImageViews, UISliders, etc...)
• Web Kit (UIWebView)
• Core Graphics (Animation/gaming)
• Other
iPhone Development Quick Start
Data
• Plist’s
• HTML/CSS - Webkit
• sqlite
• Core Data
• JSON (great over network)
iPhone Development Quick Start
Resources
iPhone Development Quick Start
• ADC Documentation/Samples
• Stanford Courseware on iTunes University (Winter)
• Learn C on a Mac (Apress)
• Learn Objective-C on a Mac (Apress)
• Beginning iPhone Development (Apress)
• More iPhone Development (Apress)
• WWDC
• Stack Overflow
App Deployment
• Provisioning (ADC)
• iTunes Connect (app upload, reports)
• The Process
iPhone Development Quick Start
Provisioning• Setting up a team
• Obtaining your Certificate
• Assigning Devices
• Creating an App ID
• Create a Provisioning Profile
• Digitally sign your app.
iPhone Development Quick Start
iTunes Connect
iPhone Development Quick Start
iTunes Connect
iPhone Development Quick Start
iTunes Connect
iPhone Development Quick Start
• Set your ratings.
• Upload your app, screen shots and icon 512x512.
• Set your price (Apple takes 30%).
• Set Localization.
• In app purchases.
iTunes Connect
iPhone Development Quick Start
Process
iPhone Development Quick Start
Upload Your App
Waiting for Review
In Review
iPhone Development Quick Start
Your application is Ready for Sale
Marketing
• Twitter Account
• Facebook Fan Page
• Ads (google/FB)
iPhone Development Quick Start
• Reach many users
• Don’t spam/but follow
• Provide pertinent information about your product.
• Provide Support
iPhone Development Quick Start
Facebook Fan Page
• Searchable on Facebook.
• Tap into Twitter feed.
• Landing page from the web.
• Build a user group.
iPhone Development Quick Start
Web Ads
• Google Adwords
• Facebook Ads
• Pitfalls
iPhone Development Quick Start
Apple
iPhone Development Quick Start
iPhone Development Quick Start
Questions