iPhone Development Overview

Loading...

Flash Player 9 (or above) is needed to view presentations.
We have detected that you do not have it on your computer. To install it, go here.

1 comments

Comments 1 - 1 of 1 previous next Post a comment

Post a comment
Embed Video
Edit your comment Cancel

12 Favorites

iPhone Development Overview - Presentation Transcript

  1. iPhone Development a whirlwind tour of iPhone development Are you ready for mobile 2.0? Tuesday, 24 March 2009
  2. Overview ‣ Introduction ‣ Development Tools ‣ Distribution ‣ Development Practices Tuesday, 24 March 2009
  3. introduction Tuesday, 24 March 2009
  4. Who am I? ‣ Tom Adams, CTO & Co-founder, mogeneration ‣ Background in mobile, enterprise, HPC, sem. web, PKI ‣ On the web ‣ http://adams.id.au/blog/ ‣ http://twitter.com/tomjadams ‣ http://www.linkedin.com/in/tomjadams ‣ http://github.com/tomjadams Tuesday, 24 March 2009
  5. mogeneration ‣ Founded September 2008 ‣ Keith Ahern, CEO & Co-founder, ex-News Head of Mobile ‣ Offices in Sydney & Brisbane, 4 people, 7 successful projects ‣ iPhone, Android, mobile 2.0 web ‣ Web ‣ http://twitter.com/mogeneration ‣ http://github.com/mogeneration/ Tuesday, 24 March 2009
  6. Our work ‣ Web ‣ The Australian; prior: news.com.au, TrueLocal, moshtix ‣ Released ‣ OzWeather, Moo Shake!, Xumii ‣ Submitted ‣ Lingopal, TrueLocal ‣ In development ‣ Games, books, physics, photography, coupons Tuesday, 24 March 2009
  7. Tuesday, 24 March 2009
  8. Tuesday, 24 March 2009
  9. Tuesday, 24 March 2009
  10. Tuesday, 24 March 2009
  11. why iPhone? Tuesday, 24 March 2009
  12. iPhone ‣ What makes the iPhone different? ‣ Cool ‣ Not normal embedded development ‣ Real threading ‣ Real OS ‣ OpenGL ‣ SQL Database ‣ Tool Tuesday, 24 March 2009
  13. tools Tuesday, 24 March 2009
  14. Development tools ‣ Xcode ‣ Simulator ‣ Interface Builder ‣ Terminal ‣ Instruments Tuesday, 24 March 2009
  15. Version control ‣ Built in: SVN, Perforce, CVS ‣ All the cool kids use git Tuesday, 24 March 2009
  16. Continuous integration ‣ Very important on team projects ‣ Release ad hoc builds to clients ‣ Canonical App Store release Tuesday, 24 March 2009
  17. Profiling ‣ Rules of profiling 1. Profile 2. Find bottlenecks 3. Fix 4. Profile … repeat … ‣ Instruments ‣ Leaks, memory usage, CPU usage Tuesday, 24 March 2009
  18. distribution Tuesday, 24 March 2009
  19. Developer portal ‣ Developer centric ‣ Team, keys, app ids, certificates, provisioning profiles ‣ Be careful of who is an agent! Tuesday, 24 March 2009
  20. iTunes Connect ‣ Release/distribution centric ‣ Only for team agents ‣ Distribution to app store, sales reporting, tax, etc. Tuesday, 24 March 2009
  21. practices Tuesday, 24 March 2009
  22. mogeneration process ‣ Sales ‣ Proposal ‣ Development (iterative) ‣ Outline, brief, loose specification ‣ Interaction design, wireframes ‣ Design, L&F ‣ Iterative development ‣ Handover Tuesday, 24 March 2009
  23. Project setup ‣ Nomenclature ‣ Project, target, product, frameworks, SDKs, static libraries ‣ Settings belong at a project level Tuesday, 24 March 2009
  24. Project layout $(SRCROOT)/ Resources Source/External Source/Main/[Models, Services, Views, …] Source/Test/[Models, Services, Views, …] Tuesday, 24 March 2009
  25. Code ‣ Objective-C has a weak type system, don’t be too fancy ‣ Strong typing is good ‣ Beware of using id ‣ Good naming is hard with “named” parameters ‣ Code styles guides ‣ “Introduction to Coding Guidelines for Cocoa”, Apple ‣ “Cocoa Style for Objective-C”, Cocoa Dev Central ‣ Google Tuesday, 24 March 2009
  26. Testing ‣ OCUnit (SenTest) ‣ GTM ‣ GHUnit ‣ UISpec ‣ OCMock ‣ Hamcrest Tuesday, 24 March 2009
  27. Quality ‣ clang ‣ gcov ‣ CoverStory Tuesday, 24 March 2009
  28. Threading ‣ Learn to love asynchronicity ‣ Don’t block the main thread ‣ Use notifications to decouple communications ‣ Use an NSOperationQueue to bound # threads Tuesday, 24 March 2009
  29. Memory management ‣ Retain count ‣ Learn & follow the rules ‣ For each alloc/new/malloc/malloc a release/free ‣ Use autorelease sparingly ‣ new/create/get ‣ Use new autorelease pools in loops, thread, etc. ‣ Beware of collection class rules Tuesday, 24 March 2009
  30. Gotchas ‣ The iPhone does not support dynamically linked libraries ‣ The simulator uses Mac OS X libraries ‣ Simulator has 72dpi, iPhones have 160dpi ‣ Remember finger sizes! ‣ Don’t use Xcode to manage provision profiles Tuesday, 24 March 2009
  31. help! Tuesday, 24 March 2009
  32. Help ‣ iPhone Developer Centre ‣ Stack Overflow ‣ Mobile Orchard (tutorials) ‣ http://cocoadev.com/ ‣ http://cocoadevcentral.com/ ‣ Google Tuesday, 24 March 2009
  33. takehome Tuesday, 24 March 2009
  34. Takehome ‣ iPhone is a great device ‣ Embrace challenges of a limited device ‣ You can still do hardcore tech Tuesday, 24 March 2009
  35. Projects ‣ FunctionalKit ‣ Motive Tuesday, 24 March 2009
  36. Contact Tom Adams CTO & Co-founder tom@mogeneration.com http://mogeneration.com/ Tuesday, 24 March 2009

+ Tom AdamsTom Adams, 8 months ago

custom

2238 views, 12 favs, 1 embeds more stats

A whirlwind tour of iPhone development.

More info about this document

© All Rights Reserved

Go to text version

  • Total Views 2238
    • 2236 on SlideShare
    • 2 from embeds
  • Comments 1
  • Favorites 12
  • Downloads 181
Most viewed embeds
  • 2 views on http://www.slideshare.net

more

All embeds
  • 2 views on http://www.slideshare.net

less

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate. If needed, use the feedback form to let us know more details.

Cancel
File a copyright complaint
Having problems? Go to our helpdesk?

Categories