helios - o backend mobile que você precisava
DESCRIPTION
Palestra do TDC SP 2014 na trilha de RubyTRANSCRIPT
![Page 1: Helios - o backend mobile que você precisava](https://reader034.vdocuments.pub/reader034/viewer/2022051817/547beacdb4af9fa0158b4fdf/html5/thumbnails/1.jpg)
Helioso backend pra Mobile que você precisava <3
![Page 2: Helios - o backend mobile que você precisava](https://reader034.vdocuments.pub/reader034/viewer/2022051817/547beacdb4af9fa0158b4fdf/html5/thumbnails/2.jpg)
Oi!
• Hanneli (‘H' mudo)
• CodeMiner 42
• Café, Pokémon, Lego e bichos <3
HIRING
![Page 3: Helios - o backend mobile que você precisava](https://reader034.vdocuments.pub/reader034/viewer/2022051817/547beacdb4af9fa0158b4fdf/html5/thumbnails/3.jpg)
Por que diabos mobile numa trilha de Ruby???!!111
Quantas pessoas olhando pro celular agora?
![Page 4: Helios - o backend mobile que você precisava](https://reader034.vdocuments.pub/reader034/viewer/2022051817/547beacdb4af9fa0158b4fdf/html5/thumbnails/4.jpg)
O que vamos ver aqui
• Um pouco sobre Mobile
• Preciso de backend? (discussão com exemplos reais!)
• Helios - a Saga!
• Arquitetura do Helios
• Helios e Heroku
• Sincronizando modelos
• Gifs e imagens legais!
![Page 5: Helios - o backend mobile que você precisava](https://reader034.vdocuments.pub/reader034/viewer/2022051817/547beacdb4af9fa0158b4fdf/html5/thumbnails/5.jpg)
O que *NÃO* vamos ver aqui
• Tutorial detalhado do Helios
• Tutorial de Heroku
• Discussão profunda de mobile (Trilha de iOS amanhã!!)
![Page 6: Helios - o backend mobile que você precisava](https://reader034.vdocuments.pub/reader034/viewer/2022051817/547beacdb4af9fa0158b4fdf/html5/thumbnails/6.jpg)
Mobile - vício?
Hey, sweet, do you have WhatsApp?
![Page 7: Helios - o backend mobile que você precisava](https://reader034.vdocuments.pub/reader034/viewer/2022051817/547beacdb4af9fa0158b4fdf/html5/thumbnails/7.jpg)
iPhone
![Page 8: Helios - o backend mobile que você precisava](https://reader034.vdocuments.pub/reader034/viewer/2022051817/547beacdb4af9fa0158b4fdf/html5/thumbnails/8.jpg)
iPhone
$
![Page 9: Helios - o backend mobile que você precisava](https://reader034.vdocuments.pub/reader034/viewer/2022051817/547beacdb4af9fa0158b4fdf/html5/thumbnails/9.jpg)
Desenvolver apps para iOS
Objective C
iOS
Xcode
SQLite
Foundation
C
C++
UIKit CoreGraphics
CoreServices
CoreLocation
ARC
![Page 10: Helios - o backend mobile que você precisava](https://reader034.vdocuments.pub/reader034/viewer/2022051817/547beacdb4af9fa0158b4fdf/html5/thumbnails/10.jpg)
Desenvolver apps para iOS
![Page 11: Helios - o backend mobile que você precisava](https://reader034.vdocuments.pub/reader034/viewer/2022051817/547beacdb4af9fa0158b4fdf/html5/thumbnails/11.jpg)
Apps de utilidade pública
Au <3
![Page 12: Helios - o backend mobile que você precisava](https://reader034.vdocuments.pub/reader034/viewer/2022051817/547beacdb4af9fa0158b4fdf/html5/thumbnails/12.jpg)
App para facilitar adoção e doação de animais
Cadastra animal
Protetor
Adotantes
Baixam o app e buscam pelos animais
![Page 13: Helios - o backend mobile que você precisava](https://reader034.vdocuments.pub/reader034/viewer/2022051817/547beacdb4af9fa0158b4fdf/html5/thumbnails/13.jpg)
App para facilitar adoção e doação de animais
Como faço o match dos animais/adotantes?Precisarão cadastrar pelo site das ONGs (Desktop)Vender itens dentro da app para arrecadar fundos
Notificar adotante quando um novo animal é cadastrado
![Page 14: Helios - o backend mobile que você precisava](https://reader034.vdocuments.pub/reader034/viewer/2022051817/547beacdb4af9fa0158b4fdf/html5/thumbnails/14.jpg)
Preciso de Backend!!Como faço o match dos animais/adotantes?
Precisarão cadastrar pelo site das ONGs (Desktop)
Vender itens dentro da app para arrecadar fundos
Notificar adotante quando um novo animal é cadastrado
R: No servidor
R: Sincronizar dados
R: In app purchase
R: Push notification
![Page 15: Helios - o backend mobile que você precisava](https://reader034.vdocuments.pub/reader034/viewer/2022051817/547beacdb4af9fa0158b4fdf/html5/thumbnails/15.jpg)
Qual linguagem vou fazer o server side?
![Page 16: Helios - o backend mobile que você precisava](https://reader034.vdocuments.pub/reader034/viewer/2022051817/547beacdb4af9fa0158b4fdf/html5/thumbnails/16.jpg)
Qual linguagem vou fazer o server side?
![Page 17: Helios - o backend mobile que você precisava](https://reader034.vdocuments.pub/reader034/viewer/2022051817/547beacdb4af9fa0158b4fdf/html5/thumbnails/17.jpg)
Helios!
![Page 18: Helios - o backend mobile que você precisava](https://reader034.vdocuments.pub/reader034/viewer/2022051817/547beacdb4af9fa0158b4fdf/html5/thumbnails/18.jpg)
Helios!
![Page 19: Helios - o backend mobile que você precisava](https://reader034.vdocuments.pub/reader034/viewer/2022051817/547beacdb4af9fa0158b4fdf/html5/thumbnails/19.jpg)
Helios!
• Data Sync
• Push Notifications
• In App Purchase
![Page 20: Helios - o backend mobile que você precisava](https://reader034.vdocuments.pub/reader034/viewer/2022051817/547beacdb4af9fa0158b4fdf/html5/thumbnails/20.jpg)
Helios!
Heroku app
gem install helios
helios new adote1amigo
helios server
http://localhost:5000/admin
![Page 21: Helios - o backend mobile que você precisava](https://reader034.vdocuments.pub/reader034/viewer/2022051817/547beacdb4af9fa0158b4fdf/html5/thumbnails/21.jpg)
Model
011001
![Page 22: Helios - o backend mobile que você precisava](https://reader034.vdocuments.pub/reader034/viewer/2022051817/547beacdb4af9fa0158b4fdf/html5/thumbnails/22.jpg)
application.rb
config.middleware.use Helios::Application do! service :data, model: 'path/to/DataModel.xcdatamodel'! service :push_notification ! service :in_app_purchase!end!
![Page 23: Helios - o backend mobile que você precisava](https://reader034.vdocuments.pub/reader034/viewer/2022051817/547beacdb4af9fa0158b4fdf/html5/thumbnails/23.jpg)
REST!!!REST model - from
CoreData
GET /dogs
GET /dog/2
PUT /dog/2
DELETE /dog/2
![Page 24: Helios - o backend mobile que você precisava](https://reader034.vdocuments.pub/reader034/viewer/2022051817/547beacdb4af9fa0158b4fdf/html5/thumbnails/24.jpg)
Push notifications
Orbiter framework Helios
!
!Rack PushNotification
Apple APNS
1. Register for PSN2. Receive
Token
3. App sends token
4. Notifies APNS when something happens
5. APNS Sends the
push
![Page 25: Helios - o backend mobile que você precisava](https://reader034.vdocuments.pub/reader034/viewer/2022051817/547beacdb4af9fa0158b4fdf/html5/thumbnails/25.jpg)
Push notifications
Orbiter framework Helios
!
!Rack PushNotification
Apple APNS
1. Register for PSN2. Receive
Token
3. App sends token
4. Notifies APNS when something happens
5. APNS Sends the
push
![Page 26: Helios - o backend mobile que você precisava](https://reader034.vdocuments.pub/reader034/viewer/2022051817/547beacdb4af9fa0158b4fdf/html5/thumbnails/26.jpg)
Open Source!
helios rack-push-notification
orbiter houston
AFNetworking
![Page 27: Helios - o backend mobile que você precisava](https://reader034.vdocuments.pub/reader034/viewer/2022051817/547beacdb4af9fa0158b4fdf/html5/thumbnails/27.jpg)
Preciso de backend?
![Page 28: Helios - o backend mobile que você precisava](https://reader034.vdocuments.pub/reader034/viewer/2022051817/547beacdb4af9fa0158b4fdf/html5/thumbnails/28.jpg)
Preciso de backend?
• Número de usuários
• Tipo de app
![Page 29: Helios - o backend mobile que você precisava](https://reader034.vdocuments.pub/reader034/viewer/2022051817/547beacdb4af9fa0158b4fdf/html5/thumbnails/29.jpg)
gems alternativas
• app_on_rails
• urban_airship
• push_core