iOSEinstieg und Ausblick
Wer bin ich?stefan.scheidt@opitz-consulting.com          @stefanscheidt         Solution Architect
Märkte                   Kunden                                               Leistungs-             Fakten               ...
Wer sind Sie?
Wie alles begann ...
1985: US-Patent 281,686
1993: Apple Newton MessagePad
????: Prototyp „Touchscreen Phone for Workplace“
200X: Project Purple 1
2007: Das iPhone ...
Aktuelle iOS-Hardware
Aktuelle iOS-Hardware
Aktuelle iOS-Hardware
Aktuelle iOS-Hardware
UnterschiedeDisplay:    480 x 360 (iPhone/iPod touch)            960 x 640 (iPhone/iPod touch „v4“)           1024 x 768 (...
iOS  Unix DarwinMac OS X  iOS
Für iOS entwickeln                Web-Apps    „verpackte“ Web-Apps (PhoneGap)„Crossplatform-Tool-Apps“ (Titanium Mobile)  ...
iOS SDK2007:          Noch kein SDKAnfang 2008:   SDK für iPhone OS 2.0Mitte 2008:    App Store öffnetMitte 2009:    iOS 3...
iOS SDK              Cocoa TouchUIKit, MapKit, Event Kit UI, Game Kit, iAd, ...                  MediaCore Graphics, Core ...
Objective-C      =C + Smalltalk                    ObjC                C
Eigenschaften von Objectiv-C          objektorientiert    basiert auf Message Passing Dynamic Binding / Dynamic Typing    ...
iOS und Memory Management   Objective-C 2.0 bietet                                 Garbage Collection. Aber leider nicht ...
Memory Managementohne Garbage Collection?Durch Reference Counting:
Die gute Nachricht:      Ab iOS 5 gibt‘sAutomatic Reference Counting.             
Ein bisschen Objective-C Code ...
[NewsItem alloc]      News Items benutzen
[[NewsItem alloc] initWithTitle:@"News Item 1"                  andSubtitle:@"Subtitle 1"]       News Items benutzen
NewsItem* i1 = [[NewsItem alloc] initWithTitle:@"News Item 1"                                 andSubtitle:@"Subtitle 1"]; ...
NewsItem* i1 = [[NewsItem alloc] initWithTitle:@"News Item 1"                                 andSubtitle:@"Subtitle 1"];N...
NewsItem* i1 = [[NewsItem alloc] initWithTitle:@"News Item 1"                                 andSubtitle:@"Subtitle 1"];N...
NewsItem* i1 = [[NewsItem alloc] initWithTitle:@"News Item 1"                                 andSubtitle:@"Subtitle 1"];N...
NewsItem* i1 = [[NewsItem alloc] initWithTitle:@"News Item 1"                                 andSubtitle:@"Subtitle 1"];N...
#import <Foundation/Foundation.h>@interface NewsItem : NSObject@end                   NewsItem.h
#import <Foundation/Foundation.h>@interface NewsItem : NSObject{    NSString* title;    NSString* subtitle;    BOOL unread...
#import <Foundation/Foundation.h>@interface NewsItem : NSObject{    NSString* title;    NSString* subtitle;    BOOL unread...
#import <Foundation/Foundation.h>@interface NewsItem : NSObject@property (copy) NSString* title;@property (copy) NSString*...
#import "NewsItem.h"@implementation NewsItem...                   NewsItem.m
#import "NewsItem.h"@implementation NewsItem@synthesize title, subtitle, unread;...                   NewsItem.m
#import "NewsItem.h"@implementation NewsItem@synthesize title, subtitle, unread;- (id)initWithTitle:(NSString *)aTitle    ...
...- (void)dealloc {    [title release];    [subtitle release];    [super dealloc];}@end               NewsItem.m (cont.)
Tooling   Xcode 4 mit                InstrumentsInterface Builder      iOS Simulator
iOS Developer ProgrammApple Developer                                                      KostenfreiiOS Developer Program...
Volume Purchase Program      „Offer Your Apps in Volume“  „Sell and Distribute Custom B2B Apps          to Business Custom...
ProvisioningiOS Development Certificate besorgenFür Beta-Tests: Testgeräte registrieren          App-ID erzeugen    Provis...
App Store Review ...
Ausblick - iCloud
Ausblick - Siri
Mehr Wissen ...
Online-Dokumentation
Sample Code
Online-Ressourcen              WWDC Videos:http://developer.apple.com/videos/wwdc/2010/http://developer.apple.com/videos/w...
Online-Ressourcen  Weblogs (willkürliche Auswahl):http://www.raywenderlich.com/tutorials       http://cocoawithlove.com/  ...
Bücher
Bücher
Bücher
Bücher
Bücher
Bücher
Quellen                        Wie alles begannhttp://mobile-review.com/articles/2010/iphone-history1-en.shtmlhttp://mobil...
Quellen                     iOS SDK    http://en.wikipedia.org/wiki/IOS_(Apple)http://en.wikipedia.org/wiki/IOS_version_hi...
Quellen               Volume Purchase Programhttps://developer.apple.com/appstore/resources/volume/                    App...
Inspectionby Anoto AB, http://www.flickr.com/photos/anotogroup/3465589650                            library porn     by S...
Vielen Dank      für Ihr Interesse!stefan.scheidt@opitz-consulting.com           @stefanscheidt
Upcoming SlideShare
Loading in …5
×

ioS Einstieg und Ausblick - Mobile DevCon Hamburg 2011 - OPITZ CONSULTING - Stefan Scheidt -

1,812
-1

Published on

iOS von Apple hat sich inzwischen schon zu einem ausgereiften mobilen Betriebssystem entwickelt. Trotzdem darf Apple auch hier nicht stehen bleiben. Diese Session gibt einen Einblick über den aktuellen Stand von iOS und zeigt die wichtigsten Konzepte. OPITZ CONSULTING Solution Architect Stefan Scheidt präsentierte diesen Vortrag im Rahmen der Mobile DevCon am 19.10.2011 in Hamburg.

Published in: Technology, News & Politics
0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total Views
1,812
On Slideshare
0
From Embeds
0
Number of Embeds
2
Actions
Shares
0
Downloads
0
Comments
0
Likes
0
Embeds 0
No embeds

No notes for slide

ioS Einstieg und Ausblick - Mobile DevCon Hamburg 2011 - OPITZ CONSULTING - Stefan Scheidt -

  1. 1. iOSEinstieg und Ausblick
  2. 2. Wer bin ich?stefan.scheidt@opitz-consulting.com @stefanscheidt Solution Architect
  3. 3. Märkte Kunden Leistungs- Fakten angebotJava Branchen- IT-Strategie Gründung 1990SOA übergreifend Beratung 400 MitarbeiterORACLE Über 600 Implementierung 8 Standorte inBI/DWH Kunden Betrieb D/PLOuttasking Training Industrie / Versorger / Handel / Logistik / Telekommunikation Dienstleistungen 29% 29% 42% Öffentliche Auftraggeber / Banken & Versicherungen / Vereine & Verbände <Präsentationstitel – bitte im Folienmaster ändern> © OPITZ CONSULTING GmbH 2011 Seite 3
  4. 4. Wer sind Sie?
  5. 5. Wie alles begann ...
  6. 6. 1985: US-Patent 281,686
  7. 7. 1993: Apple Newton MessagePad
  8. 8. ????: Prototyp „Touchscreen Phone for Workplace“
  9. 9. 200X: Project Purple 1
  10. 10. 2007: Das iPhone ...
  11. 11. Aktuelle iOS-Hardware
  12. 12. Aktuelle iOS-Hardware
  13. 13. Aktuelle iOS-Hardware
  14. 14. Aktuelle iOS-Hardware
  15. 15. UnterschiedeDisplay: 480 x 360 (iPhone/iPod touch) 960 x 640 (iPhone/iPod touch „v4“) 1024 x 768 (iPad)RAM: 128 bis 512 MBFlash: 4 bis 64 GBCPU: ARM 412 GHz bis Apple A5 Dualcore 1 GHzGadgets: UMTS/GPS, Front-Kamera Kompass, Gyroskop, ...
  16. 16. iOS Unix DarwinMac OS X iOS
  17. 17. Für iOS entwickeln Web-Apps „verpackte“ Web-Apps (PhoneGap)„Crossplatform-Tool-Apps“ (Titanium Mobile) „crosscompiled Apps“ (XMLVM) ... „native Apps“ (iOS SDK)
  18. 18. iOS SDK2007: Noch kein SDKAnfang 2008: SDK für iPhone OS 2.0Mitte 2008: App Store öffnetMitte 2009: iOS 3Mitte 2010: iOS 4Herbst 2011: iOS 5
  19. 19. iOS SDK Cocoa TouchUIKit, MapKit, Event Kit UI, Game Kit, iAd, ... MediaCore Graphics, Core Animation, Core Text,Open GL ES, Core Audio, AV Foundation, ... Core ServicesCore Foundation, Foundation, CFNetwork, Core Data, Core Location, Event Kit, ... Core OS
  20. 20. Objective-C =C + Smalltalk ObjC C
  21. 21. Eigenschaften von Objectiv-C objektorientiert basiert auf Message Passing Dynamic Binding / Dynamic Typing Introspection Einfach-Vererbung und Protocols Erweiterungen durch Categories Properties Blocks (C)
  22. 22. iOS und Memory Management Objective-C 2.0 bietet  Garbage Collection. Aber leider nicht für iOS ... 
  23. 23. Memory Managementohne Garbage Collection?Durch Reference Counting:
  24. 24. Die gute Nachricht: Ab iOS 5 gibt‘sAutomatic Reference Counting. 
  25. 25. Ein bisschen Objective-C Code ...
  26. 26. [NewsItem alloc] News Items benutzen
  27. 27. [[NewsItem alloc] initWithTitle:@"News Item 1" andSubtitle:@"Subtitle 1"] News Items benutzen
  28. 28. NewsItem* i1 = [[NewsItem alloc] initWithTitle:@"News Item 1" andSubtitle:@"Subtitle 1"]; News Items benutzen
  29. 29. NewsItem* i1 = [[NewsItem alloc] initWithTitle:@"News Item 1" andSubtitle:@"Subtitle 1"];NewsItem* i2 = [[NewsItem alloc] initWithTitle:@"News Item 2" andSubtitle:@"Subtitle 2"]; News Items benutzen
  30. 30. NewsItem* i1 = [[NewsItem alloc] initWithTitle:@"News Item 1" andSubtitle:@"Subtitle 1"];NewsItem* i2 = [[NewsItem alloc] initWithTitle:@"News Item 2" andSubtitle:@"Subtitle 2"]; [NSMutableArray alloc] News Items benutzen
  31. 31. NewsItem* i1 = [[NewsItem alloc] initWithTitle:@"News Item 1" andSubtitle:@"Subtitle 1"];NewsItem* i2 = [[NewsItem alloc] initWithTitle:@"News Item 2" andSubtitle:@"Subtitle 2"]; [[NSMutableArray alloc] initWithObjects: i1, i2, nil] News Items benutzen
  32. 32. 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
  33. 33. #import <Foundation/Foundation.h>@interface NewsItem : NSObject@end NewsItem.h
  34. 34. #import <Foundation/Foundation.h>@interface NewsItem : NSObject{ NSString* title; NSString* subtitle; BOOL unread;}@end NewsItem.h
  35. 35. #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;@end NewsItem.h
  36. 36. #import <Foundation/Foundation.h>@interface NewsItem : NSObject@property (copy) NSString* title;@property (copy) NSString* subtitle;@property (assign) BOOL unread;- (id)initWithTitle:(NSString*)aTitle andSubtitle:(NSString*)aSubtitle;@end NewsItem.h
  37. 37. #import "NewsItem.h"@implementation NewsItem... NewsItem.m
  38. 38. #import "NewsItem.h"@implementation NewsItem@synthesize title, subtitle, unread;... NewsItem.m
  39. 39. #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
  40. 40. ...- (void)dealloc { [title release]; [subtitle release]; [super dealloc];}@end NewsItem.m (cont.)
  41. 41. Tooling Xcode 4 mit InstrumentsInterface Builder iOS Simulator
  42. 42. iOS Developer ProgrammApple Developer KostenfreiiOS Developer Program Individual $99 / Jahr„For an individual developer who will be creating free andcommercial iOS apps for distribution on the App Store.“iOS Developer Program Company $99 / JahrFor a company with a development team who will be creating freeand commercial iOS apps for distribution on the App Store.iOS Developer Enterprise Program $299 / JahrFor a company who will be creating proprietary, in-house iOS apps.iOS Developer University Program KostenfreiFor higher education institutions looking to introduce iOSdevelopment into their curriculum.
  43. 43. Volume Purchase Program „Offer Your Apps in Volume“ „Sell and Distribute Custom B2B Apps to Business Customers“Zur Zeit nur für „businesses and education institutions in the United States“
  44. 44. ProvisioningiOS Development Certificate besorgenFür Beta-Tests: Testgeräte registrieren App-ID erzeugen Provisioning Profile erzeugen App verteilen
  45. 45. App Store Review ...
  46. 46. Ausblick - iCloud
  47. 47. Ausblick - Siri
  48. 48. Mehr Wissen ...
  49. 49. Online-Dokumentation
  50. 50. Sample Code
  51. 51. Online-Ressourcen WWDC Videos:http://developer.apple.com/videos/wwdc/2010/http://developer.apple.com/videos/wwdc/2011/
  52. 52. Online-Ressourcen Weblogs (willkürliche Auswahl):http://www.raywenderlich.com/tutorials http://cocoawithlove.com/ http://www.mikeash.com/pyblog/ http://www.cimgf.com/
  53. 53. Bücher
  54. 54. Bücher
  55. 55. Bücher
  56. 56. Bücher
  57. 57. Bücher
  58. 58. Bücher
  59. 59. Quellen Wie alles begannhttp://mobile-review.com/articles/2010/iphone-history1-en.shtmlhttp://mobile-review.com/articles/2010/iphone-history2-en.shtmlhttp://mobile-review.com/articles/2010/iphone-history3-en.shtml http://en.wikipedia.org/wiki/MessagePad http://en.wikipedia.org/wiki/History_of_the_iPhone Hardware-Spezifikationen http://en.wikipedia.org/wiki/IPod_Touch#Specifications http://en.wikipedia.org/wiki/IPhone#Model_comparison http://en.wikipedia.org/wiki/IPad#Technical_specifications
  60. 60. Quellen iOS SDK http://en.wikipedia.org/wiki/IOS_(Apple)http://en.wikipedia.org/wiki/IOS_version_history http://en.wikipedia.org/wiki/App_Store_(iOS) Reference Countinghttp://cocoadevcentral.com/d/learn_objectivec/
  61. 61. Quellen Volume Purchase Programhttps://developer.apple.com/appstore/resources/volume/ App Store Review http://developer.apple.com/appstore/guidelines.html http://reviewtimes.shinydevelopment.com/ iCloud https://developer.apple.com/icloud/index.php
  62. 62. Inspectionby Anoto AB, http://www.flickr.com/photos/anotogroup/3465589650 library porn by Swiv, http://www.flickr.com/photos/swiv/5719738832/
  63. 63. Vielen Dank für Ihr Interesse!stefan.scheidt@opitz-consulting.com @stefanscheidt

×