SlideShare a Scribd company logo
Introduction to
iOS Development
Resources
•   http://developer.apple.com/iOS
•   iPhone Programming, The Big Nerd Ranch Guide
•   Joe Conway & Aaron Hillegass
•   Programming in Objective-C
•   Kochan
•   http://www.raywenderlich.com Excellent iOS5 tutorials!
•   Stanford - free iOS lectures. Worth the time to watch!
Prerequisites for iOS
Development
• Previous experience in another Object Oriented
  Programming(OOP) language will be helpful
• Understanding of OOP concepts.
• Some understanding of C can be helpful, but is not required.
  Objective-C builds on top of C. You will eventually run into
  pointers and other fundamental “C” features
• Previous experience with an Integrated Development
  Environment (IDE) is helpful, but not required
• Mac computer running OS X Lion
• If you plan to submit to the App Store, you will need Apple
  devices to do real testing on. The simulator is not good
  enough.
Introduction
• iOS is the operating system that runs iPhones, iPod
  Touches,iPads, and Apple TVs.
• The language used to develop software for iOS is
  Objective-C.
• This class will teach you how to get started but will not
  havetime to teach you everything.
What is iOS?
• iOS is an operating system – it’s a subset of Mac OS X.
• The iOS SDK is the software development kit that allows
  application programs to utilize classes and frameworks
  provided by the SDK. This class will focus on iOS
  SDK6.
• iOS is multitasking and runs on several different
  devices(iPhones, iPod Touches, iPads, and Apple TVs).
• Apple provides an IDE called Xcode.
• Xcode is the IDE used by iOS (and OS X) developers.
• Xcode provides an interface to the compiler, editor,
  debugger, and code profiling tools.
Device Features
• For the rest of the presentation, assume we are discussing
  iPhones, iPads, and iPod Touches. Although Apple TV runs
  iOS, Apple currently does not allow developers to create
  custom code for this device (yet).
• SQLite for structured data storage
• Media support for common audio, video, and still image
  formats (MPEG4, H.264, MP3, AAC, AMR, JPG, PNG, GIF)
• GSM Telephony (hardware dependent)
• Bluetooth, EDGE, 3G, and WiFi (hardware dependent)
• Camera, GPS, compass, and accelerometer (hardware
  dependent)
• Rich development environment, including a device simulator,
  tools for debugging, memory and performance profiling
Capabilities of Mobile
Devices
Internet access
• Touch screen
• GPS (global positioning system – satellite-based system
  todetermine a location)
• Local storage
• Camera
• Media playback
• Phone
• Bluetooth for device communication
Limitation of Mobile Devices
• Screen size
• Touch screen
• No physical keyboard or trackball – a finger or stylus is
  the primary interface to the device
• Memory
• Storage
• Battery Life
• Cell network
• Sometimes flaky networks
• Ergonomics
Download the iOS SDK
• Download the latest from the Apple App store
• This is only available for Apple Macintosh computers
• It’s free
• To build to device and submit to the app store, you will
  berequired to becomes a register Apple iOS developer
• It is $99 year for the basic account
The Xcode – Integrated
Development Environment

• This consists of a single-window user interface,
  consisting of the Project Window, Jump and Navigation
  Bars, and the newly integrated Interface Builder designer.
Features of the iPhone
  Simulator
• The"iPhone Simulator",
  simulates various features of a
  real iOS device. Although the
  iPhone simulator is just a
  simulator to simulate certain
  tasks, it does come with some
  limitations.
Simulator Limitations
•   Making Phone calls
•   Accessing the Accelerometer/Gyroscope
•   Sending and Receiving SMS messages
•   Installing applications from the App Store
•   Accessibility to the Camera
•   Use of the Microphone
•   Several Core OpenGL ES Features
Instruments
• The Xcode instruments allow you to dynamically trace
  and profile the performance of your Mac OSX, iPhone,
  and iPad applications. You can also create your own
  Instruments using DTrace and the Instruments custom
  builder.
• Monitor your applications for memory leaks, which can
  cause unexpected results.
• Gain a deeper understanding of the execution behavior of
  your applications.
Quick Terminology: MVC
• Model-View-Controller (MVC)
• MVC is the paradigm of iOS programming
• Model: Hold data, should know nothing of the interface
• View: code for getting data in/out of a view. Deals with
  items like buttons, lists, tables, etc
• Controller: keeps the Model objects and View objects in
  sync

More Related Content

What's hot

Comparative Study On Mobile Operating Systems
  Comparative Study On Mobile Operating Systems   Comparative Study On Mobile Operating Systems
Comparative Study On Mobile Operating Systems
Hardik Jain
 

What's hot (20)

iOS Application Security
iOS Application SecurityiOS Application Security
iOS Application Security
 
Apple iOS
Apple iOSApple iOS
Apple iOS
 
Android - A brief introduction
Android - A brief introductionAndroid - A brief introduction
Android - A brief introduction
 
Presentation on iOS
Presentation on iOSPresentation on iOS
Presentation on iOS
 
Native, Web or Hybrid Mobile App Development?
Native, Web or Hybrid Mobile App Development?Native, Web or Hybrid Mobile App Development?
Native, Web or Hybrid Mobile App Development?
 
Ios operating system
Ios operating systemIos operating system
Ios operating system
 
Comparative Study On Mobile Operating Systems
  Comparative Study On Mobile Operating Systems   Comparative Study On Mobile Operating Systems
Comparative Study On Mobile Operating Systems
 
Apple's ios
Apple's iosApple's ios
Apple's ios
 
iOS PPT
iOS PPTiOS PPT
iOS PPT
 
Android ppt
Android pptAndroid ppt
Android ppt
 
Ios seminar
Ios seminarIos seminar
Ios seminar
 
Firebase - Dynamic Links
Firebase - Dynamic LinksFirebase - Dynamic Links
Firebase - Dynamic Links
 
Layer architecture of ios (1)
Layer architecture of ios (1)Layer architecture of ios (1)
Layer architecture of ios (1)
 
Android & IOS
Android & IOSAndroid & IOS
Android & IOS
 
iOS Operating System
iOS Operating SystemiOS Operating System
iOS Operating System
 
Flutter
FlutterFlutter
Flutter
 
Basic iOS Training with SWIFT - Part 1
Basic iOS Training with SWIFT - Part 1Basic iOS Training with SWIFT - Part 1
Basic iOS Training with SWIFT - Part 1
 
An introduction to Xamarin
An introduction to XamarinAn introduction to Xamarin
An introduction to Xamarin
 
Android vs iOS
Android vs iOSAndroid vs iOS
Android vs iOS
 
Flutter A year of creativity!
Flutter A year of creativity!Flutter A year of creativity!
Flutter A year of creativity!
 

Viewers also liked

iOS Core location
iOS Core locationiOS Core location
iOS Core location
Richa Jain
 
iOS Application Lifecycle
iOS Application LifecycleiOS Application Lifecycle
iOS Application Lifecycle
Siva Prasad K V
 
Extenal aids to construction of Law
Extenal aids to construction of LawExtenal aids to construction of Law
Extenal aids to construction of Law
Tejas Shah
 

Viewers also liked (20)

Beginning Real World iOS App Development
Beginning Real World iOS App DevelopmentBeginning Real World iOS App Development
Beginning Real World iOS App Development
 
ios-mobile-app-development-intro
ios-mobile-app-development-introios-mobile-app-development-intro
ios-mobile-app-development-intro
 
History of iOS
History of iOSHistory of iOS
History of iOS
 
Apple iOS Report
Apple iOS ReportApple iOS Report
Apple iOS Report
 
Introduction to MapKit
Introduction to MapKitIntroduction to MapKit
Introduction to MapKit
 
Ios - Introduction to platform & SDK
Ios - Introduction to platform & SDKIos - Introduction to platform & SDK
Ios - Introduction to platform & SDK
 
Corso Iphone in 48h (parte 2)
Corso Iphone in 48h (parte 2)Corso Iphone in 48h (parte 2)
Corso Iphone in 48h (parte 2)
 
Corso Iphone in 48h
Corso Iphone in 48hCorso Iphone in 48h
Corso Iphone in 48h
 
iOS Core location
iOS Core locationiOS Core location
iOS Core location
 
CONTEMPORNEA EXPOSITIO EXTERNAL AID TO INTERPRETATION
CONTEMPORNEA EXPOSITIO EXTERNAL AID TO INTERPRETATIONCONTEMPORNEA EXPOSITIO EXTERNAL AID TO INTERPRETATION
CONTEMPORNEA EXPOSITIO EXTERNAL AID TO INTERPRETATION
 
360 Degree Quality Assurance Solution
360 Degree Quality Assurance Solution360 Degree Quality Assurance Solution
360 Degree Quality Assurance Solution
 
Ios fundamentals with ObjectiveC
Ios fundamentals with ObjectiveCIos fundamentals with ObjectiveC
Ios fundamentals with ObjectiveC
 
IOS Swift language 2nd tutorial
IOS Swift language 2nd tutorialIOS Swift language 2nd tutorial
IOS Swift language 2nd tutorial
 
iOS Application Lifecycle
iOS Application LifecycleiOS Application Lifecycle
iOS Application Lifecycle
 
COGITO POP Tutorial (iOS)
COGITO POP Tutorial (iOS)COGITO POP Tutorial (iOS)
COGITO POP Tutorial (iOS)
 
Extenal aids to construction of Law
Extenal aids to construction of LawExtenal aids to construction of Law
Extenal aids to construction of Law
 
Hello android world
Hello android worldHello android world
Hello android world
 
Developing iOS apps with Swift
Developing iOS apps with SwiftDeveloping iOS apps with Swift
Developing iOS apps with Swift
 
COGITO Pop Tutorial (Android)
COGITO Pop Tutorial (Android)COGITO Pop Tutorial (Android)
COGITO Pop Tutorial (Android)
 
COGITO Classic Tutorial (Android)
COGITO Classic Tutorial (Android)COGITO Classic Tutorial (Android)
COGITO Classic Tutorial (Android)
 

Similar to Introduction to iOS Development

Никита Корчагин - Introduction to iOS development
Никита Корчагин - Introduction to iOS developmentНикита Корчагин - Introduction to iOS development
Никита Корчагин - Introduction to iOS development
DataArt
 
Developing Applications on iOS
Developing Applications on iOSDeveloping Applications on iOS
Developing Applications on iOS
Francisco Ramos
 
Apple iOS Technology Market
Apple iOS Technology MarketApple iOS Technology Market
Apple iOS Technology Market
Bharat Gera
 
Ruxmon April 2014 - Introduction to iOS Penetration Testing
Ruxmon April 2014 - Introduction to iOS Penetration TestingRuxmon April 2014 - Introduction to iOS Penetration Testing
Ruxmon April 2014 - Introduction to iOS Penetration Testing
eightbit
 
OWASP Melbourne - Introduction to iOS Application Penetration Testing
OWASP Melbourne - Introduction to iOS Application Penetration TestingOWASP Melbourne - Introduction to iOS Application Penetration Testing
OWASP Melbourne - Introduction to iOS Application Penetration Testing
eightbit
 
Hybrid mobile application with Ionic
Hybrid mobile application with IonicHybrid mobile application with Ionic
Hybrid mobile application with Ionic
Maulik Bamania
 

Similar to Introduction to iOS Development (20)

Никита Корчагин - Introduction to iOS development
Никита Корчагин - Introduction to iOS developmentНикита Корчагин - Introduction to iOS development
Никита Корчагин - Introduction to iOS development
 
iOS Development Survival Guide for the .NET Guy
iOS Development Survival Guide for the .NET GuyiOS Development Survival Guide for the .NET Guy
iOS Development Survival Guide for the .NET Guy
 
Никита Корчагин - Introduction to Apple iOS Development.
Никита Корчагин - Introduction to Apple iOS Development.Никита Корчагин - Introduction to Apple iOS Development.
Никита Корчагин - Introduction to Apple iOS Development.
 
iPhone OS: The Next Killer Platform
iPhone OS: The Next Killer PlatformiPhone OS: The Next Killer Platform
iPhone OS: The Next Killer Platform
 
Intro to iOS Development
Intro to iOS DevelopmentIntro to iOS Development
Intro to iOS Development
 
Xamarin v.Now
Xamarin v.NowXamarin v.Now
Xamarin v.Now
 
Developing Applications on iOS
Developing Applications on iOSDeveloping Applications on iOS
Developing Applications on iOS
 
iOS App Development and Marketing
iOS App Development and MarketingiOS App Development and Marketing
iOS App Development and Marketing
 
20220728-iOSAppDev-MobileAppDev.pptx
20220728-iOSAppDev-MobileAppDev.pptx20220728-iOSAppDev-MobileAppDev.pptx
20220728-iOSAppDev-MobileAppDev.pptx
 
Apple iOS Technology Market
Apple iOS Technology MarketApple iOS Technology Market
Apple iOS Technology Market
 
Qa extreme 2011 eran kinsbruner
Qa extreme 2011 eran kinsbrunerQa extreme 2011 eran kinsbruner
Qa extreme 2011 eran kinsbruner
 
Ruxmon April 2014 - Introduction to iOS Penetration Testing
Ruxmon April 2014 - Introduction to iOS Penetration TestingRuxmon April 2014 - Introduction to iOS Penetration Testing
Ruxmon April 2014 - Introduction to iOS Penetration Testing
 
OWASP Melbourne - Introduction to iOS Application Penetration Testing
OWASP Melbourne - Introduction to iOS Application Penetration TestingOWASP Melbourne - Introduction to iOS Application Penetration Testing
OWASP Melbourne - Introduction to iOS Application Penetration Testing
 
Development of a mobile app for Android
Development of a mobile app for AndroidDevelopment of a mobile app for Android
Development of a mobile app for Android
 
Hybrid mobile application with Ionic
Hybrid mobile application with IonicHybrid mobile application with Ionic
Hybrid mobile application with Ionic
 
Enterprise iPad Development Without Notes
Enterprise iPad Development Without NotesEnterprise iPad Development Without Notes
Enterprise iPad Development Without Notes
 
Hybrid app development with ionic
Hybrid app development with ionicHybrid app development with ionic
Hybrid app development with ionic
 
MobApp development 01 application platform.pptx
MobApp development 01 application platform.pptxMobApp development 01 application platform.pptx
MobApp development 01 application platform.pptx
 
Ios
IosIos
Ios
 
developementofmobileapplication-160412025313 (1).pptx
developementofmobileapplication-160412025313 (1).pptxdevelopementofmobileapplication-160412025313 (1).pptx
developementofmobileapplication-160412025313 (1).pptx
 

More from Asim Rais Siddiqui

Coding Standards & Best Practices for iOS/C#
Coding Standards & Best Practices for iOS/C#Coding Standards & Best Practices for iOS/C#
Coding Standards & Best Practices for iOS/C#
Asim Rais Siddiqui
 

More from Asim Rais Siddiqui (8)

Understanding Blockchain Technology
Understanding Blockchain TechnologyUnderstanding Blockchain Technology
Understanding Blockchain Technology
 
IoT Development - Opportunities and Challenges
IoT Development - Opportunities and ChallengesIoT Development - Opportunities and Challenges
IoT Development - Opportunities and Challenges
 
iOS Memory Management
iOS Memory ManagementiOS Memory Management
iOS Memory Management
 
iOS Development (Part 3) - Additional GUI Components
iOS Development (Part 3) - Additional GUI ComponentsiOS Development (Part 3) - Additional GUI Components
iOS Development (Part 3) - Additional GUI Components
 
iOS Development (Part 2)
iOS Development (Part 2)iOS Development (Part 2)
iOS Development (Part 2)
 
iOS Development (Part 1)
iOS Development (Part 1)iOS Development (Part 1)
iOS Development (Part 1)
 
Introduction to Objective - C
Introduction to Objective - CIntroduction to Objective - C
Introduction to Objective - C
 
Coding Standards & Best Practices for iOS/C#
Coding Standards & Best Practices for iOS/C#Coding Standards & Best Practices for iOS/C#
Coding Standards & Best Practices for iOS/C#
 

Recently uploaded

Search and Society: Reimagining Information Access for Radical Futures
Search and Society: Reimagining Information Access for Radical FuturesSearch and Society: Reimagining Information Access for Radical Futures
Search and Society: Reimagining Information Access for Radical Futures
Bhaskar Mitra
 

Recently uploaded (20)

Software Delivery At the Speed of AI: Inflectra Invests In AI-Powered Quality
Software Delivery At the Speed of AI: Inflectra Invests In AI-Powered QualitySoftware Delivery At the Speed of AI: Inflectra Invests In AI-Powered Quality
Software Delivery At the Speed of AI: Inflectra Invests In AI-Powered Quality
 
Empowering NextGen Mobility via Large Action Model Infrastructure (LAMI): pav...
Empowering NextGen Mobility via Large Action Model Infrastructure (LAMI): pav...Empowering NextGen Mobility via Large Action Model Infrastructure (LAMI): pav...
Empowering NextGen Mobility via Large Action Model Infrastructure (LAMI): pav...
 
ODC, Data Fabric and Architecture User Group
ODC, Data Fabric and Architecture User GroupODC, Data Fabric and Architecture User Group
ODC, Data Fabric and Architecture User Group
 
IOS-PENTESTING-BEGINNERS-PRACTICAL-GUIDE-.pptx
IOS-PENTESTING-BEGINNERS-PRACTICAL-GUIDE-.pptxIOS-PENTESTING-BEGINNERS-PRACTICAL-GUIDE-.pptx
IOS-PENTESTING-BEGINNERS-PRACTICAL-GUIDE-.pptx
 
Dev Dives: Train smarter, not harder – active learning and UiPath LLMs for do...
Dev Dives: Train smarter, not harder – active learning and UiPath LLMs for do...Dev Dives: Train smarter, not harder – active learning and UiPath LLMs for do...
Dev Dives: Train smarter, not harder – active learning and UiPath LLMs for do...
 
Search and Society: Reimagining Information Access for Radical Futures
Search and Society: Reimagining Information Access for Radical FuturesSearch and Society: Reimagining Information Access for Radical Futures
Search and Society: Reimagining Information Access for Radical Futures
 
PHP Frameworks: I want to break free (IPC Berlin 2024)
PHP Frameworks: I want to break free (IPC Berlin 2024)PHP Frameworks: I want to break free (IPC Berlin 2024)
PHP Frameworks: I want to break free (IPC Berlin 2024)
 
"Impact of front-end architecture on development cost", Viktor Turskyi
"Impact of front-end architecture on development cost", Viktor Turskyi"Impact of front-end architecture on development cost", Viktor Turskyi
"Impact of front-end architecture on development cost", Viktor Turskyi
 
Accelerate your Kubernetes clusters with Varnish Caching
Accelerate your Kubernetes clusters with Varnish CachingAccelerate your Kubernetes clusters with Varnish Caching
Accelerate your Kubernetes clusters with Varnish Caching
 
How world-class product teams are winning in the AI era by CEO and Founder, P...
How world-class product teams are winning in the AI era by CEO and Founder, P...How world-class product teams are winning in the AI era by CEO and Founder, P...
How world-class product teams are winning in the AI era by CEO and Founder, P...
 
De-mystifying Zero to One: Design Informed Techniques for Greenfield Innovati...
De-mystifying Zero to One: Design Informed Techniques for Greenfield Innovati...De-mystifying Zero to One: Design Informed Techniques for Greenfield Innovati...
De-mystifying Zero to One: Design Informed Techniques for Greenfield Innovati...
 
Slack (or Teams) Automation for Bonterra Impact Management (fka Social Soluti...
Slack (or Teams) Automation for Bonterra Impact Management (fka Social Soluti...Slack (or Teams) Automation for Bonterra Impact Management (fka Social Soluti...
Slack (or Teams) Automation for Bonterra Impact Management (fka Social Soluti...
 
Demystifying gRPC in .Net by John Staveley
Demystifying gRPC in .Net by John StaveleyDemystifying gRPC in .Net by John Staveley
Demystifying gRPC in .Net by John Staveley
 
Quantum Computing: Current Landscape and the Future Role of APIs
Quantum Computing: Current Landscape and the Future Role of APIsQuantum Computing: Current Landscape and the Future Role of APIs
Quantum Computing: Current Landscape and the Future Role of APIs
 
In-Depth Performance Testing Guide for IT Professionals
In-Depth Performance Testing Guide for IT ProfessionalsIn-Depth Performance Testing Guide for IT Professionals
In-Depth Performance Testing Guide for IT Professionals
 
Connector Corner: Automate dynamic content and events by pushing a button
Connector Corner: Automate dynamic content and events by pushing a buttonConnector Corner: Automate dynamic content and events by pushing a button
Connector Corner: Automate dynamic content and events by pushing a button
 
Key Trends Shaping the Future of Infrastructure.pdf
Key Trends Shaping the Future of Infrastructure.pdfKey Trends Shaping the Future of Infrastructure.pdf
Key Trends Shaping the Future of Infrastructure.pdf
 
Exploring UiPath Orchestrator API: updates and limits in 2024 🚀
Exploring UiPath Orchestrator API: updates and limits in 2024 🚀Exploring UiPath Orchestrator API: updates and limits in 2024 🚀
Exploring UiPath Orchestrator API: updates and limits in 2024 🚀
 
FIDO Alliance Osaka Seminar: Passkeys and the Road Ahead.pdf
FIDO Alliance Osaka Seminar: Passkeys and the Road Ahead.pdfFIDO Alliance Osaka Seminar: Passkeys and the Road Ahead.pdf
FIDO Alliance Osaka Seminar: Passkeys and the Road Ahead.pdf
 
Speed Wins: From Kafka to APIs in Minutes
Speed Wins: From Kafka to APIs in MinutesSpeed Wins: From Kafka to APIs in Minutes
Speed Wins: From Kafka to APIs in Minutes
 

Introduction to iOS Development

  • 2. Resources • http://developer.apple.com/iOS • iPhone Programming, The Big Nerd Ranch Guide • Joe Conway & Aaron Hillegass • Programming in Objective-C • Kochan • http://www.raywenderlich.com Excellent iOS5 tutorials! • Stanford - free iOS lectures. Worth the time to watch!
  • 3. Prerequisites for iOS Development • Previous experience in another Object Oriented Programming(OOP) language will be helpful • Understanding of OOP concepts. • Some understanding of C can be helpful, but is not required. Objective-C builds on top of C. You will eventually run into pointers and other fundamental “C” features • Previous experience with an Integrated Development Environment (IDE) is helpful, but not required • Mac computer running OS X Lion • If you plan to submit to the App Store, you will need Apple devices to do real testing on. The simulator is not good enough.
  • 4. Introduction • iOS is the operating system that runs iPhones, iPod Touches,iPads, and Apple TVs. • The language used to develop software for iOS is Objective-C. • This class will teach you how to get started but will not havetime to teach you everything.
  • 5. What is iOS? • iOS is an operating system – it’s a subset of Mac OS X. • The iOS SDK is the software development kit that allows application programs to utilize classes and frameworks provided by the SDK. This class will focus on iOS SDK6. • iOS is multitasking and runs on several different devices(iPhones, iPod Touches, iPads, and Apple TVs). • Apple provides an IDE called Xcode. • Xcode is the IDE used by iOS (and OS X) developers. • Xcode provides an interface to the compiler, editor, debugger, and code profiling tools.
  • 6.
  • 7. Device Features • For the rest of the presentation, assume we are discussing iPhones, iPads, and iPod Touches. Although Apple TV runs iOS, Apple currently does not allow developers to create custom code for this device (yet). • SQLite for structured data storage • Media support for common audio, video, and still image formats (MPEG4, H.264, MP3, AAC, AMR, JPG, PNG, GIF) • GSM Telephony (hardware dependent) • Bluetooth, EDGE, 3G, and WiFi (hardware dependent) • Camera, GPS, compass, and accelerometer (hardware dependent) • Rich development environment, including a device simulator, tools for debugging, memory and performance profiling
  • 8. Capabilities of Mobile Devices Internet access • Touch screen • GPS (global positioning system – satellite-based system todetermine a location) • Local storage • Camera • Media playback • Phone • Bluetooth for device communication
  • 9. Limitation of Mobile Devices • Screen size • Touch screen • No physical keyboard or trackball – a finger or stylus is the primary interface to the device • Memory • Storage • Battery Life • Cell network • Sometimes flaky networks • Ergonomics
  • 10. Download the iOS SDK • Download the latest from the Apple App store • This is only available for Apple Macintosh computers • It’s free • To build to device and submit to the app store, you will berequired to becomes a register Apple iOS developer • It is $99 year for the basic account
  • 11.
  • 12. The Xcode – Integrated Development Environment • This consists of a single-window user interface, consisting of the Project Window, Jump and Navigation Bars, and the newly integrated Interface Builder designer.
  • 13.
  • 14. Features of the iPhone Simulator • The"iPhone Simulator", simulates various features of a real iOS device. Although the iPhone simulator is just a simulator to simulate certain tasks, it does come with some limitations.
  • 15. Simulator Limitations • Making Phone calls • Accessing the Accelerometer/Gyroscope • Sending and Receiving SMS messages • Installing applications from the App Store • Accessibility to the Camera • Use of the Microphone • Several Core OpenGL ES Features
  • 16. Instruments • The Xcode instruments allow you to dynamically trace and profile the performance of your Mac OSX, iPhone, and iPad applications. You can also create your own Instruments using DTrace and the Instruments custom builder. • Monitor your applications for memory leaks, which can cause unexpected results. • Gain a deeper understanding of the execution behavior of your applications.
  • 17.
  • 18. Quick Terminology: MVC • Model-View-Controller (MVC) • MVC is the paradigm of iOS programming • Model: Hold data, should know nothing of the interface • View: code for getting data in/out of a view. Deals with items like buttons, lists, tables, etc • Controller: keeps the Model objects and View objects in sync