Upload
babul-mirdha
View
535
Download
3
Embed Size (px)
Citation preview
Startup to be iOS Developerp p
Babul Mirdha
Founder, Meetnar.com
www.meetnar.com
About Mehttp://facebook.com/babu.mirdha
http://www.linkedin.com/in/babumirdhap // / /
https://twitter.com/babumirdha
www.meetnar.com
The Newton MessagePad was an early handheld device in the mid-1990s
People waiting to buy the iPhone, June 29, 2007
What’s inside?What s inside?
• Networks (2G 3G 4G)Networks (2G,3G,4G)
• Display
di / id• Audio/Video
• Memory
• Data(GPRS, WIFI,Bluetooth)
• CameraCamera
• GPS
SensorsSensors
• AccelerometerAccelerometer
• gyro
i i• proximity
• compass
Application Development dConsiderations
• Development Tools for iPhone Apps:Development Tools for iPhone Apps:– Apple’s native tools
Third party tool– Third‐party tool
Application Approaches
• Native ApplicationsNative Applications
• Web Applications
b id li i ( b i )• Hybrid Application (Web + Native)
Generic Development Principles
• Common principles for Apple’s native resources or a third party resource:resources or a third‐party resource:– Design patterns
– Licensing
– Device compatibility
Design patterns: • Many of the frameworks use well‐known design patterns for implementing your application.
• For example, the Model‐ View‐Controller (MVC) design pattern is very common.
Licensing:
• Understanding h h li i d l k f h hi d– how the licensing model works for the third‐party applications,
d li it ti diti– and any limitations or conditions
• Be aware of – any restrictions that Apple’s App Store policy might enforce.
Device compatibility: • Writing an application for one device doesn’t mean it will automatically run or behave the same on another ydevice.
• Take some time to understand h i– the constraints
– and differences, and design your application for a multi‐device scenario, if applicable.
• For example, the iPad has more real estate that an iPhone.
Apple Terminology and ConceptsApple Terminology and Concepts
Terminologis
iOSiOS SDKiOS SDKXcodeObjective‐CCocoa\Cocoa TouchCocoa\Cocoa TouchApple DeveloperThird party toolThird‐party tool
iOSiOS
‐ The operating system that powersThe operating system that powers Apple’s mobile devices.
‐ originally developed for the iPhoneg y p
‐ extended to power the iPod touch, iPad, and Apple TV.pp
iOS SDKiOS SDK
• Provides the supporting tools (called aProvides the supporting tools (called a toolchain) and framework necessary to develop mobile applications including:develop mobile applications, including:
• Cocoa Touch
M di• Media
• Core Services
• OS X kernel
• iPhone simulatoriPhone simulator
XcodeXcode
– Complete tool set for building Apps forComplete tool set for building Apps for – Mac OS X
– And iOS.
– includes the IDE:» Compiler
» Tools for performance and behavior analysis» Tools for performance and behavior analysis
» iOS simulator
Objective‐C
– Objective‐C is Apple’s native programming language,Objective C is Apple s native programming language, derived from the C language
– but with object‐oriented and message‐based j gextensions.
Objective‐C :j
(OO feature of Small Talk + super set of C)
Cocoa\Cocoa Touch
• CocoaCocoa – is one of Apple’s native application programming interfacesinterfaces.
– It provides a prebuilt set of libraries that support you in developing applications.you in developing applications.
• Cocoa Touch this includes extensions to support gesture– this includes extensions to support gesture recognition and animation on iPhone, iPod touch, and iPad devices.and iPad devices.
Cocoa\Cocoa Touch
• CocoaCocoa– Is one of Apple’s native application programming interfacesinterfaces.
– provides a prebuilt set of libraries that support in developing applications.developing applications.
• Cocoa TouchIncludes extensions to support gesture recognition– Includes extensions to support gesture recognition and animation on iPhone, iPod touch, and iPaddevices.devices.
Apple DeveloperApple Developer
– Need Registration as an Apple DeveloperNeed Registration as an Apple Developer – To download resources such as the iOS SDK and Xcode, ,
– Also provides you with access to key resources to support you through the iOS Dev Center.pp y g
Table 1–1. Online Apple ResourcesTable 1 1. Online Apple Resources
Resource Cost Url Purpose
iOS Dev Center Free http://developer.apple.com/devcenter/ios
Provides free technicalresources and tools
iOS Developer $99 http://developer.apple.com/program/ios
Membership permits youto distribute applicationson Apple’s App Store
The Apple Developer ProgramsThe Apple Developer Programs
• 1. iOS Developer Program1. iOS Developer Program• 2. MAC Developer Program
• Offersa complete set of technical resources support– a complete set of technical resources, support, and access to pre‐release software
– providing developers with everything they need toproviding developers with everything they need to create innovative apps
• for iOS and OS X
iOS Developer ProgramiOS Developer Program
• $99/year$99/year
• provides l t d i t t d– a complete and integrated process
– for developing and distributing iOSapps on the App Storeapps on the App Store.
Mac Developer ProgramMac Developer Program
• $99/year$99/year
• offers f t h i l d t– a range of technical resources and support
– for distributing Mac apps on the Mac App Store.
Third‐party toolThird party tool
• A third‐party tool is a product or packageA third party tool is a product or package specifically provided to solve a problem.
• In this case mobile application development• In this case, mobile application development without using the traditional Apple tool set.
Apple’s Native mobile application development frameworkdevelopment framework
ReviewReview
• Application Development ConsiderationsApplication Development Considerations
• Generic Development Principles
li i h• Application Approaches
• Apple Terminology and Concepts
Q & A
Thank You All