CocoaHeads Paris

Jeudi 14 novembre 2013
Nicolas Lauquin
« Parse is the easiest way to get a backend up
and running for your mobile application »
Overview
Easy backend building & nice web interface
Push
Analytics
Social & authentification (Facebook connect, Twitter con...
Backend 1/3
Powerful Data Management
Data creation through Relational database or KVC
Backend 2/3
Advanced filtering
Backend 3/3
ACL (Classe level & Object level)
Data type :
String
Number
Boolean
Array
Object
Date
Bytes
File
Geoloc
Push 1/2
Easy integration through the SDK
Almost free
Segmenting
Filtering by plateform
Schedule (Pro)
Accessible through ...
Push 2/2
Parse iOS SDK
Installation
Add « Parse.framework" to your project
Add lib dependancies
Add : [Parse
setApplicationId:@"YOUR_APP_KEY"
cli...
Model 1/3
PFObject class
Saving objects

Saving Objects Offline
Model 2/3
Retrieving objects exemple

Arrays
Model 3/3
Delete
Counter
PFUser or PFRole, PFProduct
You manipulate object extending PFObject
Relationnal Data
one To Many...
Queries 1/2
Powerfull query system
Queries 2/2
queries with NSPredicates
containsAllObjectsInArray/notContainedIn
greatherThan/LessThan/lessThanOrEqualTo…
re...
Caching
query.cachePolicy property
6 caches configuration, including:
kPFCachePolicyCacheElseNetwork: 

The query first trie...
File
PFFile class
saveInBackgroundWithBlock:^(BOOL succeeded, NSError *error)
progressBlock:^(int percentDone)
getDataInBa...
Geopoints
PFGeoPoint class
[PFGeoPoint geoPointWithLatitude:37.7 longitude:-122.5];
Helpers:
geoPointWithLocation:(CLLocat...
Social & sign-in
Easy authentication with :
Facebook based on FB SDK
Twitter
Login/pwd
Helpers & feature on PFUser
User interface

Parse provides a few subclasses of UIViewController that make logging in/
signing up PFUsers, and displayi...
User interface 1/3
PFLogInViewController & PFSignUpViewController
User interface 2/3
PFQueryTableViewController
Pagination with a cell that can be tapped to
load the next page.
Pull-to-ref...
User interface 3/3
PFImageView
Cachine image in memory & disk
Pricing & performances
Basic plan - free

Pro plan - 199$/month

1 million request/month + 7¢ per 1,000 over

15 million r...
Pricing & performances
Transparent pricing
For which kind of project & company size ?
Bought by Facebook in april 2013
You...
Learn more
Much more to explore
Cloud Code & beforeSave/afterSave
Cloud Code modules (ParseImage, SendGrid,
Underscore…)
R...
CocoaHeads Paris

parse.com

Nicolas Lauquin
@nlauquin
nicolas@atelierdumobile.com
www.atelierdumobile.com
Parse par Nicolas Lauquin
Upcoming SlideShare
Loading in...5
×

Parse par Nicolas Lauquin

2,822

Published on

Published in: Technology
0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

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

No notes for slide

Parse par Nicolas Lauquin

  1. 1. CocoaHeads Paris
 Jeudi 14 novembre 2013 Nicolas Lauquin
  2. 2. « Parse is the easiest way to get a backend up and running for your mobile application »
  3. 3. Overview Easy backend building & nice web interface Push Analytics Social & authentification (Facebook connect, Twitter connect) Mail Hosting & Cloud code extension InApp Purchase Multi-plateforme SDK (iOS, OSX, Android, Unity…) REST
  4. 4. Backend 1/3 Powerful Data Management Data creation through Relational database or KVC
  5. 5. Backend 2/3 Advanced filtering
  6. 6. Backend 3/3 ACL (Classe level & Object level) Data type : String Number Boolean Array Object Date Bytes File Geoloc
  7. 7. Push 1/2 Easy integration through the SDK Almost free Segmenting Filtering by plateform Schedule (Pro) Accessible through REST API
  8. 8. Push 2/2
  9. 9. Parse iOS SDK
  10. 10. Installation Add « Parse.framework" to your project Add lib dependancies Add : [Parse setApplicationId:@"YOUR_APP_KEY" clientKey:@"YOUR_CLIENT_KEY"];
  11. 11. Model 1/3 PFObject class Saving objects Saving Objects Offline
  12. 12. Model 2/3 Retrieving objects exemple Arrays
  13. 13. Model 3/3 Delete Counter PFUser or PFRole, PFProduct You manipulate object extending PFObject Relationnal Data one To Many (@"parent") Many to Many (PFRelation object)
  14. 14. Queries 1/2 Powerfull query system
  15. 15. Queries 2/2 queries with NSPredicates containsAllObjectsInArray/notContainedIn greatherThan/LessThan/lessThanOrEqualTo… relationnal queries limit x result or skip x result ordering on multiple keys compound Queries : orQueryWithSubqueries
  16. 16. Caching query.cachePolicy property 6 caches configuration, including: kPFCachePolicyCacheElseNetwork: 
 The query first tries to load from the cache, but if that fails, it loads results from the network. If neither cache nor network succeed, there is a PFError. kPFCachePolicyCacheThenNetwork: 
 The query first loads from the cache, then loads from the network. In this case, the callback will actually be called twice - first with the cached results, then with the network results. Since it returns two results at different times, this cache policy cannot be used synchronously with findObjects.
  17. 17. File PFFile class saveInBackgroundWithBlock:^(BOOL succeeded, NSError *error) progressBlock:^(int percentDone) getDataInBackgroundWithBlock:^(BOOL succeeded, NSError *error) progressBlock:^(int percentDone)
  18. 18. Geopoints PFGeoPoint class [PFGeoPoint geoPointWithLatitude:37.7 longitude:-122.5]; Helpers: geoPointWithLocation:(CLLocation) geoPointForCurrentLocationInBackground:^(PFGeoPoint *geoPoint, NSError *error); Geo Queries: [query whereKey:@"location" nearGeoPoint:userGeoPoint]; whereKey:nearGeoPoint:withinKilometers
  19. 19. Social & sign-in Easy authentication with : Facebook based on FB SDK Twitter Login/pwd Helpers & feature on PFUser
  20. 20. User interface Parse provides a few subclasses of UIViewController that make logging in/ signing up PFUsers, and displaying PFObjects significantly easier.
  21. 21. User interface 1/3 PFLogInViewController & PFSignUpViewController
  22. 22. User interface 2/3 PFQueryTableViewController Pagination with a cell that can be tapped to load the next page. Pull-to-refresh table view header. Loading screen Offline message support PFTableViewCell for image listing
  23. 23. User interface 3/3 PFImageView Cachine image in memory & disk
  24. 24. Pricing & performances Basic plan - free Pro plan - 199$/month 1 million request/month + 7¢ per 1,000 over 15 million request/month + 5¢ per 1,000 over 1 million pushes/month + 7¢ per 1,000 over 5 million pushes/month + 5¢ per 1,000 over 20 request/second 40 request/second 1gb + 20¢ per 1GB over 10gb + 15¢ per 1GB over Custom domain name & mail branding Push mutliple certificate, push targeting, schedulin More app&push metrics Collaborators +1 background jobs
  25. 25. Pricing & performances Transparent pricing For which kind of project & company size ? Bought by Facebook in april 2013 Your data are free
  26. 26. Learn more Much more to explore Cloud Code & beforeSave/afterSave Cloud Code modules (ParseImage, SendGrid, Underscore…) Rest API Background job Great documentation Check tutorials https://www.parse.com/tutorials
  27. 27. CocoaHeads Paris
 parse.com Nicolas Lauquin @nlauquin nicolas@atelierdumobile.com www.atelierdumobile.com
  1. A particular slide catching your eye?

    Clipping is a handy way to collect important slides you want to go back to later.

×