SlideShare une entreprise Scribd logo
1  sur  41
iPhone
Making an APP
Start thinking about an app




                    Create a Mockup: http://iphonemockup.lkmc.ch/
www.MitAPP.com                             http://twitter.com/MitAPP
And now?
                                  NavBar? TabBar?


                     how many buttons?


                                  Colors?




www.MitAPP.com                           http://twitter.com/MitAPP
Make a lot of sketches




www.MitAPP.com           http://twitter.com/MitAPP
DEMO


   • DEMO        (15-20’):

        Brainstorming about a project




www.MitAPP.com                          http://twitter.com/MitAPP
Turning an iPhone Idea into a
        successful iPhone app
 4-step that lead from an initial idea to the final
 product that’s available in the AppStore.     First there is great idea, right?
                                                         But how good is the idea really? Is it
                                                    1    worth to proceed and invest money in
                                                         developing an iPhone app?


                                                         Checking an idea and validating its
                                                         feasibility is one of the most important
                                                    2    steps to avoid spending money on the
                                                         wrong thing!

                                                         Once the idea is confirmed as having
                                                         the right potential the
                                                    3    development process can be kicked off.
                                                         Do it yourself or get the pros in to do
                                                         it for you.

                                                         Submitting to Apple and getting
                                                         the app on users phones is next.
                                                    4    Just putting the app in the AppStore
                                                         wont sell it!
                 [source: jtribe.com.au]
www.MitAPP.com                                                          http://twitter.com/MitAPP
1
                              The Idea
           “Hey, I have a great iPhone App idea!”
                      So you got a great iPhone application idea. That is obviously
                      the very first step of every great iPhone app.

                      Make sure you know who the end-user will be and
                      what problem it will solve. But even an unconventional
                      “quirky” idea may become a very successful iPhone app.

                      We are not going to tell you how to generate a great idea.

                      We’d rather tell you how to validate and do some sanity
                      checking of you great idea.

                      Manifest your idea with some key principles that describe the
                      core of your idea.



                 [source: jtribe.com.au]
www.MitAPP.com                                                            http://twitter.com/MitAPP
                                                                                     Prepared by jTribe, 2009
2
                 The Idea Check
                   “...and it actually could work”
                 The critical question is actually what you want to achieve with your iPhone app.
                 Basically there are two ways to get return on an iPhone app.
                    1) make a million through AppStore sales
                    2) use it as a marketing tool to promote another service or product

                 In both cases it is crucial to understand the structure and size of your user-base.
                 In the first case the size will determine the dollar-return you can make with the
                 app. In the second case it will determine the marketing effect.

                 Assuming you want to make a million dollars through AppStore sales it is crucial
                 that you understand the iPhone economics. How many iPhone users are there?
                 How much money can I make in my segment? ...

                 If you don’t plan to become number one in the AppStore in the category you
                 target then don’t expect a return of investment.

                 We highly recommend that you ensure that your idea can enter the top 10 apps
                 in the AppStore. Otherwise, consider it a learning exercise.


                  [source: jtribe.com.au]
www.MitAPP.com                                                                    http://twitter.com/MitAPP
                                                                                             Prepared by jTribe, 2009
3
                     Development
                      “Lets get this baby built”
         So you are convinced that your idea could fly? Then it’s time to get in to the technical part.

         Development costs money. Great iPhone development cost even more money.
         If you are really committed to develop the best possible iPhone app then you should move
         ahead and engage the development process. However, if you have doubts at this stage then
         don’t waste your money or effort.

         The development process could fill a book. Assuming that you are not a professional iPhone
         developer here is a brief summary:

         Get your scope right. Prepare your wireframes. Get some quotes from iPhone
         developers. Make a decision and choose the most awesome developers you can afford.
         Now let the iPhone developers do their magic and make sure they stick to your initial idea.

         Find a group of beta tester. Submit your iPhone application to the Apple AppStore. Be
         prepared to wait a couple of weeks before Apple has approved your app.

         There are many little things that could go wrong in this step so get some professional help.
         AND DON’T FORGET YOUR MARKETING

                  [source: jtribe.com.au]
www.MitAPP.com                                                                   http://twitter.com/MitAPP
                                                                                            Prepared by jTribe, 2009
4
         Life in the AppStore
                       “I just made a million $”
                 Great, you got your app in the AppStore.

                 If you have timed your marketing correctly you should have a huge
                 initial boost of app downloads. Make sure you are going to keep the
                 momentum up.

                 Be wise around any prices changes decisions and consider price
                 elasticity.

                 Monitor your app usage. (e.g. pinchmedia.com)

                 Communicate with your app users. (e.g. shoutmob.com)

                 Use tools and promotion means.

                 Release updates.

                 Keep on top of the curve. If your idea flies then makes sure that you
                 add features users may like.

                 [source: jtribe.com.au]
www.MitAPP.com                                                               http://twitter.com/MitAPP
                                                                                        Prepared by jTribe, 2009
Useful Tips to plan

      • Work in group (if possible)
      • Search simil works, study the market
      • Maybe there are already a lot of code
         developed and free to use...
      • Agile Tech.
      • Code is the last thing
www.MitAPP.com                              http://twitter.com/MitAPP
Anatomy of an Application
• Compiled code
   ■Your code
   ■ Frameworks



• Nib files
   ■ UI elements and other objects
   ■ Details about object relationships



• Resources (images, sounds, strings, database, etc.)
• Info.plist file (application configuration)
• UIKit Framework
   • Provides standard interface elements

www.MitAPP.com                                    http://twitter.com/MitAPP
UIKit Framework
  • Starts your application
  • Every application has a single instance of UIApplication
     ■   Singleton design pattern
          @interface UIApplication
             + (UIApplication *)sharedApplication
          @end

     ■   Orchestrates the lifecycle of an application
     ■   Dispatches events
     ■   Manages status bar, application icon badge
     ■   Rarely subclassed
     ■   Uses delegation instead

www.MitAPP.com                                          http://twitter.com/MitAPP
Delegation

• Control passed to delegate objects to perform application-
specific behavior
• Avoids need to subclass complex objects
• Many UIKit classes use delegates
   ■ UIApplication
   ■ UITableView

   ■ UITextField




www.MitAPP.com                                   http://twitter.com/MitAPP
UIApplication Delegate
• Xcode project templates have one set up by default
• Object you provide that participates in application lifecycle
• Can implement various methods which UIApplication will call


• Examples:
-   (void)applicationDidReceiveMemoryWarning:(UIApplication *)application;
-   (void)applicationWillResignActive:(UIApplication *)application;
-   (BOOL)application:(UIApplication *)application handleOpenURL:(NSURL *)url;
-   (void)applicationDidFinishLaunching:(UIApplication *)application;
-   (void)applicationWillTerminate:(UIApplication *)application;




www.MitAPP.com                                                    http://twitter.com/MitAPP
Info.plist file
   • Property List (often XML), describing your application
      ■ Icon appearance
      ■ Status bar style (default, black, hidden)

      ■ Orientation

      ■ Uses Wi-fi networking

      ■ System Requirements


   • Can edit most properties in Xcode
      ■ Project > Edit Active Target “Foo” menu item
      ■ On the properties tab




www.MitAPP.com                                         http://twitter.com/MitAPP
Model,View, Controller




 Model
 • Manages the app data and state
 • Not concerned with UI or presentation
 • Often persists somewhere
 • Same model should be reusable, unchanged in different interfaces
www.MitAPP.com                                         http://twitter.com/MitAPP
Model,View, Controller



  View
  • Present the Model to the user in an appropriate interface
  • Allows user to manipulate data
  • Does not store any data
     ■   (except to cache state)
  • Easily reusable & configurable to display different data
www.MitAPP.com                                            http://twitter.com/MitAPP
Model,View, Controller




  Controller
  •Intermediary between Model & View
  •Updates the view when the model changes
  •Updates the model when the user manipulates the view
  •Typically where the app logic lives.
www.MitAPP.com                                  http://twitter.com/MitAPP
Model,View, Controller
                   Controller

                 outlets

                 actions




      Model
      Object


www.MitAPP.com                  http://twitter.com/MitAPP
Nib Files - Design Time
    • Helps you design the ʻVʼ in MVC:
       ■ Layout user interface elements
       ■ Add controller objects

       ■ Connect the controller and UI




www.MitAPP.com                            http://twitter.com/MitAPP
Nib Loading
     • At runtime, objects are unarchived
        ■ Values/settings in Interface Builder are restored
        ■ Ensures all outlets and actions are connected

        ■ Order of unarchiving is not defined


        • If loading the nib (.xib file) automatically
        creates objects and order is undefined, how do I
        customize?
            ■   For example, to displaying initial state




www.MitAPP.com                                             http://twitter.com/MitAPP
Nib Loading - awakeFromNib
• Control point to implement any additional logic after nib
loading
• Default empty implementation on NSObject
• You often implement it in your controller class
   ■   e.g. to restore previously saved application state

• Guaranteed everything has been unarchived from nib,
and all connections are made before -awakeFromNib is
called
   - (void)awakeFromNib {
             // do customization here
        }
www.MitAPP.com                                              http://twitter.com/MitAPP
Controls - Events
• View objects that allows users to initiate some type of action
• Respond to variety of events
      ■   Touch events
      ■ touchDown
      ■ touchDragged (entered, exited, drag inside, drag outside)

      ■ touchUp (inside, outside)


■   Value changed
■   Editing events
      ■ editing began
      ■ editing changed

      ■ editing ended




    www.MitAPP.com                                         http://twitter.com/MitAPP
How to Build an iPhone App that
                  Doesn't Suck!

      •   Step 1: Decide what to build
          Principle 1: Know your users.

      •   Step 2: Visit the app store
          Principle 2: Don't build your app in a bubble

      •   Step 3: Explore Possible solutions
          Principle 3: Be minimal

      •   Step 4: Sketch
          Principle 4: Quality through quantity

      •   Step 5: Build a paper prototype
          Principle 5: Fail early to succeed sooner.




                                      [Source] Stanford CS193P
www.MitAPP.com                                                   http://twitter.com/MitAPP
How to Build an iPhone App that
                  Doesn't Suck!


      •   Step 6: Fire up omnigraffle (or Photoshop)
          Principle 6: Be pixel-perfect

      •   Step 7: Do It All Again
          Principle 7: Remember that nothing is precious

      •   Step 8: Okay, You can code finally

      •   Step 9: Beta Test Your App
          Principle 9: Test Before you submit

      •   Step 10: Release




                                    [Source] Stanford CS193P
www.MitAPP.com                                                 http://twitter.com/MitAPP
Key Points


      • Talk to users
      • Explore many designs
      • Iterate based on user feedback


                      [Source] Stanford CS193P
www.MitAPP.com                                   http://twitter.com/MitAPP
www.MitAPP.com   http://twitter.com/MitAPP
Resources
     •   Main Apple Dev Site: http://developer.apple.com/iphone/

     •   Community Forum: http://www.iphonedevsdk.com/

     •   Tips: http://iphonedevelopertips.com/

     •   Blog: http://iphoneincubator.com/blog/

     •   StackOverflow: http://stackoverflow.com/

     •   Italian Sites: iSpazio, iPhoneItalia, MelaMorsicata, MacLounge, etc...

     •   ... search “iphone dev” on Google...

     •   To create video trailers for your app: http://www.vimov.com/isimulate/




www.MitAPP.com                                                              http://twitter.com/MitAPP
DEMO


   • DEMO        (30’):

        Create an application




www.MitAPP.com                   http://twitter.com/MitAPP
From Upstart to Startup to Grownup
        (Jessica Kahn - Tapoulus)
  With more than 15 million downloads, “Tap Tap Revenge” is by far the most popular game
  on the iPhone and iPod touch.




       •   Some core principles behind running a succesful
           software startup don't change:
           - Build a great team
           - Strengthen you brand
           - Work to become more predictable...
           - ...Without killing creativity and energy
           - Seek out and listen to advice


                                      [Source] Stanford CS193P
www.MitAPP.com                                                               http://twitter.com/MitAPP
From Upstart to Startup to Grownup
        (Jessica Kahn - Tapoulus)


      • Build a Great Team
         - Don't be afraid to be very selective
         - Passion and integrity are paramount
         - Be flexible about job descriptions when
         you're small
         - As you grow, make sure to diversify


                       [Source] Stanford CS193P
www.MitAPP.com                                    http://twitter.com/MitAPP
From Upstart to Startup to Grownup
        (Jessica Kahn - Tapoulus)

      • Strengthen Your Brand
         - Invest in the aestetics
         - Don't compromise "too much" on quality
         - Use Twitter,YouTube, and other
         community-driven sites
         - Piggy-back on Apple's marketing prowess
         - Store rankings and ratings matter


                       [Source] Stanford CS193P
www.MitAPP.com                                    http://twitter.com/MitAPP
From Upstart to Startup to Grownup
        (Jessica Kahn - Tapoulus)

      •   Become More Predictable
          - Know exactly what needs to go into any given
          release
          - Track how long it takes you to get that work done
          - Get status from your team regularly
          - Become a conservative when you're getting ready
          to ship
          - Code reviews, even if informal
          - "Blockers" only
          - Ad hoc Distribution for Betas

                           [Source] Stanford CS193P
www.MitAPP.com                                        http://twitter.com/MitAPP
From Upstart to Startup to Grownup
        (Jessica Kahn - Tapoulus)


     • Encourage Creativity
       - 20% time
         - "Skunkworks" (from Wikipedia: “widely used in
         business, engineering, and technical fields to describe a group within an
         organization given a high degree of autonomy andunhampered by
         bureaucracy, tasked with working on advanced or secret projects.”)
         - Facilitate healty brainstorming
         - Stay flexible


                                   [Source] Stanford CS193P
www.MitAPP.com                                                          http://twitter.com/MitAPP
From Upstart to Startup to Grownup
        (Jessica Kahn - Tapoulus)


      • Seek Advice
         - Listen to your customers
         (GetSatisfaction, Twitter)
         - Have coffee with your peers
         - Pay attention to your current & potential
         investor


                       [Source] Stanford CS193P
www.MitAPP.com                                    http://twitter.com/MitAPP
From Upstart to Startup to Grownup
         (Jessica Kahn - Tapoulus)

 •   Successful iPhone Software Development Practices:
     What I Learned in School:
     - If you struggle with a crazy bug, and you start to suspect the compiler,
     you're wrong, it's not the comiler, it's you
     What I Learned at Apple:
     - Actually, it could well be the compiler.
     What I Learned at Tapolous:
     - Ok, it's probably not the compiler.
     - ...but it sure as heck might be some crazy edge case in what is a
     fantastically rich, but extremely fast-moving, and very new, platform.


                               [Source] Stanford CS193P
www.MitAPP.com                                                 http://twitter.com/MitAPP
From Upstart to Startup to Grownup
        (Jessica Kahn - Tapoulus)

      • Blame is Unimportant
         - Hone you problem-solving skills
         - You can never be too good at gdb
         - You can never be too foog at Googling
         - You can never know too many people
         - Code defensively
         - Establish some "best practices"


                       [Source] Stanford CS193P
www.MitAPP.com                                    http://twitter.com/MitAPP
From Upstart to Startup to Grownup
        (Jessica Kahn - Tapoulus)

  •   Best Practices
      - Don't be cute; your new teammate will not appreciate
      how smart you are nearly as much as you do
      - Werror was implemented for a reason
      - Step throug new code, and/or write unit tests
      - Periodically chech for leaks, smashers, and other
      misbehavior
      - For Internet-savvy applications, use a sniffer to verify
      traffic patterns


                          [Source] Stanford CS193P
www.MitAPP.com                                       http://twitter.com/MitAPP
From Upstart to Startup to Grownup
        (Jessica Kahn - Tapoulus)


      • Best Practices , iPhone-Specific
         - It's just like Mac OS X, right? Wrong.
         - Use real devices for testing, regurarly
         - Offline and bad Edge connections are
         common use cases



                        [Source] Stanford CS193P
www.MitAPP.com                                     http://twitter.com/MitAPP
From Upstart to Startup to Grownup
        (Jessica Kahn - Tapoulus)


      • Wrapping UP
         - The iTunes App Store is a crazy and fun
         marketplace
         - The iPhone OS is a craty and fun platform
         - You can be indie and be a success
         - You can build a company and be a succes


                       [Source] Stanford CS193P
www.MitAPP.com                                    http://twitter.com/MitAPP

Contenu connexe

Tendances

App Development Smart Guide
App Development Smart GuideApp Development Smart Guide
App Development Smart GuideEmma Mitchell
 
Getting Ideas Out of Your Head and Into the App Store
Getting Ideas Out of Your Head and Into the App StoreGetting Ideas Out of Your Head and Into the App Store
Getting Ideas Out of Your Head and Into the App StoreTraci Lawson
 
Deep linking at App Promotion Summit
Deep linking at App Promotion SummitDeep linking at App Promotion Summit
Deep linking at App Promotion SummitAlexandre Jubien
 
Sugsa mobile ux_april 2013
Sugsa mobile ux_april 2013Sugsa mobile ux_april 2013
Sugsa mobile ux_april 2013Phil Barrett
 
Mobile Apps - Where's the beef
Mobile Apps - Where's the beefMobile Apps - Where's the beef
Mobile Apps - Where's the beefcompuccino
 
Growth hacking des apps mobiles - au Web2Connect #W2C15
Growth hacking des apps mobiles - au Web2Connect #W2C15Growth hacking des apps mobiles - au Web2Connect #W2C15
Growth hacking des apps mobiles - au Web2Connect #W2C15Alexandre Jubien
 
Marketing your app on a shoestring - tips on PR, marketing, ASO and self-pub...
Marketing your app on a shoestring  - tips on PR, marketing, ASO and self-pub...Marketing your app on a shoestring  - tips on PR, marketing, ASO and self-pub...
Marketing your app on a shoestring - tips on PR, marketing, ASO and self-pub...Big Ideas Machine
 

Tendances (7)

App Development Smart Guide
App Development Smart GuideApp Development Smart Guide
App Development Smart Guide
 
Getting Ideas Out of Your Head and Into the App Store
Getting Ideas Out of Your Head and Into the App StoreGetting Ideas Out of Your Head and Into the App Store
Getting Ideas Out of Your Head and Into the App Store
 
Deep linking at App Promotion Summit
Deep linking at App Promotion SummitDeep linking at App Promotion Summit
Deep linking at App Promotion Summit
 
Sugsa mobile ux_april 2013
Sugsa mobile ux_april 2013Sugsa mobile ux_april 2013
Sugsa mobile ux_april 2013
 
Mobile Apps - Where's the beef
Mobile Apps - Where's the beefMobile Apps - Where's the beef
Mobile Apps - Where's the beef
 
Growth hacking des apps mobiles - au Web2Connect #W2C15
Growth hacking des apps mobiles - au Web2Connect #W2C15Growth hacking des apps mobiles - au Web2Connect #W2C15
Growth hacking des apps mobiles - au Web2Connect #W2C15
 
Marketing your app on a shoestring - tips on PR, marketing, ASO and self-pub...
Marketing your app on a shoestring  - tips on PR, marketing, ASO and self-pub...Marketing your app on a shoestring  - tips on PR, marketing, ASO and self-pub...
Marketing your app on a shoestring - tips on PR, marketing, ASO and self-pub...
 

Similaire à Making An App

How not to fail while making an app like instagram
How not to fail while making an app like instagramHow not to fail while making an app like instagram
How not to fail while making an app like instagramNarola Infotech
 
How you can create an app and start earning
How you can create an app and start earningHow you can create an app and start earning
How you can create an app and start earningAdrianaMorsi
 
Mobile Healthcare Apps: 7 things to remember to get your app noticed
Mobile Healthcare Apps: 7 things to remember to get your app noticedMobile Healthcare Apps: 7 things to remember to get your app noticed
Mobile Healthcare Apps: 7 things to remember to get your app noticedScott Hague
 
Keep an eye out for the Top iPhone App Development Trends for 2023.pdf
Keep an eye out for the Top iPhone App Development Trends for 2023.pdfKeep an eye out for the Top iPhone App Development Trends for 2023.pdf
Keep an eye out for the Top iPhone App Development Trends for 2023.pdfTechugo
 
The App Marketing Playbook
The App Marketing PlaybookThe App Marketing Playbook
The App Marketing PlaybookOren Todoros
 
iPhone & iPad App Cash - The *COMPLETE GUIDE* to create iPhone app and how to...
iPhone & iPad App Cash - The *COMPLETE GUIDE* to create iPhone app and how to...iPhone & iPad App Cash - The *COMPLETE GUIDE* to create iPhone app and how to...
iPhone & iPad App Cash - The *COMPLETE GUIDE* to create iPhone app and how to...jcitnmkt
 
How To Successfully Market Your I Phone Application
How To Successfully Market Your I Phone ApplicationHow To Successfully Market Your I Phone Application
How To Successfully Market Your I Phone ApplicationLuc-Olivier Lafeuille
 
2010 01marketyouriphoneappfabernovel-100125143710-phpapp02
2010 01marketyouriphoneappfabernovel-100125143710-phpapp022010 01marketyouriphoneappfabernovel-100125143710-phpapp02
2010 01marketyouriphoneappfabernovel-100125143710-phpapp02Kazma Furuuchi
 
How to successfully market your iPhone Application
How to successfully market your iPhone ApplicationHow to successfully market your iPhone Application
How to successfully market your iPhone ApplicationFabernovel
 
How to market your app
How to market your appHow to market your app
How to market your appOuriel Ohayon
 
Cracking the App store ranking algorithm
Cracking the App store ranking algorithmCracking the App store ranking algorithm
Cracking the App store ranking algorithmRomain PERRIER
 
The Ten Commandments of App Marketing - Big Ideas Machine at Digital Growth Day
The Ten Commandments of App Marketing - Big Ideas Machine at Digital Growth DayThe Ten Commandments of App Marketing - Big Ideas Machine at Digital Growth Day
The Ten Commandments of App Marketing - Big Ideas Machine at Digital Growth DayOMN
 
The ten commandments of app marketing
The ten commandments of app marketingThe ten commandments of app marketing
The ten commandments of app marketingBig Ideas Machine
 
Infuse Creative Local/Mobile Search 7 the iPhone - PubCon
Infuse Creative Local/Mobile Search 7 the iPhone - PubConInfuse Creative Local/Mobile Search 7 the iPhone - PubCon
Infuse Creative Local/Mobile Search 7 the iPhone - PubConinfusecreative
 
Is i phone app development profitable
Is i phone app development profitableIs i phone app development profitable
Is i phone app development profitableRedbytes Software
 
Startup & Mobilise 21.09.2016
Startup & Mobilise 21.09.2016Startup & Mobilise 21.09.2016
Startup & Mobilise 21.09.2016Sonin
 
I have an idea for an app – what to do next?
I have an idea for an app – what to do next?I have an idea for an app – what to do next?
I have an idea for an app – what to do next?Apex Labs
 
What is app store optimization?
What is app store optimization?What is app store optimization?
What is app store optimization?Mobile Pundits
 

Similaire à Making An App (20)

How not to fail while making an app like instagram
How not to fail while making an app like instagramHow not to fail while making an app like instagram
How not to fail while making an app like instagram
 
How you can create an app and start earning
How you can create an app and start earningHow you can create an app and start earning
How you can create an app and start earning
 
Mobile Healthcare Apps: 7 things to remember to get your app noticed
Mobile Healthcare Apps: 7 things to remember to get your app noticedMobile Healthcare Apps: 7 things to remember to get your app noticed
Mobile Healthcare Apps: 7 things to remember to get your app noticed
 
Keep an eye out for the Top iPhone App Development Trends for 2023.pdf
Keep an eye out for the Top iPhone App Development Trends for 2023.pdfKeep an eye out for the Top iPhone App Development Trends for 2023.pdf
Keep an eye out for the Top iPhone App Development Trends for 2023.pdf
 
The App Marketing Playbook
The App Marketing PlaybookThe App Marketing Playbook
The App Marketing Playbook
 
iPhone & iPad App Cash - The *COMPLETE GUIDE* to create iPhone app and how to...
iPhone & iPad App Cash - The *COMPLETE GUIDE* to create iPhone app and how to...iPhone & iPad App Cash - The *COMPLETE GUIDE* to create iPhone app and how to...
iPhone & iPad App Cash - The *COMPLETE GUIDE* to create iPhone app and how to...
 
How To Successfully Market Your I Phone Application
How To Successfully Market Your I Phone ApplicationHow To Successfully Market Your I Phone Application
How To Successfully Market Your I Phone Application
 
2010 01marketyouriphoneappfabernovel-100125143710-phpapp02
2010 01marketyouriphoneappfabernovel-100125143710-phpapp022010 01marketyouriphoneappfabernovel-100125143710-phpapp02
2010 01marketyouriphoneappfabernovel-100125143710-phpapp02
 
How To Market Your App
How To Market Your AppHow To Market Your App
How To Market Your App
 
How to successfully market your iPhone Application
How to successfully market your iPhone ApplicationHow to successfully market your iPhone Application
How to successfully market your iPhone Application
 
faberNovel: Market your iPhone app
faberNovel: Market your iPhone appfaberNovel: Market your iPhone app
faberNovel: Market your iPhone app
 
How to market your app
How to market your appHow to market your app
How to market your app
 
Cracking the App store ranking algorithm
Cracking the App store ranking algorithmCracking the App store ranking algorithm
Cracking the App store ranking algorithm
 
The Ten Commandments of App Marketing - Big Ideas Machine at Digital Growth Day
The Ten Commandments of App Marketing - Big Ideas Machine at Digital Growth DayThe Ten Commandments of App Marketing - Big Ideas Machine at Digital Growth Day
The Ten Commandments of App Marketing - Big Ideas Machine at Digital Growth Day
 
The ten commandments of app marketing
The ten commandments of app marketingThe ten commandments of app marketing
The ten commandments of app marketing
 
Infuse Creative Local/Mobile Search 7 the iPhone - PubCon
Infuse Creative Local/Mobile Search 7 the iPhone - PubConInfuse Creative Local/Mobile Search 7 the iPhone - PubCon
Infuse Creative Local/Mobile Search 7 the iPhone - PubCon
 
Is i phone app development profitable
Is i phone app development profitableIs i phone app development profitable
Is i phone app development profitable
 
Startup & Mobilise 21.09.2016
Startup & Mobilise 21.09.2016Startup & Mobilise 21.09.2016
Startup & Mobilise 21.09.2016
 
I have an idea for an app – what to do next?
I have an idea for an app – what to do next?I have an idea for an app – what to do next?
I have an idea for an app – what to do next?
 
What is app store optimization?
What is app store optimization?What is app store optimization?
What is app store optimization?
 

Plus de Omar Cafini

Airbag studio - Convegno Autoimprenditorialità - Senigallia 2015
Airbag studio - Convegno Autoimprenditorialità - Senigallia 2015Airbag studio - Convegno Autoimprenditorialità - Senigallia 2015
Airbag studio - Convegno Autoimprenditorialità - Senigallia 2015Omar Cafini
 
La mia storia di Libero Professionista
La mia storia di Libero ProfessionistaLa mia storia di Libero Professionista
La mia storia di Libero ProfessionistaOmar Cafini
 
PRESENTAZIONE DEI PRINCIPALI SOCIAL MEDIA E LORO UTILIZZO NEL BUSINESS
PRESENTAZIONE DEI PRINCIPALI SOCIAL MEDIA E LORO UTILIZZO NEL BUSINESSPRESENTAZIONE DEI PRINCIPALI SOCIAL MEDIA E LORO UTILIZZO NEL BUSINESS
PRESENTAZIONE DEI PRINCIPALI SOCIAL MEDIA E LORO UTILIZZO NEL BUSINESSOmar Cafini
 
Mobile & territorio
Mobile & territorioMobile & territorio
Mobile & territorioOmar Cafini
 
Sviluppare e vendere applicazioni per iPhone
Sviluppare e vendere applicazioni per iPhoneSviluppare e vendere applicazioni per iPhone
Sviluppare e vendere applicazioni per iPhoneOmar Cafini
 
Augmented Reality on iPhone Applications
Augmented Reality on iPhone ApplicationsAugmented Reality on iPhone Applications
Augmented Reality on iPhone ApplicationsOmar Cafini
 
Applicazioni iPhone: un mercato per tutti?
Applicazioni iPhone: un mercato per tutti?Applicazioni iPhone: un mercato per tutti?
Applicazioni iPhone: un mercato per tutti?Omar Cafini
 
iPhone Development Tools
iPhone Development ToolsiPhone Development Tools
iPhone Development ToolsOmar Cafini
 
MarcheIN - Il centro benessere delle relazioni
MarcheIN - Il centro benessere delle relazioniMarcheIN - Il centro benessere delle relazioni
MarcheIN - Il centro benessere delle relazioniOmar Cafini
 
presentazione MarcheIN
presentazione MarcheINpresentazione MarcheIN
presentazione MarcheINOmar Cafini
 
Bologna In 23 Febbraio2009
Bologna In 23 Febbraio2009Bologna In 23 Febbraio2009
Bologna In 23 Febbraio2009Omar Cafini
 
SolidITcamp - Piattaforma Open per favorire la comunicazione delle realtà non...
SolidITcamp - Piattaforma Open per favorire la comunicazione delle realtà non...SolidITcamp - Piattaforma Open per favorire la comunicazione delle realtà non...
SolidITcamp - Piattaforma Open per favorire la comunicazione delle realtà non...Omar Cafini
 

Plus de Omar Cafini (12)

Airbag studio - Convegno Autoimprenditorialità - Senigallia 2015
Airbag studio - Convegno Autoimprenditorialità - Senigallia 2015Airbag studio - Convegno Autoimprenditorialità - Senigallia 2015
Airbag studio - Convegno Autoimprenditorialità - Senigallia 2015
 
La mia storia di Libero Professionista
La mia storia di Libero ProfessionistaLa mia storia di Libero Professionista
La mia storia di Libero Professionista
 
PRESENTAZIONE DEI PRINCIPALI SOCIAL MEDIA E LORO UTILIZZO NEL BUSINESS
PRESENTAZIONE DEI PRINCIPALI SOCIAL MEDIA E LORO UTILIZZO NEL BUSINESSPRESENTAZIONE DEI PRINCIPALI SOCIAL MEDIA E LORO UTILIZZO NEL BUSINESS
PRESENTAZIONE DEI PRINCIPALI SOCIAL MEDIA E LORO UTILIZZO NEL BUSINESS
 
Mobile & territorio
Mobile & territorioMobile & territorio
Mobile & territorio
 
Sviluppare e vendere applicazioni per iPhone
Sviluppare e vendere applicazioni per iPhoneSviluppare e vendere applicazioni per iPhone
Sviluppare e vendere applicazioni per iPhone
 
Augmented Reality on iPhone Applications
Augmented Reality on iPhone ApplicationsAugmented Reality on iPhone Applications
Augmented Reality on iPhone Applications
 
Applicazioni iPhone: un mercato per tutti?
Applicazioni iPhone: un mercato per tutti?Applicazioni iPhone: un mercato per tutti?
Applicazioni iPhone: un mercato per tutti?
 
iPhone Development Tools
iPhone Development ToolsiPhone Development Tools
iPhone Development Tools
 
MarcheIN - Il centro benessere delle relazioni
MarcheIN - Il centro benessere delle relazioniMarcheIN - Il centro benessere delle relazioni
MarcheIN - Il centro benessere delle relazioni
 
presentazione MarcheIN
presentazione MarcheINpresentazione MarcheIN
presentazione MarcheIN
 
Bologna In 23 Febbraio2009
Bologna In 23 Febbraio2009Bologna In 23 Febbraio2009
Bologna In 23 Febbraio2009
 
SolidITcamp - Piattaforma Open per favorire la comunicazione delle realtà non...
SolidITcamp - Piattaforma Open per favorire la comunicazione delle realtà non...SolidITcamp - Piattaforma Open per favorire la comunicazione delle realtà non...
SolidITcamp - Piattaforma Open per favorire la comunicazione delle realtà non...
 

Dernier

Narcotic and Non Narcotic Analgesic..pdf
Narcotic and Non Narcotic Analgesic..pdfNarcotic and Non Narcotic Analgesic..pdf
Narcotic and Non Narcotic Analgesic..pdfPrerana Jadhav
 
Q-Factor General Quiz-7th April 2024, Quiz Club NITW
Q-Factor General Quiz-7th April 2024, Quiz Club NITWQ-Factor General Quiz-7th April 2024, Quiz Club NITW
Q-Factor General Quiz-7th April 2024, Quiz Club NITWQuiz Club NITW
 
Objectives n learning outcoms - MD 20240404.pptx
Objectives n learning outcoms - MD 20240404.pptxObjectives n learning outcoms - MD 20240404.pptx
Objectives n learning outcoms - MD 20240404.pptxMadhavi Dharankar
 
31 ĐỀ THI THỬ VÀO LỚP 10 - TIẾNG ANH - FORM MỚI 2025 - 40 CÂU HỎI - BÙI VĂN V...
31 ĐỀ THI THỬ VÀO LỚP 10 - TIẾNG ANH - FORM MỚI 2025 - 40 CÂU HỎI - BÙI VĂN V...31 ĐỀ THI THỬ VÀO LỚP 10 - TIẾNG ANH - FORM MỚI 2025 - 40 CÂU HỎI - BÙI VĂN V...
31 ĐỀ THI THỬ VÀO LỚP 10 - TIẾNG ANH - FORM MỚI 2025 - 40 CÂU HỎI - BÙI VĂN V...Nguyen Thanh Tu Collection
 
The role of Geography in climate education: science and active citizenship
The role of Geography in climate education: science and active citizenshipThe role of Geography in climate education: science and active citizenship
The role of Geography in climate education: science and active citizenshipKarl Donert
 
4.9.24 Social Capital and Social Exclusion.pptx
4.9.24 Social Capital and Social Exclusion.pptx4.9.24 Social Capital and Social Exclusion.pptx
4.9.24 Social Capital and Social Exclusion.pptxmary850239
 
Decoding the Tweet _ Practical Criticism in the Age of Hashtag.pptx
Decoding the Tweet _ Practical Criticism in the Age of Hashtag.pptxDecoding the Tweet _ Practical Criticism in the Age of Hashtag.pptx
Decoding the Tweet _ Practical Criticism in the Age of Hashtag.pptxDhatriParmar
 
Satirical Depths - A Study of Gabriel Okara's Poem - 'You Laughed and Laughed...
Satirical Depths - A Study of Gabriel Okara's Poem - 'You Laughed and Laughed...Satirical Depths - A Study of Gabriel Okara's Poem - 'You Laughed and Laughed...
Satirical Depths - A Study of Gabriel Okara's Poem - 'You Laughed and Laughed...HetalPathak10
 
CLASSIFICATION OF ANTI - CANCER DRUGS.pptx
CLASSIFICATION OF ANTI - CANCER DRUGS.pptxCLASSIFICATION OF ANTI - CANCER DRUGS.pptx
CLASSIFICATION OF ANTI - CANCER DRUGS.pptxAnupam32727
 
Team Lead Succeed – Helping you and your team achieve high-performance teamwo...
Team Lead Succeed – Helping you and your team achieve high-performance teamwo...Team Lead Succeed – Helping you and your team achieve high-performance teamwo...
Team Lead Succeed – Helping you and your team achieve high-performance teamwo...Association for Project Management
 
ClimART Action | eTwinning Project
ClimART Action    |    eTwinning ProjectClimART Action    |    eTwinning Project
ClimART Action | eTwinning Projectjordimapav
 
Comparative Literature in India by Amiya dev.pptx
Comparative Literature in India by Amiya dev.pptxComparative Literature in India by Amiya dev.pptx
Comparative Literature in India by Amiya dev.pptxAvaniJani1
 
Blowin' in the Wind of Caste_ Bob Dylan's Song as a Catalyst for Social Justi...
Blowin' in the Wind of Caste_ Bob Dylan's Song as a Catalyst for Social Justi...Blowin' in the Wind of Caste_ Bob Dylan's Song as a Catalyst for Social Justi...
Blowin' in the Wind of Caste_ Bob Dylan's Song as a Catalyst for Social Justi...DhatriParmar
 
How to Manage Buy 3 Get 1 Free in Odoo 17
How to Manage Buy 3 Get 1 Free in Odoo 17How to Manage Buy 3 Get 1 Free in Odoo 17
How to Manage Buy 3 Get 1 Free in Odoo 17Celine George
 
Unraveling Hypertext_ Analyzing Postmodern Elements in Literature.pptx
Unraveling Hypertext_ Analyzing  Postmodern Elements in  Literature.pptxUnraveling Hypertext_ Analyzing  Postmodern Elements in  Literature.pptx
Unraveling Hypertext_ Analyzing Postmodern Elements in Literature.pptxDhatriParmar
 
BÀI TẬP BỔ TRỢ TIẾNG ANH 8 - I-LEARN SMART WORLD - CẢ NĂM - CÓ FILE NGHE (BẢN...
BÀI TẬP BỔ TRỢ TIẾNG ANH 8 - I-LEARN SMART WORLD - CẢ NĂM - CÓ FILE NGHE (BẢN...BÀI TẬP BỔ TRỢ TIẾNG ANH 8 - I-LEARN SMART WORLD - CẢ NĂM - CÓ FILE NGHE (BẢN...
BÀI TẬP BỔ TRỢ TIẾNG ANH 8 - I-LEARN SMART WORLD - CẢ NĂM - CÓ FILE NGHE (BẢN...Nguyen Thanh Tu Collection
 

Dernier (20)

Narcotic and Non Narcotic Analgesic..pdf
Narcotic and Non Narcotic Analgesic..pdfNarcotic and Non Narcotic Analgesic..pdf
Narcotic and Non Narcotic Analgesic..pdf
 
Spearman's correlation,Formula,Advantages,
Spearman's correlation,Formula,Advantages,Spearman's correlation,Formula,Advantages,
Spearman's correlation,Formula,Advantages,
 
Q-Factor General Quiz-7th April 2024, Quiz Club NITW
Q-Factor General Quiz-7th April 2024, Quiz Club NITWQ-Factor General Quiz-7th April 2024, Quiz Club NITW
Q-Factor General Quiz-7th April 2024, Quiz Club NITW
 
Objectives n learning outcoms - MD 20240404.pptx
Objectives n learning outcoms - MD 20240404.pptxObjectives n learning outcoms - MD 20240404.pptx
Objectives n learning outcoms - MD 20240404.pptx
 
31 ĐỀ THI THỬ VÀO LỚP 10 - TIẾNG ANH - FORM MỚI 2025 - 40 CÂU HỎI - BÙI VĂN V...
31 ĐỀ THI THỬ VÀO LỚP 10 - TIẾNG ANH - FORM MỚI 2025 - 40 CÂU HỎI - BÙI VĂN V...31 ĐỀ THI THỬ VÀO LỚP 10 - TIẾNG ANH - FORM MỚI 2025 - 40 CÂU HỎI - BÙI VĂN V...
31 ĐỀ THI THỬ VÀO LỚP 10 - TIẾNG ANH - FORM MỚI 2025 - 40 CÂU HỎI - BÙI VĂN V...
 
The role of Geography in climate education: science and active citizenship
The role of Geography in climate education: science and active citizenshipThe role of Geography in climate education: science and active citizenship
The role of Geography in climate education: science and active citizenship
 
4.9.24 Social Capital and Social Exclusion.pptx
4.9.24 Social Capital and Social Exclusion.pptx4.9.24 Social Capital and Social Exclusion.pptx
4.9.24 Social Capital and Social Exclusion.pptx
 
Decoding the Tweet _ Practical Criticism in the Age of Hashtag.pptx
Decoding the Tweet _ Practical Criticism in the Age of Hashtag.pptxDecoding the Tweet _ Practical Criticism in the Age of Hashtag.pptx
Decoding the Tweet _ Practical Criticism in the Age of Hashtag.pptx
 
Introduction to Research ,Need for research, Need for design of Experiments, ...
Introduction to Research ,Need for research, Need for design of Experiments, ...Introduction to Research ,Need for research, Need for design of Experiments, ...
Introduction to Research ,Need for research, Need for design of Experiments, ...
 
Satirical Depths - A Study of Gabriel Okara's Poem - 'You Laughed and Laughed...
Satirical Depths - A Study of Gabriel Okara's Poem - 'You Laughed and Laughed...Satirical Depths - A Study of Gabriel Okara's Poem - 'You Laughed and Laughed...
Satirical Depths - A Study of Gabriel Okara's Poem - 'You Laughed and Laughed...
 
Paradigm shift in nursing research by RS MEHTA
Paradigm shift in nursing research by RS MEHTAParadigm shift in nursing research by RS MEHTA
Paradigm shift in nursing research by RS MEHTA
 
CLASSIFICATION OF ANTI - CANCER DRUGS.pptx
CLASSIFICATION OF ANTI - CANCER DRUGS.pptxCLASSIFICATION OF ANTI - CANCER DRUGS.pptx
CLASSIFICATION OF ANTI - CANCER DRUGS.pptx
 
Team Lead Succeed – Helping you and your team achieve high-performance teamwo...
Team Lead Succeed – Helping you and your team achieve high-performance teamwo...Team Lead Succeed – Helping you and your team achieve high-performance teamwo...
Team Lead Succeed – Helping you and your team achieve high-performance teamwo...
 
ClimART Action | eTwinning Project
ClimART Action    |    eTwinning ProjectClimART Action    |    eTwinning Project
ClimART Action | eTwinning Project
 
Comparative Literature in India by Amiya dev.pptx
Comparative Literature in India by Amiya dev.pptxComparative Literature in India by Amiya dev.pptx
Comparative Literature in India by Amiya dev.pptx
 
Blowin' in the Wind of Caste_ Bob Dylan's Song as a Catalyst for Social Justi...
Blowin' in the Wind of Caste_ Bob Dylan's Song as a Catalyst for Social Justi...Blowin' in the Wind of Caste_ Bob Dylan's Song as a Catalyst for Social Justi...
Blowin' in the Wind of Caste_ Bob Dylan's Song as a Catalyst for Social Justi...
 
How to Manage Buy 3 Get 1 Free in Odoo 17
How to Manage Buy 3 Get 1 Free in Odoo 17How to Manage Buy 3 Get 1 Free in Odoo 17
How to Manage Buy 3 Get 1 Free in Odoo 17
 
Chi-Square Test Non Parametric Test Categorical Variable
Chi-Square Test Non Parametric Test Categorical VariableChi-Square Test Non Parametric Test Categorical Variable
Chi-Square Test Non Parametric Test Categorical Variable
 
Unraveling Hypertext_ Analyzing Postmodern Elements in Literature.pptx
Unraveling Hypertext_ Analyzing  Postmodern Elements in  Literature.pptxUnraveling Hypertext_ Analyzing  Postmodern Elements in  Literature.pptx
Unraveling Hypertext_ Analyzing Postmodern Elements in Literature.pptx
 
BÀI TẬP BỔ TRỢ TIẾNG ANH 8 - I-LEARN SMART WORLD - CẢ NĂM - CÓ FILE NGHE (BẢN...
BÀI TẬP BỔ TRỢ TIẾNG ANH 8 - I-LEARN SMART WORLD - CẢ NĂM - CÓ FILE NGHE (BẢN...BÀI TẬP BỔ TRỢ TIẾNG ANH 8 - I-LEARN SMART WORLD - CẢ NĂM - CÓ FILE NGHE (BẢN...
BÀI TẬP BỔ TRỢ TIẾNG ANH 8 - I-LEARN SMART WORLD - CẢ NĂM - CÓ FILE NGHE (BẢN...
 

Making An App

  • 2. Start thinking about an app Create a Mockup: http://iphonemockup.lkmc.ch/ www.MitAPP.com http://twitter.com/MitAPP
  • 3. And now? NavBar? TabBar? how many buttons? Colors? www.MitAPP.com http://twitter.com/MitAPP
  • 4. Make a lot of sketches www.MitAPP.com http://twitter.com/MitAPP
  • 5. DEMO • DEMO (15-20’): Brainstorming about a project www.MitAPP.com http://twitter.com/MitAPP
  • 6. Turning an iPhone Idea into a successful iPhone app 4-step that lead from an initial idea to the final product that’s available in the AppStore. First there is great idea, right? But how good is the idea really? Is it 1 worth to proceed and invest money in developing an iPhone app? Checking an idea and validating its feasibility is one of the most important 2 steps to avoid spending money on the wrong thing! Once the idea is confirmed as having the right potential the 3 development process can be kicked off. Do it yourself or get the pros in to do it for you. Submitting to Apple and getting the app on users phones is next. 4 Just putting the app in the AppStore wont sell it! [source: jtribe.com.au] www.MitAPP.com http://twitter.com/MitAPP
  • 7. 1 The Idea “Hey, I have a great iPhone App idea!” So you got a great iPhone application idea. That is obviously the very first step of every great iPhone app. Make sure you know who the end-user will be and what problem it will solve. But even an unconventional “quirky” idea may become a very successful iPhone app. We are not going to tell you how to generate a great idea. We’d rather tell you how to validate and do some sanity checking of you great idea. Manifest your idea with some key principles that describe the core of your idea. [source: jtribe.com.au] www.MitAPP.com http://twitter.com/MitAPP Prepared by jTribe, 2009
  • 8. 2 The Idea Check “...and it actually could work” The critical question is actually what you want to achieve with your iPhone app. Basically there are two ways to get return on an iPhone app. 1) make a million through AppStore sales 2) use it as a marketing tool to promote another service or product In both cases it is crucial to understand the structure and size of your user-base. In the first case the size will determine the dollar-return you can make with the app. In the second case it will determine the marketing effect. Assuming you want to make a million dollars through AppStore sales it is crucial that you understand the iPhone economics. How many iPhone users are there? How much money can I make in my segment? ... If you don’t plan to become number one in the AppStore in the category you target then don’t expect a return of investment. We highly recommend that you ensure that your idea can enter the top 10 apps in the AppStore. Otherwise, consider it a learning exercise. [source: jtribe.com.au] www.MitAPP.com http://twitter.com/MitAPP Prepared by jTribe, 2009
  • 9. 3 Development “Lets get this baby built” So you are convinced that your idea could fly? Then it’s time to get in to the technical part. Development costs money. Great iPhone development cost even more money. If you are really committed to develop the best possible iPhone app then you should move ahead and engage the development process. However, if you have doubts at this stage then don’t waste your money or effort. The development process could fill a book. Assuming that you are not a professional iPhone developer here is a brief summary: Get your scope right. Prepare your wireframes. Get some quotes from iPhone developers. Make a decision and choose the most awesome developers you can afford. Now let the iPhone developers do their magic and make sure they stick to your initial idea. Find a group of beta tester. Submit your iPhone application to the Apple AppStore. Be prepared to wait a couple of weeks before Apple has approved your app. There are many little things that could go wrong in this step so get some professional help. AND DON’T FORGET YOUR MARKETING [source: jtribe.com.au] www.MitAPP.com http://twitter.com/MitAPP Prepared by jTribe, 2009
  • 10. 4 Life in the AppStore “I just made a million $” Great, you got your app in the AppStore. If you have timed your marketing correctly you should have a huge initial boost of app downloads. Make sure you are going to keep the momentum up. Be wise around any prices changes decisions and consider price elasticity. Monitor your app usage. (e.g. pinchmedia.com) Communicate with your app users. (e.g. shoutmob.com) Use tools and promotion means. Release updates. Keep on top of the curve. If your idea flies then makes sure that you add features users may like. [source: jtribe.com.au] www.MitAPP.com http://twitter.com/MitAPP Prepared by jTribe, 2009
  • 11. Useful Tips to plan • Work in group (if possible) • Search simil works, study the market • Maybe there are already a lot of code developed and free to use... • Agile Tech. • Code is the last thing www.MitAPP.com http://twitter.com/MitAPP
  • 12. Anatomy of an Application • Compiled code ■Your code ■ Frameworks • Nib files ■ UI elements and other objects ■ Details about object relationships • Resources (images, sounds, strings, database, etc.) • Info.plist file (application configuration) • UIKit Framework • Provides standard interface elements www.MitAPP.com http://twitter.com/MitAPP
  • 13. UIKit Framework • Starts your application • Every application has a single instance of UIApplication ■ Singleton design pattern @interface UIApplication + (UIApplication *)sharedApplication @end ■ Orchestrates the lifecycle of an application ■ Dispatches events ■ Manages status bar, application icon badge ■ Rarely subclassed ■ Uses delegation instead www.MitAPP.com http://twitter.com/MitAPP
  • 14. Delegation • Control passed to delegate objects to perform application- specific behavior • Avoids need to subclass complex objects • Many UIKit classes use delegates ■ UIApplication ■ UITableView ■ UITextField www.MitAPP.com http://twitter.com/MitAPP
  • 15. UIApplication Delegate • Xcode project templates have one set up by default • Object you provide that participates in application lifecycle • Can implement various methods which UIApplication will call • Examples: - (void)applicationDidReceiveMemoryWarning:(UIApplication *)application; - (void)applicationWillResignActive:(UIApplication *)application; - (BOOL)application:(UIApplication *)application handleOpenURL:(NSURL *)url; - (void)applicationDidFinishLaunching:(UIApplication *)application; - (void)applicationWillTerminate:(UIApplication *)application; www.MitAPP.com http://twitter.com/MitAPP
  • 16. Info.plist file • Property List (often XML), describing your application ■ Icon appearance ■ Status bar style (default, black, hidden) ■ Orientation ■ Uses Wi-fi networking ■ System Requirements • Can edit most properties in Xcode ■ Project > Edit Active Target “Foo” menu item ■ On the properties tab www.MitAPP.com http://twitter.com/MitAPP
  • 17. Model,View, Controller Model • Manages the app data and state • Not concerned with UI or presentation • Often persists somewhere • Same model should be reusable, unchanged in different interfaces www.MitAPP.com http://twitter.com/MitAPP
  • 18. Model,View, Controller View • Present the Model to the user in an appropriate interface • Allows user to manipulate data • Does not store any data ■ (except to cache state) • Easily reusable & configurable to display different data www.MitAPP.com http://twitter.com/MitAPP
  • 19. Model,View, Controller Controller •Intermediary between Model & View •Updates the view when the model changes •Updates the model when the user manipulates the view •Typically where the app logic lives. www.MitAPP.com http://twitter.com/MitAPP
  • 20. Model,View, Controller Controller outlets actions Model Object www.MitAPP.com http://twitter.com/MitAPP
  • 21. Nib Files - Design Time • Helps you design the ʻVʼ in MVC: ■ Layout user interface elements ■ Add controller objects ■ Connect the controller and UI www.MitAPP.com http://twitter.com/MitAPP
  • 22. Nib Loading • At runtime, objects are unarchived ■ Values/settings in Interface Builder are restored ■ Ensures all outlets and actions are connected ■ Order of unarchiving is not defined • If loading the nib (.xib file) automatically creates objects and order is undefined, how do I customize? ■ For example, to displaying initial state www.MitAPP.com http://twitter.com/MitAPP
  • 23. Nib Loading - awakeFromNib • Control point to implement any additional logic after nib loading • Default empty implementation on NSObject • You often implement it in your controller class ■ e.g. to restore previously saved application state • Guaranteed everything has been unarchived from nib, and all connections are made before -awakeFromNib is called - (void)awakeFromNib { // do customization here } www.MitAPP.com http://twitter.com/MitAPP
  • 24. Controls - Events • View objects that allows users to initiate some type of action • Respond to variety of events ■ Touch events ■ touchDown ■ touchDragged (entered, exited, drag inside, drag outside) ■ touchUp (inside, outside) ■ Value changed ■ Editing events ■ editing began ■ editing changed ■ editing ended www.MitAPP.com http://twitter.com/MitAPP
  • 25. How to Build an iPhone App that Doesn't Suck! • Step 1: Decide what to build Principle 1: Know your users. • Step 2: Visit the app store Principle 2: Don't build your app in a bubble • Step 3: Explore Possible solutions Principle 3: Be minimal • Step 4: Sketch Principle 4: Quality through quantity • Step 5: Build a paper prototype Principle 5: Fail early to succeed sooner. [Source] Stanford CS193P www.MitAPP.com http://twitter.com/MitAPP
  • 26. How to Build an iPhone App that Doesn't Suck! • Step 6: Fire up omnigraffle (or Photoshop) Principle 6: Be pixel-perfect • Step 7: Do It All Again Principle 7: Remember that nothing is precious • Step 8: Okay, You can code finally • Step 9: Beta Test Your App Principle 9: Test Before you submit • Step 10: Release [Source] Stanford CS193P www.MitAPP.com http://twitter.com/MitAPP
  • 27. Key Points • Talk to users • Explore many designs • Iterate based on user feedback [Source] Stanford CS193P www.MitAPP.com http://twitter.com/MitAPP
  • 28. www.MitAPP.com http://twitter.com/MitAPP
  • 29. Resources • Main Apple Dev Site: http://developer.apple.com/iphone/ • Community Forum: http://www.iphonedevsdk.com/ • Tips: http://iphonedevelopertips.com/ • Blog: http://iphoneincubator.com/blog/ • StackOverflow: http://stackoverflow.com/ • Italian Sites: iSpazio, iPhoneItalia, MelaMorsicata, MacLounge, etc... • ... search “iphone dev” on Google... • To create video trailers for your app: http://www.vimov.com/isimulate/ www.MitAPP.com http://twitter.com/MitAPP
  • 30. DEMO • DEMO (30’): Create an application www.MitAPP.com http://twitter.com/MitAPP
  • 31. From Upstart to Startup to Grownup (Jessica Kahn - Tapoulus) With more than 15 million downloads, “Tap Tap Revenge” is by far the most popular game on the iPhone and iPod touch. • Some core principles behind running a succesful software startup don't change: - Build a great team - Strengthen you brand - Work to become more predictable... - ...Without killing creativity and energy - Seek out and listen to advice [Source] Stanford CS193P www.MitAPP.com http://twitter.com/MitAPP
  • 32. From Upstart to Startup to Grownup (Jessica Kahn - Tapoulus) • Build a Great Team - Don't be afraid to be very selective - Passion and integrity are paramount - Be flexible about job descriptions when you're small - As you grow, make sure to diversify [Source] Stanford CS193P www.MitAPP.com http://twitter.com/MitAPP
  • 33. From Upstart to Startup to Grownup (Jessica Kahn - Tapoulus) • Strengthen Your Brand - Invest in the aestetics - Don't compromise "too much" on quality - Use Twitter,YouTube, and other community-driven sites - Piggy-back on Apple's marketing prowess - Store rankings and ratings matter [Source] Stanford CS193P www.MitAPP.com http://twitter.com/MitAPP
  • 34. From Upstart to Startup to Grownup (Jessica Kahn - Tapoulus) • Become More Predictable - Know exactly what needs to go into any given release - Track how long it takes you to get that work done - Get status from your team regularly - Become a conservative when you're getting ready to ship - Code reviews, even if informal - "Blockers" only - Ad hoc Distribution for Betas [Source] Stanford CS193P www.MitAPP.com http://twitter.com/MitAPP
  • 35. From Upstart to Startup to Grownup (Jessica Kahn - Tapoulus) • Encourage Creativity - 20% time - "Skunkworks" (from Wikipedia: “widely used in business, engineering, and technical fields to describe a group within an organization given a high degree of autonomy andunhampered by bureaucracy, tasked with working on advanced or secret projects.”) - Facilitate healty brainstorming - Stay flexible [Source] Stanford CS193P www.MitAPP.com http://twitter.com/MitAPP
  • 36. From Upstart to Startup to Grownup (Jessica Kahn - Tapoulus) • Seek Advice - Listen to your customers (GetSatisfaction, Twitter) - Have coffee with your peers - Pay attention to your current & potential investor [Source] Stanford CS193P www.MitAPP.com http://twitter.com/MitAPP
  • 37. From Upstart to Startup to Grownup (Jessica Kahn - Tapoulus) • Successful iPhone Software Development Practices: What I Learned in School: - If you struggle with a crazy bug, and you start to suspect the compiler, you're wrong, it's not the comiler, it's you What I Learned at Apple: - Actually, it could well be the compiler. What I Learned at Tapolous: - Ok, it's probably not the compiler. - ...but it sure as heck might be some crazy edge case in what is a fantastically rich, but extremely fast-moving, and very new, platform. [Source] Stanford CS193P www.MitAPP.com http://twitter.com/MitAPP
  • 38. From Upstart to Startup to Grownup (Jessica Kahn - Tapoulus) • Blame is Unimportant - Hone you problem-solving skills - You can never be too good at gdb - You can never be too foog at Googling - You can never know too many people - Code defensively - Establish some "best practices" [Source] Stanford CS193P www.MitAPP.com http://twitter.com/MitAPP
  • 39. From Upstart to Startup to Grownup (Jessica Kahn - Tapoulus) • Best Practices - Don't be cute; your new teammate will not appreciate how smart you are nearly as much as you do - Werror was implemented for a reason - Step throug new code, and/or write unit tests - Periodically chech for leaks, smashers, and other misbehavior - For Internet-savvy applications, use a sniffer to verify traffic patterns [Source] Stanford CS193P www.MitAPP.com http://twitter.com/MitAPP
  • 40. From Upstart to Startup to Grownup (Jessica Kahn - Tapoulus) • Best Practices , iPhone-Specific - It's just like Mac OS X, right? Wrong. - Use real devices for testing, regurarly - Offline and bad Edge connections are common use cases [Source] Stanford CS193P www.MitAPP.com http://twitter.com/MitAPP
  • 41. From Upstart to Startup to Grownup (Jessica Kahn - Tapoulus) • Wrapping UP - The iTunes App Store is a crazy and fun marketplace - The iPhone OS is a craty and fun platform - You can be indie and be a success - You can build a company and be a succes [Source] Stanford CS193P www.MitAPP.com http://twitter.com/MitAPP