RestKit Revisited
-
Upload
axel-roest -
Category
Technology
-
view
795 -
download
6
description
Transcript of RestKit Revisited
Restkit Revisited RESTing beyond the samples
Axel Roest • @axello
zondag, 22 september 2013
self
zondag, 22 september 2013
self
zondag, 22 september 2013
WHY?
zondag, 22 september 2013
WHY?
communicating with backend
zondag, 22 september 2013
WHY?
communicating with backend
but JSON is easy!
zondag, 22 september 2013
WHY?
communicating with backend
but JSON is easy![NSJSONSer
ialization JSONObjec
tWithData:responseDa
ta]
zondag, 22 september 2013
WHY?
communicating with backend
but JSON is easy!
error checking
zondag, 22 september 2013
WHY?
communicating with backend
but JSON is easy!
error checking
easy mapping to CoreData
zondag, 22 september 2013
WHY?
communicating with backend
but JSON is easy!
error checking
easy mapping to CoreData
zondag, 22 september 2013
WHY?
communicating with backend
but JSON is easy!
error checking
easy mapping to CoreData
xml & json agnostic
zondag, 22 september 2013
Why this talk?
started with RestKit 0.10 last year
RestKit in the real world
Examples sucked
zondag, 22 september 2013
Typical Example
simple JSON feed of one type
load objects from feed
zondag, 22 september 2013
Example setup
Create:
Custom Class
RKObjectManager (singleton)
RKObjectMapping
Fetch objects
zondag, 22 september 2013
Real-World
multiple different json feeds
post multiple compound json objects
different responses (data, error)
restkit 0.10 objectmanager couldn’t cope
zondag, 22 september 2013
Solution 0.10
use separate
RKObjectLoader
RKObjectMappingProvider
zondag, 22 september 2013
RestKit 0.20
based on AFNetworking framework
cleaner object mapping
more blocks, less delegates
zondag, 22 september 2013
Flow 0.20
based on NSOperation:
RKObjectRequestOperation
RKResponseMapperOperation
RKObjectMappingOperation
zondag, 22 september 2013
Flow setupAFHTTPClient
RKObjectManager (singleton)
RKObjectMapping(s)
(RKRelationshipMapping)
RKResponseDescriptor
[[RKObjectManager sharedManager] getObjectsAtPath]
zondag, 22 september 2013
Two Basic Flowstoplevel based
add response to RKObjectManager
fetch objects
fine-grained
add response to RKObjectRequest
RKObjectRequestOperation
zondag, 22 september 2013
Demo
zondag, 22 september 2013
Demo
Converting from RestKit 0.10 to 0.20 is a lot of work
zondag, 22 september 2013
Demo
Converting from RestKit 0.10 to 0.20 is a lot of work
RKGisthttps://github.com/RestKit/RKGist/
zondag, 22 september 2013
Gist Lister
https://api.github.com/gists/public
zondag, 22 september 2013
Gist Lister
https://api.github.com/gists/public
zondag, 22 september 2013
Code
zondag, 22 september 2013
Where
http://restkit.org
http://phlux.us
Axel Roest
@axello
zondag, 22 september 2013