Absolute Beginners Guide to iPhone dev

6,348 views

Published on

Slides for presentation given by Barry Ezell to the Suncoast iPhone App Developer's Meetup for August 2000.

Published in: Technology, News & Politics
  • Be the first to comment

Absolute Beginners Guide to iPhone dev

  1. 1. Absolute beginners guide to... iPhone Development Barry Ezell
  2. 2. Technology Unconference USF College of Business September 26th - Dev Day September 27th - Media Day http://barcamptampabay.com
  3. 3. • Intro to the Intro • What you need: Hardware • What you need: Software • What you need: Wetware • Code! • Submit
  4. 4. All about me • Ruby, C#, Erlang • iPhone beginning 3/2009 • One app in store (SuccessIts) • One submitted (Bookmark, bookmarkapp.com) • Several in works
  5. 5. You don’t have to be a fanboy • Accelerometer, camera, video, magnetometer, iPod, touch, OpenGL • Over 37M units sold (4/2009) • Over 1.5B app downloads • $2.4B a year in sales
  6. 6. Pros • Controlled, predictable platform • 320x480 px • Good documentation • Apple handles sales
  7. 7. Cons • All Apple all the time • Their hardware • They approve / reject apps • No alternative app store • You can use any language as long as it’s Objective-C
  8. 8. WYN: Hardware • Intel-based Mac running Leopard or S.L. • iPhone / iPod Touch
  9. 9. WYN: Software
  10. 10. XCode et al. • XCode 3.x and Instruments on install disk under “Optional Installs” • Download iPhone SDK, simulator from Apple (after joining dev program) • All free
  11. 11. Registered iPhone Developer Program http://developer.apple.com/iphone/ Free Test using the simulator, no sales Test on devices, unlimited sales in Standard ($99/yr) App Store Unlimited in-house distribution, no Enterprise ($299/yr) App Store sales
  12. 12. WYN: Wetware • Learn Objective-C • Learn Cocoa Touch, Frameworks
  13. 13. Objective-C Square brackets represent!
  14. 14. • OO, strict superset of C, inspired by Smalltalk messaging • Any valid C or C++ code works • You handle memory management • [object retain]; • [object release];
  15. 15. Messaging • Objects are passed messages with descriptive arguments coyote.hunt(roadRunner,rocketSkates,true);
  16. 16. Resources • Apple’s Object-Oriented Programming with Objective-C http://bit.ly/13QlgA • Peepcode screencast series: Objective-C for Rubyists • Programming in Objective-C 2.0 by Stephen G. Kochan
  17. 17. Cocoa Touch • Desktop Cocoa adapted for the iPhone • Frameworks: • UIKit (touch, windowing, accelerometer) • CoreGraphics (Quartz, PDF, animation) • CoreLocation (GPS) • MediaPlayer (iPod) • Many more
  18. 18. Resources • Pragmatic Programmer: iPhone SDK Development by Bill Dudney • iPhone Developer’s Cookbook by Erica Sadun • Interwebs: iphonedevsdk.com, Apple forums, Google
  19. 19. Let’s Code • Finally! • TweetCount • XCode > New Project > Utility Application
  20. 20. One Window, many Views UITableView
  21. 21. One Window, many Views UIButton UIImageView UIProgressView UILabel
  22. 22. .nib or .xib files • Normally both called “nibs” • “Freeze-dried” objects, interface elements, and relationsips • Normally single .xib launched at app start
  23. 23. IBOutlet & IBAction • IBOutlets allow getting and setting properties on objects in IB • IBActions allow objects to receive events like touches or value changes
  24. 24. Test on Devices • Simulator != iPhone • Get Provisioning Profiles and Development Certificates on iPhone Dev Portal • Make life easier with wildcard naming: com.barryezell.*
  25. 25. Device Testing • Configure app for device testing • Change Active SDK to “Device” • Set Signing Identity under Project > Edit Project Settings • Set your App ID in info.plist file
  26. 26. Submit to Apple • Set Release configuration • Set App Store Signing Identity • Add artwork (57x57, 512x512 icons) • Compile and zip with 57x57 icon
  27. 27. Upload to iTunes Connect
  28. 28. Tips while waiting on Apple • Avoid cracks in sidewalk • Ditto walking under ladders • Try to forget you ever invested all that time
  29. 29. Resource of Resources • http://theappleblog.com/2009/06/01/43- iphone-development-resources

×