SlideShare uma empresa Scribd logo
1 de 47
Baixar para ler offline
iOS Ecosystem
                       Matteo Battaglio


                         Pragma Night @ Talent Garden
                                      1
giovedì 28 marzo 13                                     1
Why iOS?


                         2       Pragma Night
giovedì 28 marzo 13                         2
Reason #1: Numbers
                      The size of the mobile market is huge,
                            and growing exponentially




                                        3                      Pragma Night
giovedì 28 marzo 13                                                       3
Reason #1: Numbers
                      Apple keeps holding a significant share
                      of the market, with a positive outlook




                                        4                      Pragma Night
giovedì 28 marzo 13                                                       4
Reason #2: Consistency

          • The iOS platform is highly consistent
           • Just 3 different device families (iPhone, iPad,
                      iPod)
                • they target the high-end market
                • the minimum set of features and APIs available
                      to all is well known


                                             5               Pragma Night
giovedì 28 marzo 13                                                     5
Reason #2: Consistency
                      More than 80% of devices already run iOS 6




                                          6                    Pragma Night
giovedì 28 marzo 13                                                       6
Reason #3: Environment
    Apple’s mission:
    create an environment around
    the user, not just sell products

   • 500+ milion iTunes accounts,
           with credit card
   • the iOS customer is much
           more willing to pay than
           other platforms’ customer


                                   7           Pragma Night
giovedì 28 marzo 13                                       7
Reason #3: Environment

          • Apple’s highly-controlled environment limits
                  unwanted phenomenons
                • piracy
                • fraudulent apps
                • crappy apps
          • Developers are less threatened than other
                  platforms’ developers

                                          8                Pragma Night
giovedì 28 marzo 13                                                   8
Reason #4: Resources


          • iOS frameworks and APIs are of first-class quality
          • The documentation is structured and exhaustive
          • Lots of books, articles, videos and tutorials
          • High-quality developer community

                                   9                     Pragma Night
giovedì 28 marzo 13                                                 9
Reason #4: Resources

          • Development tools by Apple
           • Xcode is a full featured IDE
           • Interface Builder is great for designing user
                      interfaces
                • Debugger and profiler make it easy to find
                      anomalies
                • iOS Simulator is super fast
                                       10                    Pragma Night
giovedì 28 marzo 13                                                     10
Reason #5: Fun!

          • iOS devices are equipped with all sorts of sensors
          • their computational power is enough even for the
                  more advanced tasks
          • always connected to the Internet
                      There is no limit to the imagination!



                                          11                  Pragma Night
giovedì 28 marzo 13                                                      11
Reason #5: Fun!
                      Most popular app categories

         1. Games ~ 140000 active apps @ $0.89 avg.
         2. Education ~ 90000 active apps
         3. Entertainment ~ 75000 active apps
                                              @ $1.56 avg.
         4. Lifestyle ~ 70000 active apps
         5. Books ~ 55000 active apps



                                  12                 Pragma Night
giovedì 28 marzo 13                                             12
Drawbacks


          • Not-so-cheap hardware
          • iOS-dedicated events almost absent
          • Dependance upon a single company and its
                  decisions (non disclosure agreements, Xcode and
                  SDK update policies, etc)



                                       13                    Pragma Night
giovedì 28 marzo 13                                                     13
Hidden complexity

          • iPhone
          • iPad
          • iPod
                        Just 3 different devices?



                                   14               Pragma Night
giovedì 28 marzo 13                                            14
Devices

                  iPhone 3GS    iPod 4th   iPad 2


                  iPhone 4      iPod 5th   iPad 3


                  iPhone 4s                iPad 4


                  iPhone 5                 iPad Mini

                                  15           Pragma Night
giovedì 28 marzo 13                                       15
Display



                                   iPhone 4 / 4S     iPhone 5
                      iPhone 3GS
                                    iPod 4th gen   iPod 5th gen

                      320x480 px   640x480 px      640x1136 px


                       116 ppi       326 ppi         332 ppi


                                        16                        Pragma Night
giovedì 28 marzo 13                                                          16
Display



                       iPad 1 / 2     iPad 3 / 4    iPad mini


                      1024x768 px   2048x1536 px   1024x768 px


                        132 dpi        264 dpi       162 dpi


                                          17                     Pragma Night
giovedì 28 marzo 13                                                         17
Processor / RAM



                                        ARMv7                          ARMv7s

       1 GB                                               iPad 3   iPhone 5    iPad 4

                                              iPhone 4S
    512 MB                         iPhone 4     iPad 2
                                               iPod 5th
                      iPhone 3Gs    iPad 1
    256 MB              iPod 3rd   iPod 4th


                                                 18                           Pragma Night
giovedì 28 marzo 13                                                                      18
Device Specs

          • GSM Arena
                  http://www.gsmarena.com/apple-phones-48.php


          • The iPhoneWiki
                  http://theiphonewiki.com/wiki/


          • iPhone Dev Wiki
            http://iphonedevwiki.net/index.php/Main_Page


                                             19                 Pragma Night
giovedì 28 marzo 13                                                        19
Requirements


                           20        Pragma Night
giovedì 28 marzo 13                             20
Phisical requirements

          • A Mac (iMac, Mac mini, MacBook family)
           • OS X (10.7+)
           • Xcode (4.0+)
          • An iOS device (not mandatory, but recommended)
           • The iOS Simulator can’t be used to simulate
                      some features (e.g. push notifications, in-app
                      purchases)

                                           21                     Pragma Night
giovedì 28 marzo 13                                                          21
Skill requirements

          • Object Oriented Programming
          • C language
          • Objective-C language & iOS SDK
          • Apple guidelines
          • Provisioning procedures

                                22           Pragma Night
giovedì 28 marzo 13                                     22
Membership requirements



          • Apple ID (free)
          • Apple Developer Program (ADP) subscription



                                 23                  Pragma Night
giovedì 28 marzo 13                                             23
Apple Developer
                         Program

                             24         Pragma Night
giovedì 28 marzo 13                                24
Apple Developer Program
                                   Developer Programs

                            Name             Price           Deployment

                      iOS Developer
                                           $99/year     App Store / 100 devices
                      Program


                      iOS Developer
                                           $299/year   NO App Store / ∞ devices
                      Enterprise Program


                      iOS Developer
                                             free      NO App Store / 200 people
                      University Program


                                               25                         Pragma Night
giovedì 28 marzo 13                                                                  25
ADP Sections
          • Member Center
                •     manage users
                •     ADP subscription and renewal

          • iOS Provisioning Portal
                •     development and distribution certificates
                •     adding and removing devices

          • iTunes Connect
                •     app submissions
                •     tracking sales and trends
                •     handling payments
                                                  26             Pragma Night
giovedì 28 marzo 13                                                         26
Concepts

          • Certificate
                  univocally identifies an actor
          • Device
                  Devices must be enabled for testing
          • App ID
                  Unique identifier for the app
          • Provisioning profile
                  Asset which encloses the three concepts above

                                         27                  Pragma Night
giovedì 28 marzo 13                                                     27
Certificates


          • Development Certificate
                  Each person in the team has his own


          • Distribution Certificate
                  There’s one for the whole company (or single
                  developer)



                                       28                    Pragma Night
giovedì 28 marzo 13                                                     28
Devices
          • Purpose
                  devices are used during development and testing
          • Name + UDID
                  Unique Device IDentifier, 40 char-long string
                  e.g. 67a43b0925c7a8050ad788591ace81d1bda81bed
          • Limits
                1. The ADP allows for a maximum of 100 devices
                2. A device can’t be removed from the list until the next
                   renewal of the subscription

                                           29                        Pragma Night
giovedì 28 marzo 13                                                             29
App IDs

          • Bundle Identifier
                  unique identifier for the app
          • Reverse domain name
                  e.g. com.mycompany.BestAppEver
          • Wildcard character
                  e.g. com.mycompany.*



                                         30        Pragma Night
giovedì 28 marzo 13                                           30
Provisioning Profile
          •       What is it?
                  it’s a resource (a file) which bundles the App ID, the
                  device list and the certificates of the developers of
                  the team
          •       What does it provide?
                  it is bundled with the app and is used to authorize the
                  execution of the app on the devices and its
                  deployment and distribution
          •       How long does it last?
                  It is valid for one year, after which it must be renewed

                                           31                       Pragma Night
giovedì 28 marzo 13                                                            31
Provisioning Profile
          • Development Provisioning Profile
                ‣ App ID
                ‣ (Development) certificate list
                ‣ Device list


          • Distribution Provisioning Profile
                ‣     Distribution method (App Store or AdHoc)
                ‣     App ID
                ‣     (Distribution) certificate
                ‣     Device list (only in case of AdHoc deployment)

                                             32                        Pragma Night
giovedì 28 marzo 13                                                               32
Step by step
                  ADP $$       Certificates
                                             MM
                                              Development         Distribution
                                                                                 O
                                             MCertificates         Certificate




     MM               Team    Devices
                                             MM   Customers         Devices
                                                                                 O
     M                                       MM
                 New APP      App ID              Provisioning             M O
                                                                           M

                      Xcode    Install             Build & sign


giovedì 28 marzo 13                                                              33
SDK


                       34   Pragma Night
giovedì 28 marzo 13                    34
iOS
          • Mobile operating system
                  ARM architecture, multitasking, Cocoa Touch,
                  multi-touch GUI
          • Kernel XNU (like MAC OS X)
                  Originally developed by NeXT for the NeXTSTEP
                  OS, it is a hybrid kernel combining Mach and BSD
                  components, and an object-oriented API for
                  drivers
          • Initially known as iPhone OS
                                        35                       Pragma Night
giovedì 28 marzo 13                                                         35
Cocoa Touch frameworks
                      UIKit




                                36         Pragma Night
giovedì 28 marzo 13                                   36
iOS SDK


          • Libraries and development tools
          • First release in March 2008
          • Side by side with Xcode e Mac OS


                                 37            Pragma Night
giovedì 28 marzo 13                                       37
Tools

          • Xcode
                  The natural environment for app development
          • iOS Simulator
                  The handy way of running and testing apps
          • Instruments
                  The perfect tool for code analysis and profiling



                                        38                     Pragma Night
giovedì 28 marzo 13                                                       38
Xcode

          • Integrated Development Environment
          • Objective-C / Objective-C++ / C++ / C
          • LLVM and GCC compilers and debuggers
          • Interface Builder
          • Source Control (Subversion / Git)
          • Apple’s developer documentation
                                39                  Pragma Night
giovedì 28 marzo 13                                            39
Simulator
          • iPhone / iPhone Retina (3.5” / 4”) / iPad / iPad
                  Retina
          • Gestures, Orientation change, Memory Warnings
          • GPS (iOS 5+ Simulator)
          • Apps: Safari, Photos, Contacts, Settings, Game
                  Center, News Stand
          • Fast! (It’s x86 and runs x86 apps, no ARM
                  emulation)

                                       40                  Pragma Night
giovedì 28 marzo 13                                                   40
Instruments


          • Application performance analyzer and visualizer
          • Integrated with Xcode
          • Tracks user events, CPU activity, memory
                  allocations, releases and leaks, file I/O, network
                  activity, graphics and OpenGL



                                          41                     Pragma Night
giovedì 28 marzo 13                                                         41
Resources


                          42      Pragma Night
giovedì 28 marzo 13                          42
Resources


          • Events
          • Videos
          • Books


                          43      Pragma Night
giovedì 28 marzo 13                          43
Events

                       • Apple WWDC
                       • Apple Tech Talk World Tour
                       • NSConference
                       • Pragma mark :)
                         http://lanyrd.com/topics/ios/


                         44                     Pragma Night
giovedì 28 marzo 13                                        44
Videos
          • NSScreencast.com
          • WWDC 2010 / 2011 / 2012 (ADP members only)
          • iOS Development Videos (ADP members only)
          • Lynda.com
          • iDeveloper.tv
          • Udemy.com
          • University courses on iOS (published on iTunes U)
                                  45                   Pragma Night
giovedì 28 marzo 13                                               45
Books




                      • Programming in Objective-C
                      • Cocoa Design Patterns
                      • Pro Multithreading and Memory Management
                        for iOS and Mac OS X
                                         46                  Pragma Night
giovedì 28 marzo 13                                                     46
Thank You!

                      matteo.battaglio@pragmamark.org
                                                        Pragma Night
giovedì 28 marzo 13                                                47

Mais conteúdo relacionado

Mais procurados

Introduction to HADOOP.pdf
Introduction to HADOOP.pdfIntroduction to HADOOP.pdf
Introduction to HADOOP.pdf8840VinayShelke
 
Spark Compute as a Service at Paypal with Prabhu Kasinathan
Spark Compute as a Service at Paypal with Prabhu KasinathanSpark Compute as a Service at Paypal with Prabhu Kasinathan
Spark Compute as a Service at Paypal with Prabhu KasinathanDatabricks
 
日本語:Mongo dbに於けるシャーディングについて
日本語:Mongo dbに於けるシャーディングについて日本語:Mongo dbに於けるシャーディングについて
日本語:Mongo dbに於けるシャーディングについてippei_suzuki
 
Smartsheet’s Transition to Snowflake and Databricks: The Why and Immediate Im...
Smartsheet’s Transition to Snowflake and Databricks: The Why and Immediate Im...Smartsheet’s Transition to Snowflake and Databricks: The Why and Immediate Im...
Smartsheet’s Transition to Snowflake and Databricks: The Why and Immediate Im...Databricks
 
脆弱性スキャナVulsで始めるセキュリティ対策
脆弱性スキャナVulsで始めるセキュリティ対策脆弱性スキャナVulsで始めるセキュリティ対策
脆弱性スキャナVulsで始めるセキュリティ対策Takayuki Ushida
 
Collaborative Filtering with Spark
Collaborative Filtering with SparkCollaborative Filtering with Spark
Collaborative Filtering with SparkChris Johnson
 
Big Data Architecture and Design Patterns
Big Data Architecture and Design PatternsBig Data Architecture and Design Patterns
Big Data Architecture and Design PatternsJohn Yeung
 
關聯式vs非關聯式資料庫
關聯式vs非關聯式資料庫關聯式vs非關聯式資料庫
關聯式vs非關聯式資料庫JiaWenWang16
 
Activating Data as a Strategic Asset
Activating Data as a Strategic AssetActivating Data as a Strategic Asset
Activating Data as a Strategic AssetDavid Bloch
 
楽天ネットワークエンジニアたちが目指す、次世代データセンターとは
楽天ネットワークエンジニアたちが目指す、次世代データセンターとは楽天ネットワークエンジニアたちが目指す、次世代データセンターとは
楽天ネットワークエンジニアたちが目指す、次世代データセンターとはRakuten Group, Inc.
 
Cloud Data Warehousing presentation by Rogier Werschkull, including tips, bes...
Cloud Data Warehousing presentation by Rogier Werschkull, including tips, bes...Cloud Data Warehousing presentation by Rogier Werschkull, including tips, bes...
Cloud Data Warehousing presentation by Rogier Werschkull, including tips, bes...Patrick Van Renterghem
 
BI and Dashboarding Best Practices
 BI and Dashboarding Best Practices BI and Dashboarding Best Practices
BI and Dashboarding Best PracticesRocket Software
 
Data Integration Alternatives: When to use Data Virtualization, ETL, and ESB
Data Integration Alternatives: When to use Data Virtualization, ETL, and ESBData Integration Alternatives: When to use Data Virtualization, ETL, and ESB
Data Integration Alternatives: When to use Data Virtualization, ETL, and ESBDenodo
 
SKOS and Linked Data
SKOS and Linked DataSKOS and Linked Data
SKOS and Linked DataAntoine Isaac
 
Azure Database Services for MySQL PostgreSQL and MariaDB
Azure Database Services for MySQL PostgreSQL and MariaDBAzure Database Services for MySQL PostgreSQL and MariaDB
Azure Database Services for MySQL PostgreSQL and MariaDBNicholas Vossburg
 
Data Lake Overview
Data Lake OverviewData Lake Overview
Data Lake OverviewJames Serra
 

Mais procurados (20)

Introduction to HADOOP.pdf
Introduction to HADOOP.pdfIntroduction to HADOOP.pdf
Introduction to HADOOP.pdf
 
Spark Compute as a Service at Paypal with Prabhu Kasinathan
Spark Compute as a Service at Paypal with Prabhu KasinathanSpark Compute as a Service at Paypal with Prabhu Kasinathan
Spark Compute as a Service at Paypal with Prabhu Kasinathan
 
日本語:Mongo dbに於けるシャーディングについて
日本語:Mongo dbに於けるシャーディングについて日本語:Mongo dbに於けるシャーディングについて
日本語:Mongo dbに於けるシャーディングについて
 
Smartsheet’s Transition to Snowflake and Databricks: The Why and Immediate Im...
Smartsheet’s Transition to Snowflake and Databricks: The Why and Immediate Im...Smartsheet’s Transition to Snowflake and Databricks: The Why and Immediate Im...
Smartsheet’s Transition to Snowflake and Databricks: The Why and Immediate Im...
 
脆弱性スキャナVulsで始めるセキュリティ対策
脆弱性スキャナVulsで始めるセキュリティ対策脆弱性スキャナVulsで始めるセキュリティ対策
脆弱性スキャナVulsで始めるセキュリティ対策
 
Collaborative Filtering with Spark
Collaborative Filtering with SparkCollaborative Filtering with Spark
Collaborative Filtering with Spark
 
Big Data Architecture and Design Patterns
Big Data Architecture and Design PatternsBig Data Architecture and Design Patterns
Big Data Architecture and Design Patterns
 
關聯式vs非關聯式資料庫
關聯式vs非關聯式資料庫關聯式vs非關聯式資料庫
關聯式vs非關聯式資料庫
 
Deep Dive on Amazon Redshift
Deep Dive on Amazon RedshiftDeep Dive on Amazon Redshift
Deep Dive on Amazon Redshift
 
Activating Data as a Strategic Asset
Activating Data as a Strategic AssetActivating Data as a Strategic Asset
Activating Data as a Strategic Asset
 
AWS Data Collection & Storage
AWS Data Collection & StorageAWS Data Collection & Storage
AWS Data Collection & Storage
 
Introduction to Dremio
Introduction to DremioIntroduction to Dremio
Introduction to Dremio
 
楽天ネットワークエンジニアたちが目指す、次世代データセンターとは
楽天ネットワークエンジニアたちが目指す、次世代データセンターとは楽天ネットワークエンジニアたちが目指す、次世代データセンターとは
楽天ネットワークエンジニアたちが目指す、次世代データセンターとは
 
Cloud Data Warehousing presentation by Rogier Werschkull, including tips, bes...
Cloud Data Warehousing presentation by Rogier Werschkull, including tips, bes...Cloud Data Warehousing presentation by Rogier Werschkull, including tips, bes...
Cloud Data Warehousing presentation by Rogier Werschkull, including tips, bes...
 
Lakehouse in Azure
Lakehouse in AzureLakehouse in Azure
Lakehouse in Azure
 
BI and Dashboarding Best Practices
 BI and Dashboarding Best Practices BI and Dashboarding Best Practices
BI and Dashboarding Best Practices
 
Data Integration Alternatives: When to use Data Virtualization, ETL, and ESB
Data Integration Alternatives: When to use Data Virtualization, ETL, and ESBData Integration Alternatives: When to use Data Virtualization, ETL, and ESB
Data Integration Alternatives: When to use Data Virtualization, ETL, and ESB
 
SKOS and Linked Data
SKOS and Linked DataSKOS and Linked Data
SKOS and Linked Data
 
Azure Database Services for MySQL PostgreSQL and MariaDB
Azure Database Services for MySQL PostgreSQL and MariaDBAzure Database Services for MySQL PostgreSQL and MariaDB
Azure Database Services for MySQL PostgreSQL and MariaDB
 
Data Lake Overview
Data Lake OverviewData Lake Overview
Data Lake Overview
 

Destaque

iOS Ecosystem @ Fiera del Radioamatore Pordenone
iOS Ecosystem @ Fiera del Radioamatore PordenoneiOS Ecosystem @ Fiera del Radioamatore Pordenone
iOS Ecosystem @ Fiera del Radioamatore PordenoneKlaus Lanzarini
 
4-Horizon Product Portfolio: Build an Ambidextrous Innovation (AI) Ecosystem ...
4-Horizon Product Portfolio: Build an Ambidextrous Innovation (AI) Ecosystem ...4-Horizon Product Portfolio: Build an Ambidextrous Innovation (AI) Ecosystem ...
4-Horizon Product Portfolio: Build an Ambidextrous Innovation (AI) Ecosystem ...Rod King, Ph.D.
 
Apple Watch App Concepts
Apple Watch App ConceptsApple Watch App Concepts
Apple Watch App ConceptsJose Coronado
 
Threading in iOS / Cocoa Touch
Threading in iOS / Cocoa TouchThreading in iOS / Cocoa Touch
Threading in iOS / Cocoa Touchmobiledeveloperpl
 
How Apple Watch Will Change Human Behavior in 2015
How Apple Watch Will Change Human Behavior in 2015How Apple Watch Will Change Human Behavior in 2015
How Apple Watch Will Change Human Behavior in 2015IsobarUS
 
Memory Management on iOS
Memory Management on iOSMemory Management on iOS
Memory Management on iOSMake School
 
iOS Memory Management Basics
iOS Memory Management BasicsiOS Memory Management Basics
iOS Memory Management BasicsBilue
 
Multithreading and Parallelism on iOS [MobOS 2013]
 Multithreading and Parallelism on iOS [MobOS 2013] Multithreading and Parallelism on iOS [MobOS 2013]
Multithreading and Parallelism on iOS [MobOS 2013]Kuba Břečka
 
Apple iOS - A modern way to mobile operating system
Apple iOS - A modern way to mobile operating systemApple iOS - A modern way to mobile operating system
Apple iOS - A modern way to mobile operating systemDhruv Patel
 

Destaque (14)

iOS Ecosystem @ Fiera del Radioamatore Pordenone
iOS Ecosystem @ Fiera del Radioamatore PordenoneiOS Ecosystem @ Fiera del Radioamatore Pordenone
iOS Ecosystem @ Fiera del Radioamatore Pordenone
 
4-Horizon Product Portfolio: Build an Ambidextrous Innovation (AI) Ecosystem ...
4-Horizon Product Portfolio: Build an Ambidextrous Innovation (AI) Ecosystem ...4-Horizon Product Portfolio: Build an Ambidextrous Innovation (AI) Ecosystem ...
4-Horizon Product Portfolio: Build an Ambidextrous Innovation (AI) Ecosystem ...
 
How libraries can survive in the new media ecosystem - Spain
How libraries can survive in the new media ecosystem - SpainHow libraries can survive in the new media ecosystem - Spain
How libraries can survive in the new media ecosystem - Spain
 
Apple Watch App Concepts
Apple Watch App ConceptsApple Watch App Concepts
Apple Watch App Concepts
 
Threading in iOS / Cocoa Touch
Threading in iOS / Cocoa TouchThreading in iOS / Cocoa Touch
Threading in iOS / Cocoa Touch
 
How Apple Watch Will Change Human Behavior in 2015
How Apple Watch Will Change Human Behavior in 2015How Apple Watch Will Change Human Behavior in 2015
How Apple Watch Will Change Human Behavior in 2015
 
Memory Management on iOS
Memory Management on iOSMemory Management on iOS
Memory Management on iOS
 
iOS Memory Management
iOS Memory ManagementiOS Memory Management
iOS Memory Management
 
iOS Memory Management Basics
iOS Memory Management BasicsiOS Memory Management Basics
iOS Memory Management Basics
 
Multithreading and Parallelism on iOS [MobOS 2013]
 Multithreading and Parallelism on iOS [MobOS 2013] Multithreading and Parallelism on iOS [MobOS 2013]
Multithreading and Parallelism on iOS [MobOS 2013]
 
Apple iOS - A modern way to mobile operating system
Apple iOS - A modern way to mobile operating systemApple iOS - A modern way to mobile operating system
Apple iOS - A modern way to mobile operating system
 
Apple iOS
Apple iOSApple iOS
Apple iOS
 
iOS platform
iOS platformiOS platform
iOS platform
 
CPU Scheduling Algorithms
CPU Scheduling AlgorithmsCPU Scheduling Algorithms
CPU Scheduling Algorithms
 

Semelhante a iOS Ecosystem

Living with "Moore" & Designing the Ultimate SoC
Living with "Moore" & Designing the Ultimate SoCLiving with "Moore" & Designing the Ultimate SoC
Living with "Moore" & Designing the Ultimate SoCchiportal
 
An Introduction to Raspberry Pi
An Introduction to Raspberry PiAn Introduction to Raspberry Pi
An Introduction to Raspberry PiEric Andresen
 
Introduction to Raspberry Pi
Introduction to Raspberry PiIntroduction to Raspberry Pi
Introduction to Raspberry PiEric Andresen
 
Arduino, Open Source and The Internet of Things Landscape
Arduino, Open Source and The Internet of Things LandscapeArduino, Open Source and The Internet of Things Landscape
Arduino, Open Source and The Internet of Things LandscapeJustin Grammens
 
Building Scalable Cloud Tech for Mobile / Social Games
Building Scalable Cloud Tech for Mobile / Social GamesBuilding Scalable Cloud Tech for Mobile / Social Games
Building Scalable Cloud Tech for Mobile / Social GamesPaul Winterhalder
 
“Secure Password Managers” and “Military-Grade Encryption” on Smartphones: Oh...
“Secure Password Managers” and “Military-Grade Encryption” on Smartphones: Oh...“Secure Password Managers” and “Military-Grade Encryption” on Smartphones: Oh...
“Secure Password Managers” and “Military-Grade Encryption” on Smartphones: Oh...Andrey Belenko
 
CNUG - Getting started on IoT Devices & Solutions using Windows 10 & Microsof...
CNUG - Getting started on IoT Devices & Solutions using Windows 10 & Microsof...CNUG - Getting started on IoT Devices & Solutions using Windows 10 & Microsof...
CNUG - Getting started on IoT Devices & Solutions using Windows 10 & Microsof...Mayank Srivastava
 
PCTY 2012, How IBM does BYOD v. Martin Vittrup
PCTY 2012, How IBM does BYOD v. Martin VittrupPCTY 2012, How IBM does BYOD v. Martin Vittrup
PCTY 2012, How IBM does BYOD v. Martin VittrupIBM Danmark
 
Cross-platform tools for mobile application development
Cross-platform tools for mobile application developmentCross-platform tools for mobile application development
Cross-platform tools for mobile application developmentbertouttier
 
Raspberry pi 3
Raspberry pi 3Raspberry pi 3
Raspberry pi 3Vipin V
 
Raspberrypi best ppt
Raspberrypi best ppt Raspberrypi best ppt
Raspberrypi best ppt SOMRAJ GAUTAM
 
P ism(pen style personal networking gadget)
P ism(pen style personal networking gadget)P ism(pen style personal networking gadget)
P ism(pen style personal networking gadget)aparnasukumaar
 
Porting Tips: iOS to Android
Porting Tips: iOS to AndroidPorting Tips: iOS to Android
Porting Tips: iOS to Androidelhypnotoad
 
Unity: What does it take to port a browser title to mobiles
Unity: What does it take to port a browser title to mobilesUnity: What does it take to port a browser title to mobiles
Unity: What does it take to port a browser title to mobilesDevGAMM Conference
 
Ninja Blocks Introduction
Ninja Blocks IntroductionNinja Blocks Introduction
Ninja Blocks Introductionapgiorgi
 
Erlang, random numbers, and the security: London Erlang User Group Talk Slide...
Erlang, random numbers, and the security: London Erlang User Group Talk Slide...Erlang, random numbers, and the security: London Erlang User Group Talk Slide...
Erlang, random numbers, and the security: London Erlang User Group Talk Slide...Kenji Rikitake
 
Smart Bombs: Mobile Vulnerability and Exploitation
Smart Bombs: Mobile Vulnerability and ExploitationSmart Bombs: Mobile Vulnerability and Exploitation
Smart Bombs: Mobile Vulnerability and ExploitationSecureState
 

Semelhante a iOS Ecosystem (20)

NootApp
NootAppNootApp
NootApp
 
Living with "Moore" & Designing the Ultimate SoC
Living with "Moore" & Designing the Ultimate SoCLiving with "Moore" & Designing the Ultimate SoC
Living with "Moore" & Designing the Ultimate SoC
 
An Introduction to Raspberry Pi
An Introduction to Raspberry PiAn Introduction to Raspberry Pi
An Introduction to Raspberry Pi
 
Introduction to Raspberry Pi
Introduction to Raspberry PiIntroduction to Raspberry Pi
Introduction to Raspberry Pi
 
Arduino, Open Source and The Internet of Things Landscape
Arduino, Open Source and The Internet of Things LandscapeArduino, Open Source and The Internet of Things Landscape
Arduino, Open Source and The Internet of Things Landscape
 
Building Scalable Cloud Tech for Mobile / Social Games
Building Scalable Cloud Tech for Mobile / Social GamesBuilding Scalable Cloud Tech for Mobile / Social Games
Building Scalable Cloud Tech for Mobile / Social Games
 
“Secure Password Managers” and “Military-Grade Encryption” on Smartphones: Oh...
“Secure Password Managers” and “Military-Grade Encryption” on Smartphones: Oh...“Secure Password Managers” and “Military-Grade Encryption” on Smartphones: Oh...
“Secure Password Managers” and “Military-Grade Encryption” on Smartphones: Oh...
 
CNUG - Getting started on IoT Devices & Solutions using Windows 10 & Microsof...
CNUG - Getting started on IoT Devices & Solutions using Windows 10 & Microsof...CNUG - Getting started on IoT Devices & Solutions using Windows 10 & Microsof...
CNUG - Getting started on IoT Devices & Solutions using Windows 10 & Microsof...
 
PCTY 2012, How IBM does BYOD v. Martin Vittrup
PCTY 2012, How IBM does BYOD v. Martin VittrupPCTY 2012, How IBM does BYOD v. Martin Vittrup
PCTY 2012, How IBM does BYOD v. Martin Vittrup
 
Cross-platform tools for mobile application development
Cross-platform tools for mobile application developmentCross-platform tools for mobile application development
Cross-platform tools for mobile application development
 
Raspberry pi 3
Raspberry pi 3Raspberry pi 3
Raspberry pi 3
 
Raspberrypi best ppt
Raspberrypi best ppt Raspberrypi best ppt
Raspberrypi best ppt
 
P ism(pen style personal networking gadget)
P ism(pen style personal networking gadget)P ism(pen style personal networking gadget)
P ism(pen style personal networking gadget)
 
Android vs iOS
Android vs iOSAndroid vs iOS
Android vs iOS
 
Porting Tips: iOS to Android
Porting Tips: iOS to AndroidPorting Tips: iOS to Android
Porting Tips: iOS to Android
 
Unity: What does it take to port a browser title to mobiles
Unity: What does it take to port a browser title to mobilesUnity: What does it take to port a browser title to mobiles
Unity: What does it take to port a browser title to mobiles
 
Ninja Blocks Introduction
Ninja Blocks IntroductionNinja Blocks Introduction
Ninja Blocks Introduction
 
Erlang, random numbers, and the security: London Erlang User Group Talk Slide...
Erlang, random numbers, and the security: London Erlang User Group Talk Slide...Erlang, random numbers, and the security: London Erlang User Group Talk Slide...
Erlang, random numbers, and the security: London Erlang User Group Talk Slide...
 
Smart Bombs: Mobile Vulnerability and Exploitation
Smart Bombs: Mobile Vulnerability and ExploitationSmart Bombs: Mobile Vulnerability and Exploitation
Smart Bombs: Mobile Vulnerability and Exploitation
 
Mobile & Me
Mobile & MeMobile & Me
Mobile & Me
 

Último

Polkadot JAM Slides - Token2049 - By Dr. Gavin Wood
Polkadot JAM Slides - Token2049 - By Dr. Gavin WoodPolkadot JAM Slides - Token2049 - By Dr. Gavin Wood
Polkadot JAM Slides - Token2049 - By Dr. Gavin WoodJuan lago vázquez
 
Boost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdfBoost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdfsudhanshuwaghmare1
 
Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...apidays
 
Cyberprint. Dark Pink Apt Group [EN].pdf
Cyberprint. Dark Pink Apt Group [EN].pdfCyberprint. Dark Pink Apt Group [EN].pdf
Cyberprint. Dark Pink Apt Group [EN].pdfOverkill Security
 
DBX First Quarter 2024 Investor Presentation
DBX First Quarter 2024 Investor PresentationDBX First Quarter 2024 Investor Presentation
DBX First Quarter 2024 Investor PresentationDropbox
 
AXA XL - Insurer Innovation Award Americas 2024
AXA XL - Insurer Innovation Award Americas 2024AXA XL - Insurer Innovation Award Americas 2024
AXA XL - Insurer Innovation Award Americas 2024The Digital Insurer
 
Manulife - Insurer Transformation Award 2024
Manulife - Insurer Transformation Award 2024Manulife - Insurer Transformation Award 2024
Manulife - Insurer Transformation Award 2024The Digital Insurer
 
Apidays New York 2024 - APIs in 2030: The Risk of Technological Sleepwalk by ...
Apidays New York 2024 - APIs in 2030: The Risk of Technological Sleepwalk by ...Apidays New York 2024 - APIs in 2030: The Risk of Technological Sleepwalk by ...
Apidays New York 2024 - APIs in 2030: The Risk of Technological Sleepwalk by ...apidays
 
TrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data DiscoveryTrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data DiscoveryTrustArc
 
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...DianaGray10
 
2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...Martijn de Jong
 
Artificial Intelligence Chap.5 : Uncertainty
Artificial Intelligence Chap.5 : UncertaintyArtificial Intelligence Chap.5 : Uncertainty
Artificial Intelligence Chap.5 : UncertaintyKhushali Kathiriya
 
Ransomware_Q4_2023. The report. [EN].pdf
Ransomware_Q4_2023. The report. [EN].pdfRansomware_Q4_2023. The report. [EN].pdf
Ransomware_Q4_2023. The report. [EN].pdfOverkill Security
 
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers:  A Deep Dive into Serverless Spatial Data and FMECloud Frontiers:  A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FMESafe Software
 
Why Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire businessWhy Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire businesspanagenda
 
Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...
Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...
Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...Jeffrey Haguewood
 
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost SavingRepurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost SavingEdi Saputra
 
Navigating the Deluge_ Dubai Floods and the Resilience of Dubai International...
Navigating the Deluge_ Dubai Floods and the Resilience of Dubai International...Navigating the Deluge_ Dubai Floods and the Resilience of Dubai International...
Navigating the Deluge_ Dubai Floods and the Resilience of Dubai International...Orbitshub
 
MINDCTI Revenue Release Quarter One 2024
MINDCTI Revenue Release Quarter One 2024MINDCTI Revenue Release Quarter One 2024
MINDCTI Revenue Release Quarter One 2024MIND CTI
 
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot TakeoffStrategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoffsammart93
 

Último (20)

Polkadot JAM Slides - Token2049 - By Dr. Gavin Wood
Polkadot JAM Slides - Token2049 - By Dr. Gavin WoodPolkadot JAM Slides - Token2049 - By Dr. Gavin Wood
Polkadot JAM Slides - Token2049 - By Dr. Gavin Wood
 
Boost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdfBoost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdf
 
Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...
 
Cyberprint. Dark Pink Apt Group [EN].pdf
Cyberprint. Dark Pink Apt Group [EN].pdfCyberprint. Dark Pink Apt Group [EN].pdf
Cyberprint. Dark Pink Apt Group [EN].pdf
 
DBX First Quarter 2024 Investor Presentation
DBX First Quarter 2024 Investor PresentationDBX First Quarter 2024 Investor Presentation
DBX First Quarter 2024 Investor Presentation
 
AXA XL - Insurer Innovation Award Americas 2024
AXA XL - Insurer Innovation Award Americas 2024AXA XL - Insurer Innovation Award Americas 2024
AXA XL - Insurer Innovation Award Americas 2024
 
Manulife - Insurer Transformation Award 2024
Manulife - Insurer Transformation Award 2024Manulife - Insurer Transformation Award 2024
Manulife - Insurer Transformation Award 2024
 
Apidays New York 2024 - APIs in 2030: The Risk of Technological Sleepwalk by ...
Apidays New York 2024 - APIs in 2030: The Risk of Technological Sleepwalk by ...Apidays New York 2024 - APIs in 2030: The Risk of Technological Sleepwalk by ...
Apidays New York 2024 - APIs in 2030: The Risk of Technological Sleepwalk by ...
 
TrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data DiscoveryTrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
 
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
 
2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...
 
Artificial Intelligence Chap.5 : Uncertainty
Artificial Intelligence Chap.5 : UncertaintyArtificial Intelligence Chap.5 : Uncertainty
Artificial Intelligence Chap.5 : Uncertainty
 
Ransomware_Q4_2023. The report. [EN].pdf
Ransomware_Q4_2023. The report. [EN].pdfRansomware_Q4_2023. The report. [EN].pdf
Ransomware_Q4_2023. The report. [EN].pdf
 
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers:  A Deep Dive into Serverless Spatial Data and FMECloud Frontiers:  A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
 
Why Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire businessWhy Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire business
 
Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...
Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...
Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...
 
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost SavingRepurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
 
Navigating the Deluge_ Dubai Floods and the Resilience of Dubai International...
Navigating the Deluge_ Dubai Floods and the Resilience of Dubai International...Navigating the Deluge_ Dubai Floods and the Resilience of Dubai International...
Navigating the Deluge_ Dubai Floods and the Resilience of Dubai International...
 
MINDCTI Revenue Release Quarter One 2024
MINDCTI Revenue Release Quarter One 2024MINDCTI Revenue Release Quarter One 2024
MINDCTI Revenue Release Quarter One 2024
 
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot TakeoffStrategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
 

iOS Ecosystem

  • 1. iOS Ecosystem Matteo Battaglio Pragma Night @ Talent Garden 1 giovedì 28 marzo 13 1
  • 2. Why iOS? 2 Pragma Night giovedì 28 marzo 13 2
  • 3. Reason #1: Numbers The size of the mobile market is huge, and growing exponentially 3 Pragma Night giovedì 28 marzo 13 3
  • 4. Reason #1: Numbers Apple keeps holding a significant share of the market, with a positive outlook 4 Pragma Night giovedì 28 marzo 13 4
  • 5. Reason #2: Consistency • The iOS platform is highly consistent • Just 3 different device families (iPhone, iPad, iPod) • they target the high-end market • the minimum set of features and APIs available to all is well known 5 Pragma Night giovedì 28 marzo 13 5
  • 6. Reason #2: Consistency More than 80% of devices already run iOS 6 6 Pragma Night giovedì 28 marzo 13 6
  • 7. Reason #3: Environment Apple’s mission: create an environment around the user, not just sell products • 500+ milion iTunes accounts, with credit card • the iOS customer is much more willing to pay than other platforms’ customer 7 Pragma Night giovedì 28 marzo 13 7
  • 8. Reason #3: Environment • Apple’s highly-controlled environment limits unwanted phenomenons • piracy • fraudulent apps • crappy apps • Developers are less threatened than other platforms’ developers 8 Pragma Night giovedì 28 marzo 13 8
  • 9. Reason #4: Resources • iOS frameworks and APIs are of first-class quality • The documentation is structured and exhaustive • Lots of books, articles, videos and tutorials • High-quality developer community 9 Pragma Night giovedì 28 marzo 13 9
  • 10. Reason #4: Resources • Development tools by Apple • Xcode is a full featured IDE • Interface Builder is great for designing user interfaces • Debugger and profiler make it easy to find anomalies • iOS Simulator is super fast 10 Pragma Night giovedì 28 marzo 13 10
  • 11. Reason #5: Fun! • iOS devices are equipped with all sorts of sensors • their computational power is enough even for the more advanced tasks • always connected to the Internet There is no limit to the imagination! 11 Pragma Night giovedì 28 marzo 13 11
  • 12. Reason #5: Fun! Most popular app categories 1. Games ~ 140000 active apps @ $0.89 avg. 2. Education ~ 90000 active apps 3. Entertainment ~ 75000 active apps @ $1.56 avg. 4. Lifestyle ~ 70000 active apps 5. Books ~ 55000 active apps 12 Pragma Night giovedì 28 marzo 13 12
  • 13. Drawbacks • Not-so-cheap hardware • iOS-dedicated events almost absent • Dependance upon a single company and its decisions (non disclosure agreements, Xcode and SDK update policies, etc) 13 Pragma Night giovedì 28 marzo 13 13
  • 14. Hidden complexity • iPhone • iPad • iPod Just 3 different devices? 14 Pragma Night giovedì 28 marzo 13 14
  • 15. Devices iPhone 3GS iPod 4th iPad 2 iPhone 4 iPod 5th iPad 3 iPhone 4s iPad 4 iPhone 5 iPad Mini 15 Pragma Night giovedì 28 marzo 13 15
  • 16. Display iPhone 4 / 4S iPhone 5 iPhone 3GS iPod 4th gen iPod 5th gen 320x480 px 640x480 px 640x1136 px 116 ppi 326 ppi 332 ppi 16 Pragma Night giovedì 28 marzo 13 16
  • 17. Display iPad 1 / 2 iPad 3 / 4 iPad mini 1024x768 px 2048x1536 px 1024x768 px 132 dpi 264 dpi 162 dpi 17 Pragma Night giovedì 28 marzo 13 17
  • 18. Processor / RAM ARMv7 ARMv7s 1 GB iPad 3 iPhone 5 iPad 4 iPhone 4S 512 MB iPhone 4 iPad 2 iPod 5th iPhone 3Gs iPad 1 256 MB iPod 3rd iPod 4th 18 Pragma Night giovedì 28 marzo 13 18
  • 19. Device Specs • GSM Arena http://www.gsmarena.com/apple-phones-48.php • The iPhoneWiki http://theiphonewiki.com/wiki/ • iPhone Dev Wiki http://iphonedevwiki.net/index.php/Main_Page 19 Pragma Night giovedì 28 marzo 13 19
  • 20. Requirements 20 Pragma Night giovedì 28 marzo 13 20
  • 21. Phisical requirements • A Mac (iMac, Mac mini, MacBook family) • OS X (10.7+) • Xcode (4.0+) • An iOS device (not mandatory, but recommended) • The iOS Simulator can’t be used to simulate some features (e.g. push notifications, in-app purchases) 21 Pragma Night giovedì 28 marzo 13 21
  • 22. Skill requirements • Object Oriented Programming • C language • Objective-C language & iOS SDK • Apple guidelines • Provisioning procedures 22 Pragma Night giovedì 28 marzo 13 22
  • 23. Membership requirements • Apple ID (free) • Apple Developer Program (ADP) subscription 23 Pragma Night giovedì 28 marzo 13 23
  • 24. Apple Developer Program 24 Pragma Night giovedì 28 marzo 13 24
  • 25. Apple Developer Program Developer Programs Name Price Deployment iOS Developer $99/year App Store / 100 devices Program iOS Developer $299/year NO App Store / ∞ devices Enterprise Program iOS Developer free NO App Store / 200 people University Program 25 Pragma Night giovedì 28 marzo 13 25
  • 26. ADP Sections • Member Center • manage users • ADP subscription and renewal • iOS Provisioning Portal • development and distribution certificates • adding and removing devices • iTunes Connect • app submissions • tracking sales and trends • handling payments 26 Pragma Night giovedì 28 marzo 13 26
  • 27. Concepts • Certificate univocally identifies an actor • Device Devices must be enabled for testing • App ID Unique identifier for the app • Provisioning profile Asset which encloses the three concepts above 27 Pragma Night giovedì 28 marzo 13 27
  • 28. Certificates • Development Certificate Each person in the team has his own • Distribution Certificate There’s one for the whole company (or single developer) 28 Pragma Night giovedì 28 marzo 13 28
  • 29. Devices • Purpose devices are used during development and testing • Name + UDID Unique Device IDentifier, 40 char-long string e.g. 67a43b0925c7a8050ad788591ace81d1bda81bed • Limits 1. The ADP allows for a maximum of 100 devices 2. A device can’t be removed from the list until the next renewal of the subscription 29 Pragma Night giovedì 28 marzo 13 29
  • 30. App IDs • Bundle Identifier unique identifier for the app • Reverse domain name e.g. com.mycompany.BestAppEver • Wildcard character e.g. com.mycompany.* 30 Pragma Night giovedì 28 marzo 13 30
  • 31. Provisioning Profile • What is it? it’s a resource (a file) which bundles the App ID, the device list and the certificates of the developers of the team • What does it provide? it is bundled with the app and is used to authorize the execution of the app on the devices and its deployment and distribution • How long does it last? It is valid for one year, after which it must be renewed 31 Pragma Night giovedì 28 marzo 13 31
  • 32. Provisioning Profile • Development Provisioning Profile ‣ App ID ‣ (Development) certificate list ‣ Device list • Distribution Provisioning Profile ‣ Distribution method (App Store or AdHoc) ‣ App ID ‣ (Distribution) certificate ‣ Device list (only in case of AdHoc deployment) 32 Pragma Night giovedì 28 marzo 13 32
  • 33. Step by step ADP $$ Certificates MM Development Distribution O MCertificates Certificate MM Team Devices MM Customers Devices O M MM New APP App ID Provisioning M O M Xcode Install Build & sign giovedì 28 marzo 13 33
  • 34. SDK 34 Pragma Night giovedì 28 marzo 13 34
  • 35. iOS • Mobile operating system ARM architecture, multitasking, Cocoa Touch, multi-touch GUI • Kernel XNU (like MAC OS X) Originally developed by NeXT for the NeXTSTEP OS, it is a hybrid kernel combining Mach and BSD components, and an object-oriented API for drivers • Initially known as iPhone OS 35 Pragma Night giovedì 28 marzo 13 35
  • 36. Cocoa Touch frameworks UIKit 36 Pragma Night giovedì 28 marzo 13 36
  • 37. iOS SDK • Libraries and development tools • First release in March 2008 • Side by side with Xcode e Mac OS 37 Pragma Night giovedì 28 marzo 13 37
  • 38. Tools • Xcode The natural environment for app development • iOS Simulator The handy way of running and testing apps • Instruments The perfect tool for code analysis and profiling 38 Pragma Night giovedì 28 marzo 13 38
  • 39. Xcode • Integrated Development Environment • Objective-C / Objective-C++ / C++ / C • LLVM and GCC compilers and debuggers • Interface Builder • Source Control (Subversion / Git) • Apple’s developer documentation 39 Pragma Night giovedì 28 marzo 13 39
  • 40. Simulator • iPhone / iPhone Retina (3.5” / 4”) / iPad / iPad Retina • Gestures, Orientation change, Memory Warnings • GPS (iOS 5+ Simulator) • Apps: Safari, Photos, Contacts, Settings, Game Center, News Stand • Fast! (It’s x86 and runs x86 apps, no ARM emulation) 40 Pragma Night giovedì 28 marzo 13 40
  • 41. Instruments • Application performance analyzer and visualizer • Integrated with Xcode • Tracks user events, CPU activity, memory allocations, releases and leaks, file I/O, network activity, graphics and OpenGL 41 Pragma Night giovedì 28 marzo 13 41
  • 42. Resources 42 Pragma Night giovedì 28 marzo 13 42
  • 43. Resources • Events • Videos • Books 43 Pragma Night giovedì 28 marzo 13 43
  • 44. Events • Apple WWDC • Apple Tech Talk World Tour • NSConference • Pragma mark :) http://lanyrd.com/topics/ios/ 44 Pragma Night giovedì 28 marzo 13 44
  • 45. Videos • NSScreencast.com • WWDC 2010 / 2011 / 2012 (ADP members only) • iOS Development Videos (ADP members only) • Lynda.com • iDeveloper.tv • Udemy.com • University courses on iOS (published on iTunes U) 45 Pragma Night giovedì 28 marzo 13 45
  • 46. Books • Programming in Objective-C • Cocoa Design Patterns • Pro Multithreading and Memory Management for iOS and Mac OS X 46 Pragma Night giovedì 28 marzo 13 46
  • 47. Thank You! matteo.battaglio@pragmamark.org Pragma Night giovedì 28 marzo 13 47