iOS: Einstieg und Ausblick

50
iOS Eins(eg und Ausblick

description

iOS von Apple hat sich inzwischen schon zu einem ausgereiften mobilen Betriebssystem entwickelt. Trotzdem darf auch hier Apple nicht stehen bleiben. Diese Session gibt einen Einblick über den aktuellen Stand von iOS und zeigt die wichtigsten Konzepte.

Transcript of iOS: Einstieg und Ausblick

Page 1: iOS: Einstieg und Ausblick

iOS  Eins(eg  und  Ausblick  

Page 2: iOS: Einstieg und Ausblick

Wer  bin  ich?  

stefan.scheidt@opitz-­‐consul(ng.com  

@beezlebug  

Solu(on  Architect  

Page 3: iOS: Einstieg und Ausblick

© OPITZ CONSULTING GmbH 2011 Seite 3 <Präsentationstitel – bitte im Folienmaster ändern>

OPITZ CONSULTING Vorlage Powerpoint 2011; Version 1.3; 10.05.2011; TGA, KSH

1Pager •  Layout ausschließlich für den

1Pager •  Einsatz ist bei Konferenzen,

ext. Veranstaltungen etc. obligatorisch. Die Folie ist Folie 2 (nach der Titelfolie)

•  Der Inhalt darf nicht verändert werden.

•  Ausnahme: Der Block Märkte darf situativ um Partnerlogos (ORACLE, etc.) ergänzt werden

Märkte n Java n SOA n ORACLE n BI/DWH n Outtasking

Kunden n Branchen-

übergreifend n Über 600

Kunden

Leistungs- angebot n IT-Strategie n Beratung n Implementierung n Betrieb n Training

Fakten n Gründung 1990 n 400 Mitarbeiter n 8 Standorte in D/

PL

Industrie / Versorger / Telekommunikation

29%

Handel / Logistik / Dienstleistungen 29%

42% Öffentliche Auftraggeber /

Banken & Versicherungen / Vereine & Verbände

© OPITZ CONSULTING GmbH 2011

Page 4: iOS: Einstieg und Ausblick

Wer  sind  Sie?  

Page 5: iOS: Einstieg und Ausblick

Wie  alles  begann...  

Page 6: iOS: Einstieg und Ausblick

1985:  US-­‐Patent  281,686  

Page 7: iOS: Einstieg und Ausblick

1993:  Apple  Newton  MessagePad  

Page 8: iOS: Einstieg und Ausblick

????:  Prototyp  „touchscreen  phone  for  workplace“  

Page 9: iOS: Einstieg und Ausblick

200X:  Project  Purple  1  

Page 10: iOS: Einstieg und Ausblick

2007:  iPhone  

Page 11: iOS: Einstieg und Ausblick

Aktuelle  iOS-­‐Hardware  

Page 12: iOS: Einstieg und Ausblick

Aktuelle  iOS-­‐Hardware  

Page 13: iOS: Einstieg und Ausblick

Aktuelle  iOS-­‐Hardware  

Page 14: iOS: Einstieg und Ausblick

Aktuelle  iOS-­‐Hardware  

Page 15: iOS: Einstieg und Ausblick

Unterschiede  

Display:      480  x  360  (iPhone/iPod  touch)      960  x  640  (iPhone/iPod  touch  „v4“)  1024  x  768  (iPad)  

RAM:   128  bis  512  MB  

Flash:   4  bis  64  GB  

CPU:   ARM  412  GHz  bis  Apple  A5  Dualcore  1  GHz  

Gadgets:   UMTS/GPS,  Front-­‐Kamera  Kompass,  Gyroskop,  ...  

Page 16: iOS: Einstieg und Ausblick

iOS  

Unix

Darwin

Mac OS X

iOS

Page 17: iOS: Einstieg und Ausblick

Für  iOS  entwickeln  

Web-­‐Apps  

„verpackte“  Web-­‐Apps  (PhoneGap)  

„Crosspla]orm-­‐Tool-­‐Apps“  (Titanium  Mobile)  

„crosscompiled  Apps“  (XMLVM)    

 

„na(ve  Apps“  (iOS  SDK)    

Page 18: iOS: Einstieg und Ausblick

iOS  SDK  

2007:   Noch  kein  SDK  

Anfang  2008:   SDK  für  iPhone  OS  2.0  

Mi]e  2008:   App  Store  öffnet  

Mi]e  2009:   iOS  3  

Mi]e  2010:   iOS  4  

Page 19: iOS: Einstieg und Ausblick

iOS  SDK  

Cocoa  Touch  UIKit,  MapKit,  Event  Kit  UI,  Game  Kit,  iAd,  ...  

Media  Core  Graphics,  Core  Animabon,  Core  Text,  Open  GL  ES,  Core  Audio,  AV  Foundabon,  ...  

Core  Services  Core  Foundabon,  Foundabon,  CFNetwork,  Core  Data,  Core  Locabon,  Event  Kit,  ...  

Core  OS  C  

Objec(ve-­‐C  

Page 20: iOS: Einstieg und Ausblick

Objec(ve-­‐C  =  

C  +  Smalltalk  

C  ObjC  

Page 21: iOS: Einstieg und Ausblick

Eigenschaeen  von  Objec(v-­‐C  

objektorien(ert  basiert  auf  Message  Passing  

Dynamic  Binding  /  Dynamic  Typing  Introspec(on  

Einfach-­‐Vererbung  und  Protocols  Erweiterungen  durch  Categories  

Proper(es  (ab  2.0)  

Page 22: iOS: Einstieg und Ausblick

iOS  und  Memory  Management  

Objec(ve-­‐C  2.0  bietet  Garbage  Collec(on.  

 Aber  leider  nicht  für  iOS...  

 

 

Page 23: iOS: Einstieg und Ausblick

Memory  Management  ohne  Garbage  Collec(on?  

 Durch  Reference  Coun(ng:  

     

Page 24: iOS: Einstieg und Ausblick

Die  gute  Nachricht:    

Ab  iOS  5  gibt‘s  Automa(c  Reference  Coun(ng  

   

Page 25: iOS: Einstieg und Ausblick

#import  <Foundation/Foundation.h>    @interface  NewsItem  :  NSObject  {          NSString*  title;          NSString*  subtitle;          BOOL  unread;  }    @property  (copy)  NSString*  title;  @property  (copy)  NSString*  subtitle;  @property  (assign)  BOOL  unread;    -­‐  (id)initWithTitle:(NSString*)aTitle                  andSubtitle:(NSString*)aSubtitle;    @end  

NewsItem.h  

Page 26: iOS: Einstieg und Ausblick

#import  "NewsItem.h"    @implementation  NewsItem  @synthesize  title,  subtitle,  unread;    -­‐  (id)initWithTitle:(NSString  *)aTitle              andSubtitle:(NSString  *)aSubtitle  {          self  =  [super  init];          if  (self)  {                  title  =  [aTitle  copy];                  subtitle  =  [aSubtitle  copy];                  unread  =  YES;          }                  return  self;  }    ...  

NewsItem.m  

Page 27: iOS: Einstieg und Ausblick

...    -­‐  (void)dealloc  {          [title  release];          [subtitle  release];          [super  dealloc];  }    @end  

NewsItem.m  (cont.)  

Page 28: iOS: Einstieg und Ausblick

NewsItem*  i1  =  [[NewsItem  alloc]  initWithTitle:@"News  Item  1"                                                                    andSubtitle:@"Subtitle  1"];  NewsItem*  i2  =  [[NewsItem  alloc]  initWithTitle:@"News  Item  2"                                                                    andSubtitle:@"Subtitle  2"];  NSMutableArray*  items  =  [[NSMutableArray  alloc]                                                                  initWithObjects:  i1,  i2,  nil];  

News  Items  benutzen  

Page 29: iOS: Einstieg und Ausblick

Tooling  

Xcode  4  mit  Interface  Builder  

Instruments  

iOS  Simulator  

Page 30: iOS: Einstieg und Ausblick

iOS  Developer  Programm  

Apple  Developer   Kostenfrei  iOS  Developer  Program  Individual  „For  an  individual  developer  who  will  be  creabng  free  and  commercial  iOS  apps  for  distribubon  on  the  App  Store.“  

   $99  /  Jahr  

iOS  Developer  Program  Company  For  a  company  with  a  development  team  who  will  be  creabng  free  and  commercial  iOS  apps  for  distribubon  on  the  App  Store.  

   $99  /  Jahr  

iOS  Developer  Enterprise  Program  For  a  company  who  will  be  creabng  proprietary,  in-­‐house  iOS  apps.  

$299  /  Jahr  

iOS  Developer  University  Program  For  higher  educabon  insbtubons  looking  to  introduce  iOS  development  into  their  curriculum.  

Kostenfrei  

Page 31: iOS: Einstieg und Ausblick

Volume  Purchase  Program  

„Offer  Your  Apps  in  Volume“    

„Sell  and  Distribute  Custom  B2B  Apps  to  Business  Customers“  

 zur  Zeit  nur  für  „businesses  and  educa(on  

ins(tu(ons  in  the  United  States“  

Page 32: iOS: Einstieg und Ausblick

Provisioning  

App  verteilen  Ad  Hoc/App  Store  

Provisioning  Profile  erzeugen  Ad  Hoc/AppStore  

App-­‐ID  erzeugen  

Für  Beta-­‐Tests:  Geräte  mit  UDID  registrieren  

iOS  Development  Cer(ficate  besorgen  

Page 33: iOS: Einstieg und Ausblick

App  Store  Review...  

Page 34: iOS: Einstieg und Ausblick

Ausblick  -­‐  iCloud  

Page 35: iOS: Einstieg und Ausblick

Mehr  Wissen...  

Page 36: iOS: Einstieg und Ausblick

Online-­‐Dokumenta(on  

Page 37: iOS: Einstieg und Ausblick

Sample  Code  

Page 38: iOS: Einstieg und Ausblick

Online-­‐Ressourcen  

WWDC  Videos:    

hsp://developer.apple.com/videos/wwdc/2010/  hsp://developer.apple.com/videos/wwdc/2011/  

 

Page 39: iOS: Einstieg und Ausblick

Online-­‐Ressourcen  

Weblogs  (willkürliche  Auswahl):    

hsp://www.raywenderlich.com/tutorials  hsp://cocoawithlove.com/  

hsp://www.mikeash.com/pyblog/  hsp://www.cimgf.com/  

 

Page 40: iOS: Einstieg und Ausblick

Bücher  

Page 41: iOS: Einstieg und Ausblick

Bücher  

Page 42: iOS: Einstieg und Ausblick

Bücher  

Page 43: iOS: Einstieg und Ausblick

Bücher  

Page 44: iOS: Einstieg und Ausblick

Bücher  

Page 45: iOS: Einstieg und Ausblick

Bücher  

Page 46: iOS: Einstieg und Ausblick

Quellen  

Wie  alles  begann  h]p://mobile-­‐review.com/arbcles/2010/iphone-­‐history1-­‐en.shtml  h]p://mobile-­‐review.com/arbcles/2010/iphone-­‐history2-­‐en.shtml  h]p://mobile-­‐review.com/arbcles/2010/iphone-­‐history3-­‐en.shtml  

h]p://en.wikipedia.org/wiki/MessagePad  h]p://en.wikipedia.org/wiki/History_of_the_iPhone  

 Hardware-­‐Spezifika(onen  

h]p://en.wikipedia.org/wiki/IPod_Touch#Specificabons  h]p://en.wikipedia.org/wiki/IPhone#Model_comparison  h]p://en.wikipedia.org/wiki/IPad#Technical_specificabons  

 

Page 47: iOS: Einstieg und Ausblick

Quellen  

iOS  SDK  h]p://en.wikipedia.org/wiki/IOS_(Apple)  

h]p://en.wikipedia.org/wiki/IOS_version_history  h]p://en.wikipedia.org/wiki/App_Store_(iOS)  

 Reference  Coun(ng  

h]p://cocoadevcentral.com/d/learn_objecbvec/      

Page 48: iOS: Einstieg und Ausblick

Quellen  

Volume  Purchase  Program  h]ps://developer.apple.com/appstore/resources/volume/  

 App  Store  Review  

h]p://developer.apple.com/appstore/guidelines.html  h]p://reviewbmes.shinydevelopment.com/  

 iCloud  

h]ps://developer.apple.com/icloud/index.php    

Page 49: iOS: Einstieg und Ausblick

Inspec(on  by  Anoto  AB,  h]p://www.flickr.com/photos/anotogroup/3465589650  

 library  porn  

by  Swiv,  h]p://www.flickr.com/photos/swiv/5719738832/  

Page 50: iOS: Einstieg und Ausblick

Vielen  Dank  für  Ihr  Interesse!  

 stefan.scheidt@opitz-­‐consul(ng.com  

@beezlebug