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
Towards Pasta Code Nirvana: Using JavaScript MV...
Search
Bret Davidson
March 26, 2014
110
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
Towards Pasta Code Nirvana: Using JavaScript MV* to Fill Your Programming Ravioli
Bret Davidson
March 26, 2014
More Decks by Bret Davidson
See All by Bret Davidson
Beyond Open Source
bretdavidson
0
93
Suma: Utilizing emerging browser technology to develop an open-source space and service analytics system
bretdavidson
0
330
Better living with observational data: Using Suma to inform space and service planning
bretdavidson
0
300
My HuntLibrary: Building new things despite uncertainty and risk
bretdavidson
0
100
Creating the Hunt Partners App: Cross-Departmental Rapid Response
bretdavidson
0
91
The Suma Project: Integrating Observational Data Assessment Into Space And Service Design
bretdavidson
0
1.2k
Data-Driven Documents: Visualizing Library Data with D3.js
bretdavidson
3
510
Suma: An open-source toolkit for library assessment
bretdavidson
0
320
Under the Hood: Our UX-Driven Mobile Site Redesign
bretdavidson
0
72
Featured
See All Featured
Exploring the relationship between traditional SERPs and Gen AI search
raygrieselhuber
PRO
2
4.3k
Deep Space Network (abreviated)
tonyrice
0
300
svc-hook: hooking system calls on ARM64 by binary rewriting
retrage
2
560
Sam Torres - BigQuery for SEOs
techseoconnect
PRO
0
540
What does AI have to do with Human Rights?
axbom
PRO
1
2.4k
Performance Is Good for Brains [We Love Speed 2024]
tammyeverts
12
1.8k
Jamie Indigo - Trashchat’s Guide to Black Boxes: Technical SEO Tactics for LLMs
techseoconnect
PRO
0
660
JavaScript: Past, Present, and Future - NDC Porto 2020
reverentgeek
52
6.1k
Effective software design: The role of men in debugging patriarchy in IT @ Voxxed Days AMS
baasie
0
510
ラッコキーワード サービス紹介資料
rakko
1
4.8M
The untapped power of vector embeddings
frankvandijk
2
1.9k
The Mindset for Success: Future Career Progression
greggifford
PRO
0
490
Transcript
Towards Pasta Code Nirvana Using JavaScript MV* to Fill Your
Programming Ravioli Bret Davidson | NCSU Libraries
Metaphors for describing software architectures.
None
None
None
None
None
Modular Reusable Testable
None
Why JavaScript?
Brief History of JavaScript Created by Brendan Eich in 1995
IE support in 1996 Standardized by ECMA in 1997 JJG coins AJAX in 2005 V8 JS engine in 2008 JS MVC circa 2010
JS is everywhere
JS is fast(er)
JS is the lingua franca
What is JS MV*? MVC - MVP - MVVM
Approximate Architecture Models Views Controllers Data Binding
Hello Code4Lib! Change MSG Hello Code4Lib!
None
None
MV* Benefits Abstracts DOM interaction Encourages code reuse Enforces modularity
Improves testability
Architecture that supports best practices.
When to use? JS heavy applications Interactive applications Distributed applications
Modern devices/browsers
Who is using MV*? USA Today Rdio Hulu Discourse Youtube
on PS3 General Motors
When to avoid? Need to support no-JS users App is
document driven (blog) Older devices/browsers
Frameworks Angular Ember Backbone Many Others
MV* Throwdown http://todomvc.com/
My Experiences
Suma github.com/cazzerson/Suma
None
Community
Loose Coupling
Cognitive Load
None