Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
Versioning mobile apps and apis
Search
Sponsored
·
SiteGround - Reliable hosting with speed, security, and support you can count on.
→
Marek Kalnik
October 30, 2015
Technology
100
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
Versioning mobile apps and apis
Our internal workshop material
Marek Kalnik
October 30, 2015
More Decks by Marek Kalnik
See All by Marek Kalnik
Ma liste subjective des 10 développeurs à connaitre
marekkalnik
0
91
Le management LEAN
marekkalnik
0
79
Comment Ionic vous aide
marekkalnik
0
150
Pourquoi choisir Ionic ?
marekkalnik
0
290
Cordova vs. Steroids
marekkalnik
0
160
Arrêtons de parler de code de qualité, ce qu'il faut c'est du code agile !
marekkalnik
2
670
Code Agile - comment redéfinir la qualité
marekkalnik
2
200
Behat - retour d'expérience
marekkalnik
1
460
Write your jQuery in console
marekkalnik
0
190
Other Decks in Technology
See All in Technology
はじめてのWDM
miyukichi_ospf
1
140
型は壁、Rustでもバグを直すな、表現できなくせよ
nwiizo
13
2k
SRE Next 2026 何でも屋からの脱却
bto
0
500
Control Planeで育てるBtoB SaaSの認証基盤 - SRE NEXT 2026
pokohide
1
2.2k
人を動かすのは時間ではなく、納得感 〜新任EMが入社3ヶ月、組織を2回変えた話〜
kakehashi
PRO
3
200
End-to-Endで考える信頼性 —LINEアプリにおけるクライアント開発×SRE連携の実践
maruloop
4
3.9k
事業価値を⽣み出すSREへ SREが担うべき意思決定の5層
kenta_hi
2
3.3k
ボーイスカウトルールでメモリやスキルを改善しよう
azukiazusa1
1
170
AWS Blocks を触ってみた/first-tach-aws-blocks
fossamagna
2
160
知らん間に、回ってる
ming_ayami
0
390
実装だけじゃない! CCA-F取得エンジニアが教えるClaude Code開発プロセス活用術
diggymo
2
510
キャリアの中で本を作る / Making a Book During Your Career
ak1210
0
130
Featured
See All Featured
Side Projects
sachag
455
43k
Heart Work Chapter 1 - Part 1
lfama
PRO
8
36k
We Analyzed 250 Million AI Search Results: Here's What I Found
joshbly
1
1.5k
How to Align SEO within the Product Triangle To Get Buy-In & Support - #RIMC
aleyda
2
1.6k
Visualizing Your Data: Incorporating Mongo into Loggly Infrastructure
mongodb
49
10k
Google's AI Overviews - The New Search
badams
0
1.1k
実際に使うSQLの書き方 徹底解説 / pgcon21j-tutorial
soudai
PRO
201
75k
How to make the Groovebox
asonas
2
2.3k
StorybookのUI Testing Handbookを読んだ
zakiyama
31
6.8k
sira's awesome portfolio website redesign presentation
elsirapls
0
300
Site-Speed That Sticks
csswizardry
13
1.2k
Being A Developer After 40
akosma
91
590k
Transcript
VERSIONING MOBILE let your API and your APP evolve
SEMVER Given a version number MAJOR.MINOR.PATCH, increment the: MAJOR version
when you make incompatible API changes, MINOR version when you add functionality in a backwards-compatible manner, and PATCH version when you make backwards-compatible bug fixes.
THE APP versioning is not only about code
None
IN APP COMMUNICATION ➤ let the user know what version
he’s using, so he may communicate it to you ➤ show application version in the application itself (it may include build #)
KEEP VERSION NUMBER AUTOMATIC ➤ gulp-bump ➤ an after_prepare_hook (http://devgirl.org/2013/11/12/three-hooks-
your-cordovaphonegap-project-needs/): var version = require(__dirname + ‘../../package.json’).version ➤ gulp-git ➤ add a git tag with -a (demo time)
HOW TO HANDLE VERSIONS ➤ call URL’s with /{version_number} ?
HTTP GET: https://api.bamlab.fr/v2/hello ➤ add api-version header HTTP GET: https://api.bamlab.fr/hello api-version: 2 ➤ add Accept header HTTP GET: https://api.bamlab.fr/hello Accept: application/vnd.bamlab.v2+json
THE BACK it’s all about contract
INTEGRATE THE VERSIONING IN ROUTING ➤ http://restify.com/#versionned-routes ➤ http://www.slideshare.net/shakefon/hapidays-2014/9? src=clipshare
➤ http://www.slideshare.net/shakefon/hapidays-2014/18? src=clipshare ➤ https://github.com/felipeleusin/hapi-negotiator
NOTIFY OLD VERSIONS ➤ send a DEPRECATED header and expose
a /version route ➤ send a 410 GONE response if you are removing a ressource 410 GONE AND IT WON’T BE COMING BACK
VERSION YOUR DATA MODEL ➤ think about metadata ➤ add
meta_version_number ➤ add a transformer to transform the model before exposing it to either version