• Like
  • Save
Developer's got talent iPhone
Upcoming SlideShare
Loading in...5
×

Thanks for flagging this SlideShare!

Oops! An error has occurred.

Developer's got talent iPhone

  • 609 views
Published

 

  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Be the first to comment
    Be the first to like this
No Downloads

Views

Total Views
609
On SlideShare
0
From Embeds
0
Number of Embeds
0

Actions

Shares
Downloads
0
Comments
0
Likes
0

Embeds 0

No embeds

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
    No notes for slide

Transcript

  • 1. iPhone Development PiTechnologies Ahmed Yossef 16th July, 2011
  • 2. About Me Ahmed Yossef
  • 3. AgendaThe Amazing AppleiPhone Market - The App StoreYour OpportunityYou CareerKick Off iPhone Development
  • 4. Apple Story
  • 5. Start1976Steve JobsSame like Google and HPGarage ... again
  • 6. How ? fund/ idea Prototype Company marketing 1,000 1 What about Us ? 0 01,000,000 100
  • 7. Stack Completed Devices SoftwareComputers iDev Mac OS iOS MacPRO iPhone MAC iOS MacMini iPad Apps AppsMacBook iPodMacServer
  • 8. Product LineApple IApple II and Apple IIIMACSo on ...
  • 9. The Secrets
  • 10. Rules of SuccessRule #1 : Never lose a customer all . .. atRule #2 : Never forget rule #1 easy not It is
  • 11. Customer SatisfactionPerformanceStabilityReliabilityParallel Innovation - like nothing else
  • 12. Customer SatisfactionRevolutionsiPodiPhoneiPad
  • 13. iPhone Market
  • 14. Apple Amazing IdeaApp StoreGather every parties in one marketExclusive marketExclusive but good - remember it !
  • 15. The Amazing StoreHow store work Shares per download Ratings and reviewsVolume of work Disappointed? Never 15,000 app submissions a week 100,000,000,000 downloads in first 90 days
  • 16. Your Opportunity
  • 17. Opportunity Job Opportunity Do you know C++ ? 80 A Job Opportunity is here 19 : te/ month Da 5,000$ Please Apply :( Location: Newyork
  • 18. Opportunities are based on AND
  • 19. Interested ... Go on !Opportunities in general are based on: time and placeYour opportunity is: NOW and in Egypt Growing market Rare developers
  • 20. Real OpportunityWhy Egypt ?Real opportunity after all this number of appsArabic contentArabic category
  • 21. Career Types
  • 22. Career Categories Employed Own business Self-employed Wrong Question Which is better ? It is about properties ... nothing fits all
  • 23. Being an EmployeePart of the processGuidedFixed salaryStable life
  • 24. Running Your Own BusinessCreating the processGuiding and managingNo fixed income Poor like MARK - Facebook :(Exciting life.
  • 25. Starting Your Own Business HOW? A lot of money OR Be a self employed
  • 26. Being Self-Employed ITO ProfessionalLearn what you wantWork what you wantWork when you wantThen get paid, it is simple ...
  • 27. It is not for AllSelf motivation: You cant wait for an offer to be a freelancer.Knowledge: It is hard to be a freelancer nuclear engineer.
  • 28. Kick Off
  • 29. Do you like Apple ? Yes Does not matter !No If you like Apple .... develop for iPhone If you do NOT like Apple ... develop for iPhoneIf you want to be a mobile applications developer develop for all working mobile phones
  • 30. Mobile Development .. why
  • 31. Mobile, web and desktop developmentTime of development: varies according the application itself, but ingeneral, mobile applications development is the fastest.Customers: mobile users are more than web and desktop applicationsusers.Job availability: it is more likely to develop mobile applications asfreelancer than web and desktop development.Mobility is a feature.
  • 32. iPhone Development .. why
  • 33. iPhone development benefits Customers Every iPhone holder is a customer Ease of marketing Just upload to the store Customers are ready to try, you don’t have to convince them.
  • 34. iPhone Development .. how
  • 35. Development Environment iPhone, iPad and Mac applications development is restricted, only certain IDE on a certain OS works. In order to develop for iPhone you have to get Mac machine Developer license iOS SDK XCode
  • 36. How to get a MACYou have two options Buy a Mac Try Hackintosh for Intel Install native Use a virtual machine
  • 37. Native VS VirtualNative is faster than virtual installation in general, becauseall machine resources are fully dedicated.Virtual is more mobile and easier to distribute just exportand import
  • 38. VM OverviewVirtual Machine: is a software simulated machine on yourhost PCBasic Operations: Create a machine Import a machine Export an existing machine Run a machine
  • 39. VM ... How?There are two main applications for VMVMWare To create use: the “work station”, it is not free To run use: the “player”, it is freeVirtualBox By Sun, you can do it all with a free single application
  • 40. Developer licenseRegistration is optional when you develop, but it is a must ifyou want to put your apps on the store.When you are registered you can download your developmenttools for freeYou register for an iPhone developer license for 99$ per year.You are in Egypt, so you have to send a fax, you can’t registeronline... even after 25Jan
  • 41. iOS SDKiOS SDK: enables you to develop iPhone applications onXCode, as XCode is used to develop by default applicationsfor Mac OSiOS SDK Contains: XCode iOS Simulator iOS developer documentation
  • 42. XCodeXCode: is your soulmate IDE XCode 3 is free, XCode 4 is not To download or buy, you must have an iTunes accountIt contains: iPhone simulator, for simulating your applications Instruments, for testing the performance of your application running on a physical device
  • 43. Development Skills
  • 44. Mobile App Dev ConceptsTo develop for mobile devices you have to consider: Memory limitation Power limitation Processing limitation
  • 45. Programming LanguagesWe can develop for iPhone in: Objective-c C# JavaScript and CSS .....
  • 46. What is difference ?Objective - C enables you to create native applicationsNative: Faster EfficientMakes you able to use Apple APIs
  • 47. iOS Development
  • 48. iOS developmentIt is iOS development not iPhone developmentYou develop and application for the iOS so every devicesruns iOS can run your applicationThis is called portability
  • 49. What is “independent”? Independent App Platform 2 Platform 1
  • 50. Independent ... How? App Platform 2 Platform 1
  • 51. iOS for all iDevicesThe duel interface layer that makes our apps runnableamong different HW architecture, is useless when HW doesnot support certain featureEx: Your image capture program should work on differentdevices, BUT they must have a camera
  • 52. Identifying your HWIf you want to make a real full portable application for iOSyou have to check HW features first.You can run the same app on iPhone and iPod, but don’texpect the same result if you use iPhone’s camera while iPoddoesn’t has camera
  • 53. iOS Architecture
  • 54. iOS Layers Cocoa Touch Layer Media Layer Core Service Layer Core OS Layer
  • 55. iOS Layers Cocoa Touch Layer It is Objective-C layer Media Layer Most used by developers Core Service Layer Core OS Layer
  • 56. iOS Layers Cocoa Touch Layer Media Layer It is Objective-C layer Contains Audio and Core Service Layer Video libraries Core OS Layer
  • 57. iOS Layers Cocoa Touch Layer Media Layer Core Service Layer It is C layer Contains low level Core OS Layer operations
  • 58. iOS Layers Cocoa Touch Layer Media Layer Core Service Layer It is C layer Core OS Layer Contains the C libs for the OS kernel
  • 59. LayerIn general you don’t use all layers, you also don’t use allframeworks in certain used layer.Layer is a group of frameworks, has common purpose.
  • 60. What is Framework ?Framework: is a directory that contains a dynamic sharedlibrary and the resources (such as header files, images,helper applications, and so on) needed to support thatlibrary.Framework: helps you to write applications independent ofthe hardware.
  • 61. Finally, if you want to do something start it today tomorrow never comes
  • 62. Thank You :)