Introduction to iOS Development Offline Class Jasakomer (Special iOS), April 15, 2012                                     ...
about me
ID-ObjectiveCPresidentThe first & largest iOS & OSXdeveloper community in Indonesia
4 years in a row
2011 - now
start a company & code for food9 years in mobile development
a movie freak
iOS Devices
Start developing iOS apps Today!                                   21
http://developer.apple.com/ios
Xcode   iOS Simulator   iOS Developer Library
Required Stuffs
Latest iOS SDK
Installing Tools                   27
Optional Stuffs
Actual iOS devices
For debugging to device & deployment to AppStore
Some development stuffs
Objective-CC + OOP ≠ C++
A superset of C:                          Objective-C Advantages:•   Syntactical convention for defining   •   Dynamic typ...
Classes & Objects
Methods & Messaging   [aMutableArray insertObject:anObject atIndex:0];[[self aMutableArray] insertObject:anObject atIndex:...
Blocksint result = myBlock(4);
Protocols & CategoriesProtocol == Interface in other OOP language (Java, C#)@interface NowPlayingController :UIViewControl...
More details:http://bit.ly/AF8EiJ
Design Pattern
Model-View-Controller design pattern
NowPlayingControllerNowPlaying                                    NowPlayingView   Model-View-Controller design pattern
Memory Management       Reference countingNo garbage collector support (yet)        Autorelease Pool
iOS frameworks
Enable apps to store user documents          and key value data          Push changes to all user’s computers          and...
Easily integrate Tweet SheetAccess system-wide Twitter accountfrom within appWrap OAuth request & response
Memory management becomes                      compiler’s job                      No need to deal with retain & release  ...
Layout the app’s workflow & design             user interfaces             Specify transitions & segues between           ...
Image processing framework finally            comes to iOS            Provides built-in filters: color effect,            ...
Take advantage of the latest hardwareGLKit: new high-level frameworkApple-developed OpenGL ES extensions
Cocoa TouchFoundation, UIKit, Multi-Touch Gestures
GraphicsCore Graphics, Core Animation, Core Image, Core Text, OpenGL ES
CoreDataDatabase, Object-Relational Mapping, optimized for mobile - > 1 million objects store
Audio & VideoMedia player, Core Audio & OpenAL, iPod library, HTTP Live Streaming
NetworkingBonjour, Peer to peer, WebKit framework, BSD socket
Core Location & MapKit
MultitaskingNew kind of multitasking
External display support
AirPrintWireless printing to AirPrint-enabled printers. Hack available
Push & Local Notification
Game CenterSocial gaming platform
iAdIntegrated advertising platform
In-App PurchasePayment inside applications
Human Interface Design
GUI Elementshttp://www.teehanlax.com/downloads/iOS_5_GUI_iPhone4S.psd.zip
Storyboard
The app will look like these
App Store Submission
Finally, on the App Store
you app can use this badge!
Everything is here: http://developer.apple.com/ios
https://developer.apple.com/library/ios/#referencelibrary/GettingStarted/RoadMapiOS/Introduction/Introduction.html
Let’s see some code
DYCODE IS HIRING!
If you think you’reawesome, either mobiledeveloper guru or stillearly learner, send yourawesome CV to:hrd@dycode.com
iOS Development - Offline Class for Jasakomer
iOS Development - Offline Class for Jasakomer
iOS Development - Offline Class for Jasakomer
iOS Development - Offline Class for Jasakomer
iOS Development - Offline Class for Jasakomer
Upcoming SlideShare
Loading in …5
×

iOS Development - Offline Class for Jasakomer

996 views

Published on

A slide I presented yesterday on Offline Class of Jasakom - one of a biggest hacker community in Indonesia.
This slide is quite similar with my previous slides of the same topic, but with more and updated content.

Published in: Technology, Art & Photos
1 Comment
2 Likes
Statistics
Notes
  • Beginning iOS 5 Games Development: Using the iOS SDK for iPad, iPhone and iPod touch http://febook.info/books/beginning-ios-5-games-development-using-the-ios-sdk-for-ipad-iphone-and-ipod-touch
       Reply 
    Are you sure you want to  Yes  No
    Your message goes here
No Downloads
Views
Total views
996
On SlideShare
0
From Embeds
0
Number of Embeds
4
Actions
Shares
0
Downloads
48
Comments
1
Likes
2
Embeds 0
No embeds

No notes for slide

iOS Development - Offline Class for Jasakomer

  1. 1. Introduction to iOS Development Offline Class Jasakomer (Special iOS), April 15, 2012 Andri Yadi President, ID-ObjC | CEO, DyCode @andri_yadi | a (at) dycode (dot) com http://andriyadi.me
  2. 2. about me
  3. 3. ID-ObjectiveCPresidentThe first & largest iOS & OSXdeveloper community in Indonesia
  4. 4. 4 years in a row
  5. 5. 2011 - now
  6. 6. start a company & code for food9 years in mobile development
  7. 7. a movie freak
  8. 8. iOS Devices
  9. 9. Start developing iOS apps Today! 21
  10. 10. http://developer.apple.com/ios
  11. 11. Xcode iOS Simulator iOS Developer Library
  12. 12. Required Stuffs
  13. 13. Latest iOS SDK
  14. 14. Installing Tools 27
  15. 15. Optional Stuffs
  16. 16. Actual iOS devices
  17. 17. For debugging to device & deployment to AppStore
  18. 18. Some development stuffs
  19. 19. Objective-CC + OOP ≠ C++
  20. 20. A superset of C: Objective-C Advantages:• Syntactical convention for defining • Dynamic typing: classes & method enables to determine the class of an object• Syntax for method invocation at runtime• Syntax for declaring & synthesizing • Dynamic binding: properties allows to determine the method to call at• Static & dynamic typing runtime instead of at compile-time• Blocks • Dynamic loading:• Extension: protocol & categories allows to add modules of code & other resources at runtime.
  21. 21. Classes & Objects
  22. 22. Methods & Messaging [aMutableArray insertObject:anObject atIndex:0];[[self aMutableArray] insertObject:anObject atIndex:0]; [self.aMutableArray insertObject:anObject atIndex:0];
  23. 23. Blocksint result = myBlock(4);
  24. 24. Protocols & CategoriesProtocol == Interface in other OOP language (Java, C#)@interface NowPlayingController :UIViewController<UIScrollViewDelegate, ProfileViewDelegate> {}@end@protocol ProfileViewDelegate- (void)profileView:(ProfileView *)profileView doSignInWith:(AuthProviderType)signInType sender:(id)sender;@optional- (void)profileView:(ProfileView *)profileView doSignOut:(id)sender;@endCategory, enables to extend a class without subclassing it@interface NSDate (Additions)+ (NSDate *)dateFromTimeString:(NSString*)timeString;+ (NSDate *)dateWithJSONString:(NSString *)json;- (NSDate *)dateByAddingDays:(NSInteger)numDays;- (NSDate *)dateByAddingHours:(NSInteger)numHours;@end
  25. 25. More details:http://bit.ly/AF8EiJ
  26. 26. Design Pattern
  27. 27. Model-View-Controller design pattern
  28. 28. NowPlayingControllerNowPlaying NowPlayingView Model-View-Controller design pattern
  29. 29. Memory Management Reference countingNo garbage collector support (yet) Autorelease Pool
  30. 30. iOS frameworks
  31. 31. Enable apps to store user documents and key value data Push changes to all user’s computers and devicesStorage
  32. 32. Easily integrate Tweet SheetAccess system-wide Twitter accountfrom within appWrap OAuth request & response
  33. 33. Memory management becomes compiler’s job No need to deal with retain & release by yourself Manually enabled in Xcode It’s NOT a garbage collector!Automatic Reference Counting (ARC)
  34. 34. Layout the app’s workflow & design user interfaces Specify transitions & segues between views Can be loaded dynamicallyStoryboard
  35. 35. Image processing framework finally comes to iOS Provides built-in filters: color effect, distortions, transitions Advanced features: red-eye reduction, face recognitionCoreImage
  36. 36. Take advantage of the latest hardwareGLKit: new high-level frameworkApple-developed OpenGL ES extensions
  37. 37. Cocoa TouchFoundation, UIKit, Multi-Touch Gestures
  38. 38. GraphicsCore Graphics, Core Animation, Core Image, Core Text, OpenGL ES
  39. 39. CoreDataDatabase, Object-Relational Mapping, optimized for mobile - > 1 million objects store
  40. 40. Audio & VideoMedia player, Core Audio & OpenAL, iPod library, HTTP Live Streaming
  41. 41. NetworkingBonjour, Peer to peer, WebKit framework, BSD socket
  42. 42. Core Location & MapKit
  43. 43. MultitaskingNew kind of multitasking
  44. 44. External display support
  45. 45. AirPrintWireless printing to AirPrint-enabled printers. Hack available
  46. 46. Push & Local Notification
  47. 47. Game CenterSocial gaming platform
  48. 48. iAdIntegrated advertising platform
  49. 49. In-App PurchasePayment inside applications
  50. 50. Human Interface Design
  51. 51. GUI Elementshttp://www.teehanlax.com/downloads/iOS_5_GUI_iPhone4S.psd.zip
  52. 52. Storyboard
  53. 53. The app will look like these
  54. 54. App Store Submission
  55. 55. Finally, on the App Store
  56. 56. you app can use this badge!
  57. 57. Everything is here: http://developer.apple.com/ios
  58. 58. https://developer.apple.com/library/ios/#referencelibrary/GettingStarted/RoadMapiOS/Introduction/Introduction.html
  59. 59. Let’s see some code
  60. 60. DYCODE IS HIRING!
  61. 61. If you think you’reawesome, either mobiledeveloper guru or stillearly learner, send yourawesome CV to:hrd@dycode.com

×