SlideShare ist ein Scribd-Unternehmen logo
1 von 20
iOS – let’s start
Basic introduction to mobile app development
And
Apple iOS
Harit Kothari
@harit
Mobile / Cellphone
 Screen
 Memory + Storage + Processor
 Battery
 Always on
Operating System
 What is operating system
 Processes, memory, space, time, challenges
 Similarity between mobile and
workstation/computer OS
 Challenges with mobile OS
 J2ME (Java 2 platform Micro Edition)
 Tablet is thin line between mobile and
desktop/workstation
Apple iOS
 No iOS v/s Android please!
 Operating system with touch and gesture support
 Memory and diskspace management
 Too many restrictions – security
 Derived from Macintosh OS X
 Initially for iPhone, later on iPod & iPad
 User interaction – few buttons & touch – gestures
 APIs, APIs and lots of APIs wrapped in frameworks
High level architecture
Core OS Layer
 Just understand, occasionally required, used by frameworks
 Accelerate Framework (digital signal processing, linear algebra,
image-processing calculations)
 Core Bluetooth Framework (Bluetooth)
 External Accessory Framework (Square Card Reader)
 Generic Security Services Framework
 Local Authentication Framework (TouchID)
 Network Extension Framework (VPN)
 Security Framework (Cryptography & Keychain)
 System
Currently 64 bit OS
Core Services Layer
 Peer-to-Peer Services (Bluetooth connectivity)
 iCloud Storage
 Block Objects (programming - blocks)
 Data Protection (encryption & restricting access to shared data)
 File-Sharing Support (/Documents directory accessible)
 Grand Central Dispatch
 In-App Purchase
 SQLite
 XML Support
 Frameworks - provides APIs to operate iCloud, CoreData,
AddressBook, Location, Media, HomeKit etc
Media Layer
 Graphics & Image
 Animation
 OpenGL ES – 2D & 3D rendering
 Metal – advanced level graphic rendering & manipulation
 Text
 Photo Library
 Audio
 Video
 Frameworks provide APIs to operate on images, photos,
animation, audio-video playback & capture etc.
Cocoa Touch Layer
 App Extensions (share, action, widget, photo editing, document sharing)
 Handoff
 AirDrop
 Multitasking
 Auto Layout
 Storyboards
 UI State Preservation
 Apple Push Notification Service
 Local Notifications
 Gesture Recognizers
 Standard System View Controllers (compose email, message, create/edit contact,
etc)
 Frameworks - AddressBookUI, EventKitUI, MapKit, MessageUI, UIKit
Where’s application
 Few apps shipped with iDevices like Contacts,
Maps, App Store, Camera, Calendar, Photos
and others
 App Store is an app – marketplace to purchase
and install apps
 And your own!
 .app is compiled application, .ipa is archieved
and code signed app
But how to?
 Development needs
 Mac OS X system – iMac, MacBook, Mac Mini –
any
 Softwares – xCode!
 iDevice – good to have – testing
 Of course, knowledge of iOS development,
objective-c, swift languages
Terminologies
 Many terminologies, covering few
 IBOutlet
 IBAction
 Classe
 Function
 Delegate
 Block
 Notification
 ViewController
UI
 Again, many ready made components available, covering few
 Button
 Label
 Navigation
 View
 ImageView
 ScrollView
 Slider
 Switch
 ActionSheet
 Alert
 No ComboBox/DropDown, Radio Buttons, CheckBoxes – its Apple world
 Your own custom UI component with your own behavior
How to put the controls
 Storyboard / XIB
 View Transition / Segue
 Connect them with code
Application Lifecycle
Main(), UIApplicationMain, AppDelegate
Events
 Touch
 Remote – shake, motion
 Accelerometer, Magnetometer, Gyroscope
 Location
 Redraw
Application state
 Execution states of an app
 Not running
 Inactive
 Active
 Background
 Suspended
Apple World
 Mac OS X application development
 iWatch
 tvOS – apple TV
 Swift – open source
Other side...
 Very rapid development & frequent changes
 New trends and technologies – innovations
 Compatibility & updates
Resources & help
 iOS Developer Library -
https://developer.apple.com/library/ios/documentation/
 Ray Wenderlich Tutorials
 Envato tut+ Tutorials
 Stackoverflow best buddy
 GitHub & cocoacontrols – custom components & libraries
 https://developer.apple.com/
 WWDC Sessions
Thank you!

Weitere ähnliche Inhalte

Was ist angesagt?

i Operating system
i Operating systemi Operating system
i Operating systemAkhil Kumar
 
Apple - what's new in iOS 10, watchOS 3 & tvOS 10
Apple - what's new in iOS 10, watchOS 3 & tvOS 10Apple - what's new in iOS 10, watchOS 3 & tvOS 10
Apple - what's new in iOS 10, watchOS 3 & tvOS 10Accedo
 
I phone programming project report
I phone programming project reportI phone programming project report
I phone programming project reportDhara Shah
 
Ios operating system
Ios operating systemIos operating system
Ios operating systemTIB Academy
 
History of iOS
History of iOSHistory of iOS
History of iOSpyro2927
 
iPhone application development training day 1
iPhone application development training day 1iPhone application development training day 1
iPhone application development training day 1Shyamala Prayaga
 
Srinumanne ios operating system ppt
Srinumanne ios operating system pptSrinumanne ios operating system ppt
Srinumanne ios operating system pptSrinu Manne
 
iOS: Overview, Architecture, Development & Versions
iOS: Overview, Architecture, Development & Versions iOS: Overview, Architecture, Development & Versions
iOS: Overview, Architecture, Development & Versions Sandra Kerbage
 

Was ist angesagt? (20)

i Operating system
i Operating systemi Operating system
i Operating system
 
Apple's ios
Apple's iosApple's ios
Apple's ios
 
Apple - what's new in iOS 10, watchOS 3 & tvOS 10
Apple - what's new in iOS 10, watchOS 3 & tvOS 10Apple - what's new in iOS 10, watchOS 3 & tvOS 10
Apple - what's new in iOS 10, watchOS 3 & tvOS 10
 
Ios seminar
Ios seminarIos seminar
Ios seminar
 
Ios operating system
Ios operating systemIos operating system
Ios operating system
 
iOS I phone operating system
iOS I phone operating system iOS I phone operating system
iOS I phone operating system
 
PPT on iOS
PPT on iOS PPT on iOS
PPT on iOS
 
iOS Operating System
iOS Operating SystemiOS Operating System
iOS Operating System
 
Presentation on iOS
Presentation on iOSPresentation on iOS
Presentation on iOS
 
I phone programming project report
I phone programming project reportI phone programming project report
I phone programming project report
 
iOS App Architecture
iOS App ArchitectureiOS App Architecture
iOS App Architecture
 
Ios operating system
Ios operating systemIos operating system
Ios operating system
 
What is cocoa
What is cocoaWhat is cocoa
What is cocoa
 
History of iOS
History of iOSHistory of iOS
History of iOS
 
iPhone application development training day 1
iPhone application development training day 1iPhone application development training day 1
iPhone application development training day 1
 
Srinumanne ios operating system ppt
Srinumanne ios operating system pptSrinumanne ios operating system ppt
Srinumanne ios operating system ppt
 
Apple ios
Apple iosApple ios
Apple ios
 
iOS - History of iOS
iOS - History of iOSiOS - History of iOS
iOS - History of iOS
 
iOS: Overview, Architecture, Development & Versions
iOS: Overview, Architecture, Development & Versions iOS: Overview, Architecture, Development & Versions
iOS: Overview, Architecture, Development & Versions
 
Introduction to ios
Introduction to iosIntroduction to ios
Introduction to ios
 

Ähnlich wie Basic Intro to iOS

Apple WWDC Mobility Review 2014
Apple WWDC Mobility Review 2014Apple WWDC Mobility Review 2014
Apple WWDC Mobility Review 2014Manesh Lad
 
Windows 7 For Developers
Windows 7 For DevelopersWindows 7 For Developers
Windows 7 For Developersjoycsc
 
Html5 investigation
Html5 investigationHtml5 investigation
Html5 investigationoppokui
 
Why Android? Exploring the design desisions in Android
Why Android? Exploring the design desisions in AndroidWhy Android? Exploring the design desisions in Android
Why Android? Exploring the design desisions in AndroidNavin Kabra
 
iOS (Vulner)ability
iOS (Vulner)abilityiOS (Vulner)ability
iOS (Vulner)abilitySubho Halder
 
A Taste of Java ME
A Taste of Java MEA Taste of Java ME
A Taste of Java MEwiradikusuma
 
Mobile and Tablet App Development and Market Share
Mobile and Tablet App Development and Market ShareMobile and Tablet App Development and Market Share
Mobile and Tablet App Development and Market ShareJeremy Callinan
 
2 Win7 For Devs Ux Touch Sensors
2 Win7 For Devs Ux Touch Sensors2 Win7 For Devs Ux Touch Sensors
2 Win7 For Devs Ux Touch Sensorsllangit
 
IBM Lotus Mobile Strategy
IBM Lotus Mobile StrategyIBM Lotus Mobile Strategy
IBM Lotus Mobile StrategyDvir Reznik
 
Introduction to Mobile Operating System.pptx
Introduction to Mobile Operating System.pptxIntroduction to Mobile Operating System.pptx
Introduction to Mobile Operating System.pptxaparna14patil
 
Beautiful Mind: iPhone Anatomy & Architecture
Beautiful Mind: iPhone Anatomy & ArchitectureBeautiful Mind: iPhone Anatomy & Architecture
Beautiful Mind: iPhone Anatomy & ArchitectureBess Ho
 
Mobile and tablet app dev
Mobile and tablet app devMobile and tablet app dev
Mobile and tablet app devJeremy Callinan
 
Pentesting iOS Applications
Pentesting iOS ApplicationsPentesting iOS Applications
Pentesting iOS Applicationsjasonhaddix
 

Ähnlich wie Basic Intro to iOS (20)

Apple WWDC Mobility Review 2014
Apple WWDC Mobility Review 2014Apple WWDC Mobility Review 2014
Apple WWDC Mobility Review 2014
 
IT6601 MOBILE COMPUTING
IT6601 MOBILE COMPUTINGIT6601 MOBILE COMPUTING
IT6601 MOBILE COMPUTING
 
Windows 7 For Developers
Windows 7 For DevelopersWindows 7 For Developers
Windows 7 For Developers
 
iPhone Programming
iPhone ProgrammingiPhone Programming
iPhone Programming
 
Html5 investigation
Html5 investigationHtml5 investigation
Html5 investigation
 
Why Android? Exploring the design desisions in Android
Why Android? Exploring the design desisions in AndroidWhy Android? Exploring the design desisions in Android
Why Android? Exploring the design desisions in Android
 
iOS (Vulner)ability
iOS (Vulner)abilityiOS (Vulner)ability
iOS (Vulner)ability
 
Lecture1
Lecture1Lecture1
Lecture1
 
A Taste of Java ME
A Taste of Java MEA Taste of Java ME
A Taste of Java ME
 
Mobile and Tablet App Development and Market Share
Mobile and Tablet App Development and Market ShareMobile and Tablet App Development and Market Share
Mobile and Tablet App Development and Market Share
 
2 Win7 For Devs Ux Touch Sensors
2 Win7 For Devs Ux Touch Sensors2 Win7 For Devs Ux Touch Sensors
2 Win7 For Devs Ux Touch Sensors
 
Mobile technology
Mobile technologyMobile technology
Mobile technology
 
It6601 mobile computing unit 5
It6601 mobile computing unit 5It6601 mobile computing unit 5
It6601 mobile computing unit 5
 
IBM Lotus Mobile Strategy
IBM Lotus Mobile StrategyIBM Lotus Mobile Strategy
IBM Lotus Mobile Strategy
 
Introduction to Mobile Operating System.pptx
Introduction to Mobile Operating System.pptxIntroduction to Mobile Operating System.pptx
Introduction to Mobile Operating System.pptx
 
Mobile os an intro
Mobile os  an introMobile os  an intro
Mobile os an intro
 
Beautiful Mind: iPhone Anatomy & Architecture
Beautiful Mind: iPhone Anatomy & ArchitectureBeautiful Mind: iPhone Anatomy & Architecture
Beautiful Mind: iPhone Anatomy & Architecture
 
Android Overview
Android OverviewAndroid Overview
Android Overview
 
Mobile and tablet app dev
Mobile and tablet app devMobile and tablet app dev
Mobile and tablet app dev
 
Pentesting iOS Applications
Pentesting iOS ApplicationsPentesting iOS Applications
Pentesting iOS Applications
 

Mehr von Harit Kothari

Key areas for successful software delivery
Key areas for successful software deliveryKey areas for successful software delivery
Key areas for successful software deliveryHarit Kothari
 
Introduction to Handoff
Introduction to HandoffIntroduction to Handoff
Introduction to HandoffHarit Kothari
 
Free & Open Source - an introduction
Free & Open Source - an introductionFree & Open Source - an introduction
Free & Open Source - an introductionHarit Kothari
 
OWASP Top 10 : Let’s know & solve
OWASP Top 10 : Let’s know & solveOWASP Top 10 : Let’s know & solve
OWASP Top 10 : Let’s know & solveHarit Kothari
 
Form Processing In Php
Form Processing In PhpForm Processing In Php
Form Processing In PhpHarit Kothari
 
Session Management & Cookies In Php
Session Management & Cookies In PhpSession Management & Cookies In Php
Session Management & Cookies In PhpHarit Kothari
 
Database Connection With Mysql
Database Connection With MysqlDatabase Connection With Mysql
Database Connection With MysqlHarit Kothari
 

Mehr von Harit Kothari (9)

Key areas for successful software delivery
Key areas for successful software deliveryKey areas for successful software delivery
Key areas for successful software delivery
 
Introduction to Handoff
Introduction to HandoffIntroduction to Handoff
Introduction to Handoff
 
Free & Open Source - an introduction
Free & Open Source - an introductionFree & Open Source - an introduction
Free & Open Source - an introduction
 
OWASP Top 10 : Let’s know & solve
OWASP Top 10 : Let’s know & solveOWASP Top 10 : Let’s know & solve
OWASP Top 10 : Let’s know & solve
 
Form Processing In Php
Form Processing In PhpForm Processing In Php
Form Processing In Php
 
Session Management & Cookies In Php
Session Management & Cookies In PhpSession Management & Cookies In Php
Session Management & Cookies In Php
 
Coding In Php
Coding In PhpCoding In Php
Coding In Php
 
Database Connection With Mysql
Database Connection With MysqlDatabase Connection With Mysql
Database Connection With Mysql
 
Starting With Php
Starting With PhpStarting With Php
Starting With Php
 

Kürzlich hochgeladen

Test Automation Strategy for Frontend and Backend
Test Automation Strategy for Frontend and BackendTest Automation Strategy for Frontend and Backend
Test Automation Strategy for Frontend and BackendArshad QA
 
SyndBuddy AI 2k Review 2024: Revolutionizing Content Syndication with AI
SyndBuddy AI 2k Review 2024: Revolutionizing Content Syndication with AISyndBuddy AI 2k Review 2024: Revolutionizing Content Syndication with AI
SyndBuddy AI 2k Review 2024: Revolutionizing Content Syndication with AIABDERRAOUF MEHENNI
 
Active Directory Penetration Testing, cionsystems.com.pdf
Active Directory Penetration Testing, cionsystems.com.pdfActive Directory Penetration Testing, cionsystems.com.pdf
Active Directory Penetration Testing, cionsystems.com.pdfCionsystems
 
How To Troubleshoot Collaboration Apps for the Modern Connected Worker
How To Troubleshoot Collaboration Apps for the Modern Connected WorkerHow To Troubleshoot Collaboration Apps for the Modern Connected Worker
How To Troubleshoot Collaboration Apps for the Modern Connected WorkerThousandEyes
 
why an Opensea Clone Script might be your perfect match.pdf
why an Opensea Clone Script might be your perfect match.pdfwhy an Opensea Clone Script might be your perfect match.pdf
why an Opensea Clone Script might be your perfect match.pdfjoe51371421
 
Unlocking the Future of AI Agents with Large Language Models
Unlocking the Future of AI Agents with Large Language ModelsUnlocking the Future of AI Agents with Large Language Models
Unlocking the Future of AI Agents with Large Language Modelsaagamshah0812
 
How To Use Server-Side Rendering with Nuxt.js
How To Use Server-Side Rendering with Nuxt.jsHow To Use Server-Side Rendering with Nuxt.js
How To Use Server-Side Rendering with Nuxt.jsAndolasoft Inc
 
The Ultimate Test Automation Guide_ Best Practices and Tips.pdf
The Ultimate Test Automation Guide_ Best Practices and Tips.pdfThe Ultimate Test Automation Guide_ Best Practices and Tips.pdf
The Ultimate Test Automation Guide_ Best Practices and Tips.pdfkalichargn70th171
 
Diamond Application Development Crafting Solutions with Precision
Diamond Application Development Crafting Solutions with PrecisionDiamond Application Development Crafting Solutions with Precision
Diamond Application Development Crafting Solutions with PrecisionSolGuruz
 
A Secure and Reliable Document Management System is Essential.docx
A Secure and Reliable Document Management System is Essential.docxA Secure and Reliable Document Management System is Essential.docx
A Secure and Reliable Document Management System is Essential.docxComplianceQuest1
 
call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️
call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️
call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️Delhi Call girls
 
Try MyIntelliAccount Cloud Accounting Software As A Service Solution Risk Fre...
Try MyIntelliAccount Cloud Accounting Software As A Service Solution Risk Fre...Try MyIntelliAccount Cloud Accounting Software As A Service Solution Risk Fre...
Try MyIntelliAccount Cloud Accounting Software As A Service Solution Risk Fre...MyIntelliSource, Inc.
 
Learn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdf
Learn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdfLearn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdf
Learn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdfkalichargn70th171
 
HR Software Buyers Guide in 2024 - HRSoftware.com
HR Software Buyers Guide in 2024 - HRSoftware.comHR Software Buyers Guide in 2024 - HRSoftware.com
HR Software Buyers Guide in 2024 - HRSoftware.comFatema Valibhai
 
(Genuine) Escort Service Lucknow | Starting ₹,5K To @25k with A/C 🧑🏽‍❤️‍🧑🏻 89...
(Genuine) Escort Service Lucknow | Starting ₹,5K To @25k with A/C 🧑🏽‍❤️‍🧑🏻 89...(Genuine) Escort Service Lucknow | Starting ₹,5K To @25k with A/C 🧑🏽‍❤️‍🧑🏻 89...
(Genuine) Escort Service Lucknow | Starting ₹,5K To @25k with A/C 🧑🏽‍❤️‍🧑🏻 89...gurkirankumar98700
 
Reassessing the Bedrock of Clinical Function Models: An Examination of Large ...
Reassessing the Bedrock of Clinical Function Models: An Examination of Large ...Reassessing the Bedrock of Clinical Function Models: An Examination of Large ...
Reassessing the Bedrock of Clinical Function Models: An Examination of Large ...harshavardhanraghave
 
Unveiling the Tech Salsa of LAMs with Janus in Real-Time Applications
Unveiling the Tech Salsa of LAMs with Janus in Real-Time ApplicationsUnveiling the Tech Salsa of LAMs with Janus in Real-Time Applications
Unveiling the Tech Salsa of LAMs with Janus in Real-Time ApplicationsAlberto González Trastoy
 
Clustering techniques data mining book ....
Clustering techniques data mining book ....Clustering techniques data mining book ....
Clustering techniques data mining book ....ShaimaaMohamedGalal
 
5 Signs You Need a Fashion PLM Software.pdf
5 Signs You Need a Fashion PLM Software.pdf5 Signs You Need a Fashion PLM Software.pdf
5 Signs You Need a Fashion PLM Software.pdfWave PLM
 

Kürzlich hochgeladen (20)

Test Automation Strategy for Frontend and Backend
Test Automation Strategy for Frontend and BackendTest Automation Strategy for Frontend and Backend
Test Automation Strategy for Frontend and Backend
 
SyndBuddy AI 2k Review 2024: Revolutionizing Content Syndication with AI
SyndBuddy AI 2k Review 2024: Revolutionizing Content Syndication with AISyndBuddy AI 2k Review 2024: Revolutionizing Content Syndication with AI
SyndBuddy AI 2k Review 2024: Revolutionizing Content Syndication with AI
 
Active Directory Penetration Testing, cionsystems.com.pdf
Active Directory Penetration Testing, cionsystems.com.pdfActive Directory Penetration Testing, cionsystems.com.pdf
Active Directory Penetration Testing, cionsystems.com.pdf
 
How To Troubleshoot Collaboration Apps for the Modern Connected Worker
How To Troubleshoot Collaboration Apps for the Modern Connected WorkerHow To Troubleshoot Collaboration Apps for the Modern Connected Worker
How To Troubleshoot Collaboration Apps for the Modern Connected Worker
 
why an Opensea Clone Script might be your perfect match.pdf
why an Opensea Clone Script might be your perfect match.pdfwhy an Opensea Clone Script might be your perfect match.pdf
why an Opensea Clone Script might be your perfect match.pdf
 
Unlocking the Future of AI Agents with Large Language Models
Unlocking the Future of AI Agents with Large Language ModelsUnlocking the Future of AI Agents with Large Language Models
Unlocking the Future of AI Agents with Large Language Models
 
How To Use Server-Side Rendering with Nuxt.js
How To Use Server-Side Rendering with Nuxt.jsHow To Use Server-Side Rendering with Nuxt.js
How To Use Server-Side Rendering with Nuxt.js
 
The Ultimate Test Automation Guide_ Best Practices and Tips.pdf
The Ultimate Test Automation Guide_ Best Practices and Tips.pdfThe Ultimate Test Automation Guide_ Best Practices and Tips.pdf
The Ultimate Test Automation Guide_ Best Practices and Tips.pdf
 
Diamond Application Development Crafting Solutions with Precision
Diamond Application Development Crafting Solutions with PrecisionDiamond Application Development Crafting Solutions with Precision
Diamond Application Development Crafting Solutions with Precision
 
A Secure and Reliable Document Management System is Essential.docx
A Secure and Reliable Document Management System is Essential.docxA Secure and Reliable Document Management System is Essential.docx
A Secure and Reliable Document Management System is Essential.docx
 
Call Girls In Mukherjee Nagar 📱 9999965857 🤩 Delhi 🫦 HOT AND SEXY VVIP 🍎 SE...
Call Girls In Mukherjee Nagar 📱  9999965857  🤩 Delhi 🫦 HOT AND SEXY VVIP 🍎 SE...Call Girls In Mukherjee Nagar 📱  9999965857  🤩 Delhi 🫦 HOT AND SEXY VVIP 🍎 SE...
Call Girls In Mukherjee Nagar 📱 9999965857 🤩 Delhi 🫦 HOT AND SEXY VVIP 🍎 SE...
 
call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️
call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️
call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️
 
Try MyIntelliAccount Cloud Accounting Software As A Service Solution Risk Fre...
Try MyIntelliAccount Cloud Accounting Software As A Service Solution Risk Fre...Try MyIntelliAccount Cloud Accounting Software As A Service Solution Risk Fre...
Try MyIntelliAccount Cloud Accounting Software As A Service Solution Risk Fre...
 
Learn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdf
Learn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdfLearn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdf
Learn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdf
 
HR Software Buyers Guide in 2024 - HRSoftware.com
HR Software Buyers Guide in 2024 - HRSoftware.comHR Software Buyers Guide in 2024 - HRSoftware.com
HR Software Buyers Guide in 2024 - HRSoftware.com
 
(Genuine) Escort Service Lucknow | Starting ₹,5K To @25k with A/C 🧑🏽‍❤️‍🧑🏻 89...
(Genuine) Escort Service Lucknow | Starting ₹,5K To @25k with A/C 🧑🏽‍❤️‍🧑🏻 89...(Genuine) Escort Service Lucknow | Starting ₹,5K To @25k with A/C 🧑🏽‍❤️‍🧑🏻 89...
(Genuine) Escort Service Lucknow | Starting ₹,5K To @25k with A/C 🧑🏽‍❤️‍🧑🏻 89...
 
Reassessing the Bedrock of Clinical Function Models: An Examination of Large ...
Reassessing the Bedrock of Clinical Function Models: An Examination of Large ...Reassessing the Bedrock of Clinical Function Models: An Examination of Large ...
Reassessing the Bedrock of Clinical Function Models: An Examination of Large ...
 
Unveiling the Tech Salsa of LAMs with Janus in Real-Time Applications
Unveiling the Tech Salsa of LAMs with Janus in Real-Time ApplicationsUnveiling the Tech Salsa of LAMs with Janus in Real-Time Applications
Unveiling the Tech Salsa of LAMs with Janus in Real-Time Applications
 
Clustering techniques data mining book ....
Clustering techniques data mining book ....Clustering techniques data mining book ....
Clustering techniques data mining book ....
 
5 Signs You Need a Fashion PLM Software.pdf
5 Signs You Need a Fashion PLM Software.pdf5 Signs You Need a Fashion PLM Software.pdf
5 Signs You Need a Fashion PLM Software.pdf
 

Basic Intro to iOS

  • 1. iOS – let’s start Basic introduction to mobile app development And Apple iOS Harit Kothari @harit
  • 2. Mobile / Cellphone  Screen  Memory + Storage + Processor  Battery  Always on
  • 3. Operating System  What is operating system  Processes, memory, space, time, challenges  Similarity between mobile and workstation/computer OS  Challenges with mobile OS  J2ME (Java 2 platform Micro Edition)  Tablet is thin line between mobile and desktop/workstation
  • 4. Apple iOS  No iOS v/s Android please!  Operating system with touch and gesture support  Memory and diskspace management  Too many restrictions – security  Derived from Macintosh OS X  Initially for iPhone, later on iPod & iPad  User interaction – few buttons & touch – gestures  APIs, APIs and lots of APIs wrapped in frameworks
  • 6. Core OS Layer  Just understand, occasionally required, used by frameworks  Accelerate Framework (digital signal processing, linear algebra, image-processing calculations)  Core Bluetooth Framework (Bluetooth)  External Accessory Framework (Square Card Reader)  Generic Security Services Framework  Local Authentication Framework (TouchID)  Network Extension Framework (VPN)  Security Framework (Cryptography & Keychain)  System Currently 64 bit OS
  • 7. Core Services Layer  Peer-to-Peer Services (Bluetooth connectivity)  iCloud Storage  Block Objects (programming - blocks)  Data Protection (encryption & restricting access to shared data)  File-Sharing Support (/Documents directory accessible)  Grand Central Dispatch  In-App Purchase  SQLite  XML Support  Frameworks - provides APIs to operate iCloud, CoreData, AddressBook, Location, Media, HomeKit etc
  • 8. Media Layer  Graphics & Image  Animation  OpenGL ES – 2D & 3D rendering  Metal – advanced level graphic rendering & manipulation  Text  Photo Library  Audio  Video  Frameworks provide APIs to operate on images, photos, animation, audio-video playback & capture etc.
  • 9. Cocoa Touch Layer  App Extensions (share, action, widget, photo editing, document sharing)  Handoff  AirDrop  Multitasking  Auto Layout  Storyboards  UI State Preservation  Apple Push Notification Service  Local Notifications  Gesture Recognizers  Standard System View Controllers (compose email, message, create/edit contact, etc)  Frameworks - AddressBookUI, EventKitUI, MapKit, MessageUI, UIKit
  • 10. Where’s application  Few apps shipped with iDevices like Contacts, Maps, App Store, Camera, Calendar, Photos and others  App Store is an app – marketplace to purchase and install apps  And your own!  .app is compiled application, .ipa is archieved and code signed app
  • 11. But how to?  Development needs  Mac OS X system – iMac, MacBook, Mac Mini – any  Softwares – xCode!  iDevice – good to have – testing  Of course, knowledge of iOS development, objective-c, swift languages
  • 12. Terminologies  Many terminologies, covering few  IBOutlet  IBAction  Classe  Function  Delegate  Block  Notification  ViewController
  • 13. UI  Again, many ready made components available, covering few  Button  Label  Navigation  View  ImageView  ScrollView  Slider  Switch  ActionSheet  Alert  No ComboBox/DropDown, Radio Buttons, CheckBoxes – its Apple world  Your own custom UI component with your own behavior
  • 14. How to put the controls  Storyboard / XIB  View Transition / Segue  Connect them with code
  • 16. Events  Touch  Remote – shake, motion  Accelerometer, Magnetometer, Gyroscope  Location  Redraw
  • 17. Application state  Execution states of an app  Not running  Inactive  Active  Background  Suspended
  • 18. Apple World  Mac OS X application development  iWatch  tvOS – apple TV  Swift – open source
  • 19. Other side...  Very rapid development & frequent changes  New trends and technologies – innovations  Compatibility & updates
  • 20. Resources & help  iOS Developer Library - https://developer.apple.com/library/ios/documentation/  Ray Wenderlich Tutorials  Envato tut+ Tutorials  Stackoverflow best buddy  GitHub & cocoacontrols – custom components & libraries  https://developer.apple.com/  WWDC Sessions Thank you!