Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Sign up for free
Menu
Search
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Pricing
Search
Sign in
Sign up for free
Backbone.js in a real life application
Search
Sponsored
·
Ship Features Fearlessly
Turn features on and off without deploys. Used by thousands of Ruby developers.
→
Sebastiano Armeli
December 14, 2011
Programming
140
1
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
Backbone.js in a real life application
Talk give at MelbJS, Melbourne - December 2011
Sebastiano Armeli
December 14, 2011
More Decks by Sebastiano Armeli
See All by Sebastiano Armeli
Cultivate Excellence In Engineering Teams through Continuous Software Engineering
sebarmeli
1
230
From Strategy Definition to Execution with OKRs and Roadmap
sebarmeli
0
250
From Mission to Strategy: going over OKRs and Roadmap
sebarmeli
0
320
Managing a software engineering team
sebarmeli
1
670
Enforcing coding standards in a JS project
sebarmeli
0
630
Enforcing Coding Standards
sebarmeli
1
140
ES6: The future is now
sebarmeli
2
530
EcmaScript 6 - the future is here
sebarmeli
5
7.7k
Dependency management and Package management in JavaScript
sebarmeli
0
810
Other Decks in Programming
See All in Programming
そのリトライ、死んだコネクションを使い回していませんか ── GoのHTTPクライアントとHTTP/2を実プロダクト障害から学び直す
myus4a
0
150
巨大モノリシックアプリ モダン化大作戦
ktcryomm
1
1k
WebRTC映像をAirPlayに対応させる挑戦.pdf
monolithic_adam
0
280
モバイル交通系ICへのチャージ実例から考える、クロスプラットフォーム開発におけるiOS実機テスト設計とCI運用
yusuga
1
500
Heart of Swift Concurrency
koher
0
890
市販E-Readerを乗っ取れ 〜Embedded Swiftで電子ペーパーガジェットを制御する〜
trickart
0
190
一人だけ、Kiroが静止する日
hideg
0
120
Kiroで創り、AgentCoreで繋ぐ!AWSで実践する「AI-DLC」から「AIエージェント統合」までの最新地図
licux
4
700
仕様駆動開発による爆速プロダクト開発 / Bakusoku Spec Driven Development
kobakei
0
120
Augmenting AI with the Power of Jakarta EE
ivargrimstad
0
170
App Storeの外へ──日本のiOSサイドローディング入門 for iOSDC Japan 2026
yuukiw00w
0
220
AI Agent時代のリアーキテクチャ戦略と実践
hokaccha
9
4.7k
Featured
See All Featured
Designing Dashboards & Data Visualisations in Web Apps
destraynor
232
55k
Performance Is Good for Brains [We Love Speed 2024]
tammyeverts
12
1.8k
個人開発の失敗を避けるイケてる考え方 / tips for indie hackers
panda_program
123
22k
Agile Leadership in an Agile Organization
kimpetersen
PRO
0
230
Ethics towards AI in product and experience design
skipperchong
2
380
KATA
mclloyd
PRO
35
15k
The Invisible Side of Design
smashingmag
301
52k
Bridging the Design Gap: How Collaborative Modelling removes blockers to flow between stakeholders and teams @FastFlow conf
baasie
0
700
[RailsConf 2023 Opening Keynote] The Magic of Rails
eileencodes
31
10k
DBのスキルで生き残る技術 - AI時代におけるテーブル設計の勘所
soudai
PRO
68
57k
Why You Should Never Use an ORM
jnunemaker
PRO
61
10k
The SEO identity crisis: Don't let AI make you average
varn
0
560
Transcript
Backbone.js in a real-life application Sebastiano Armeli-Battana @sebarmeli https://github.com/sebarmeli December
14 , 2011 MelbJS, Melbourne Monday, 3 June 13
JavaScript MVC Framework Model - View - Collections Lightweight RESTful
JSON Interface Backbone.js Monday, 3 June 13
AJAX applications Desktop-like applications State vs Page Hash tag /
pushState Single Page Application Monday, 3 June 13
Online Purchasing System https://web01.archicentre.com.au/websales/nrma High Responsive Data-driven Approach Events-oriented Monday,
3 June 13
Source code structure /js application.js models views controllers routers helpers
lib live Monday, 3 June 13
Source code structure /js application.js models views controllers routers helpers
lib live $(function){ AC.app_router = new AC.Routers.AppRouter(); Backbone.history.start({root: location.pathname}); }) Monday, 3 June 13
Router STATE ACTION Monday, 3 June 13
Router / index() FormPostcodeView STATE ACTION Monday, 3 June 13
Router / index() /#/postcode/xxxx FormPostcodeView selectRooms() FormRoomsView STATE ACTION Monday,
3 June 13
Router / index() /#/postcode/xxxx FormPostcodeView selectRooms() FormRoomsView extrasDetails() FormExtrasView STATE
ACTION /#/postcode/xxxx/product/yyy/rooms/zzz Monday, 3 June 13
FormPostcodeView FormPostcodeView PostcodeView Monday, 3 June 13
FormPostcodeView FormPostcodeModel PostcodeModel Monday, 3 June 13
FormRoomsView FormRoomsView PriceView(s) Monday, 3 June 13
FormRoomsView FormRoomsModel ProductQuotesCollection ProductQuoteModel ProductQuoteModel ProductQuoteModel ProductQuoteModel ProductQuoteModel ProductQuoteModel Monday,
3 June 13
FormExtrasView FormExtrasView ParameterBView ParameterBView ParameterBView ParameterNView QuotePriceView Monday, 3 June
13
FormExtrasView FormExtrasModel ProductQuote Model Parameter Parameter Parameter Parameter Monday, 3
June 13
Models Backbone.Model Key-value pairs fetch() / save() RESTful JSON API
Validation Monday, 3 June 13
Collections Backbone.Collection models attribute fetch() / save() url attribute parse()
Monday, 3 June 13
Views Backbone.View el / model / events attributes initialize() /
render() HTML templating ICanHaz.js Monday, 3 June 13
Testing Jasmine-jquery SinonJS Monday, 3 June 13
http://documentcloud.github.com/backbone/ http://www.ibm.com/developerworks/web/library/wa-backbonejs/index.html Resources Monday, 3 June 13