Upgrade to Pro — share decks privately, control downloads, hide ads and more …

Introduction to iPhone Development

Introduction to iPhone Development

A little about Apple Inc. Mac OS X and iOS and mobile development in general

Ahmed Magdy

June 01, 2012
Tweet

More Decks by Ahmed Magdy

Other Decks in Programming

Transcript

  1. 1 iPhone Development iPhone Development Ahmed Magdy Ezzeldin [email protected] Mobile:

    0100 1664281 Blog: http://ahmed.a1cv.com Twitter: @a1works_com
  2. iPhone Development 4 Mobile is not like Web or Desktop

    • Touch • Camera • Location (GPS + Compass) • Accelerometer • Internet, SMS, Email, and Phone Calls • Calendar, and Notifications • QR Code / Bar Code Scanners • Augmented Reality • Always On • Always with You • Video/Sound Recording • User Identity (Bluetooth ID, RFID) • Social Networks (Facebook & Twitter)
  3. iPhone Development 5 Mobile Developers think Mobile • Masters your

    Tools • Take care of your constraints: • Battery • Memory • Intermittent Connections • Bandwidth • Care about Usability and Design • Right and Left handed users • Use one hand not both • Easy to see, Touch-Friendly Buttons • Easy to understand application navigation and process. • Be patient :)
  4. iPhone Development 6 Mobiles Platforms Fragmentation • Lots of Corporations

    with lots of platforms each. • Resolution, Features supported, Constraints • Frameworks like PhoneGap, Titanium and Appcelerator try to solve this problem but still native development is needed.
  5. iPhone Development 7 What is Out There? • Nokia •

    Windows Mobile • Symbian • J2ME • QT • BlackBerry • Android • iOS (iPod, iPhone, iPad) by Apple Inc.
  6. iPhone Development 8 Apple Inc. • Started 1976 • Largest

    publicly traded company in the world • Largest technology company in the world by revenue and profit, more than Google and Microsoft combined. • Worldwide annual revenue $108 billion in 2011. • WWDC since 1995
  7. iPhone Development 9 iPhone "An iPod, a phone, an internet

    mobile communicator... these are NOT three separate devices! And we are calling it iPhone! Today Apple is going to reinvent the phone. And here it is." Steve Jobs The first iPhone was released on June 29, 2007
  8. iPhone Development 10 iOS • Multi-Tasking • Switching Applications •

    Game Center • Phone, Mail, Safari, Music/Videos, Messages, Calendar, Youtube, photos, Camera, Video Calling, Stocks, Weather, Notes, Maps, Voice Memos, News Stand, Reminders, Calculator, Clock, Settings, Contacts, iTunes, AppStore, Compass, Nike + iPod, Photo Booth, Voice Control & Siri
  9. iPhone Development 11 iOS Devices • iPhone (First Released June

    29, 2007) • Original, 3G, 3GS, 4, 4S • Storage 8, 16, 32, 64 GB • iPod Touch (First Released September 5, 2007) • Generations 1, 2, 3, 4 • Storage: 8, 32 or 64 GB • iPad (First Released April 3, 2010) • Generations 1, 2, 3 • Storage 16, 32, 64 GB
  10. iPhone Development 12 To Develop for iOS you need: •

    Mac OS X 10.7 (Lion) or Higher • XCode 4.3 or Higher with iOS SDK and iPhone Simulator • To distribute your application you need: • iPhone or iPod Touch or iPad • Developer or Corporate account with Apple Developer Center (99$ to 299$ yearly) • If your application is paid Apple takes 30% of your revenue • You cannot distribute your applications outside Apple AppStore
  11. iPhone Development 13 Mac OS X • Unix-Like OS •

    Used to run on PowerPC until 2006 • Switched to Intel x86 processors starting from 2006 • Runs on Mac Hardware • Uses Apple Script and Bash Script • We are using 10.7 Lion • 10.8 Mountain Lion is the latest
  12. iPhone Development 14 Mac OS X vs PC • Software

    Installations (Brew, iTunes AppStore, Online downloadable Apps) • Keyboard (cmd vs ctrl) • cmd+w and cmd+q to close a window and close an application • Enter for Rename and cmd+down for open • cmd+backspace to delete a file • Shared Menu • MDI & Task Bar • Hot Corners • You Cannot Cut and Paste a file • MultiTouch & Complicated Shortcuts • Command-Shift-3: Take a screenshot of the screen, and save it as a file on the desktop • Command-Shift-4, then select an area: Take a screenshot of an area and save it as a file on the desktop • Command-Shift-4, then space, then click a window: Take a screenshot of a window and save it as a file on the desktop • Command-Control-Shift-3: Take a screenshot of the screen, and save it to the clipboard • Command-Control-Shift-4, then select an area: Take a screenshot of an area and save it to the clipboard • Command-Control-Shift-4, then space, then click a window: Take a screenshot of a window and save it to the clipboard