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
Large Scale JS Engines
Search
Thanos Polychronakis
March 04, 2011
Programming
0
31
Large Scale JS Engines
A presentation back from 2011, be gentle
Thanos Polychronakis
March 04, 2011
Tweet
Share
More Decks by Thanos Polychronakis
See All by Thanos Polychronakis
Why Logging is Important
thanpolas
0
110
Intro to WebRTC
thanpolas
1
82
Classical Inheritance in Javascript
thanpolas
0
340
Testing Node.js Applications
thanpolas
1
130
Top Tier Remote
thanpolas
6
2.5k
Desktop apps with Electron
thanpolas
2
320
Error Handling in Javascript and Node.js
thanpolas
2
120
Classical Inheritance in Javascript
thanpolas
0
350
Getting Serious with remote
thanpolas
2
550
Other Decks in Programming
See All in Programming
Boos Performance and Developer Productivity with Jakarta EE 11
ivargrimstad
0
630
Ça bouge du côté des animations CSS !
goetter
2
160
Learning Kotlin with detekt
inouehi
1
200
Duke on CRaC with Jakarta EE
ivargrimstad
0
160
コミュニティ駆動 AWS CDK ライブラリ「Open Constructs Library」 / community-cdk-library
gotok365
2
260
Rails 1.0 のコードで学ぶ find_by* と method_missing の仕組み / Learn how find_by_* and method_missing work in Rails 1.0 code
maimux2x
1
260
ソフトウェアエンジニアの成長
masuda220
PRO
12
2.2k
Honoをフロントエンドで使う 3つのやり方
yusukebe
7
3.6k
⚪⚪の⚪⚪をSwiftUIで再現す る
u503
0
120
自力でTTSモデルを作った話
zgock999
0
120
Better Code Design in PHP
afilina
0
180
読まないコードリーディング術
hisaju
0
120
Featured
See All Featured
Git: the NoSQL Database
bkeepers
PRO
428
65k
Thoughts on Productivity
jonyablonski
69
4.5k
Performance Is Good for Brains [We Love Speed 2024]
tammyeverts
7
660
JavaScript: Past, Present, and Future - NDC Porto 2020
reverentgeek
47
5.2k
GitHub's CSS Performance
jonrohan
1030
460k
Fireside Chat
paigeccino
35
3.2k
A Philosophy of Restraint
colly
203
16k
Designing Dashboards & Data Visualisations in Web Apps
destraynor
231
53k
Testing 201, or: Great Expectations
jmmastey
42
7.2k
Reflections from 52 weeks, 52 projects
jeffersonlam
348
20k
Gamification - CAS2011
davidbonilla
80
5.2k
How to Think Like a Performance Engineer
csswizardry
22
1.4k
Transcript
LARGE SCALE JS ENGINES @THANPOLAS BUILDING A LARGE SCALE JS
ENGINE
LARGE SCALE JS ENGINES @THANPOLAS WHAT IS A LARGE SCALE
JS ENGINE? • Implements our API • One page load • It’s a framework
LARGE SCALE JS ENGINES @THANPOLAS CHALLENGES BUILDING LSJSE • Name
spacing • Templating • Facilities • Data Objects Handling • Source Tree • “Compiling”
LARGE SCALE JS ENGINES @THANPOLAS GOOGLE CLOSURE LIBRARY Not Another
Framework Closure library is a LANGUAGE ENHANCER
LARGE SCALE JS ENGINES @THANPOLAS WHAT IS CLOSURE LIBRARY? Components
• Core Library • Compiler • Templating System • Closure Linter • Server agnostic • UI / UX / DOM • Cross-browser • Very Light! Highlights
LARGE SCALE JS ENGINES @THANPOLAS LSJSE ARCHITECTURE Name Space Properly
Do yourself a favor web.user.signup.ui.start = function(){};
LARGE SCALE JS ENGINES @THANPOLAS LSJSE ARCHITECTURE Shortcut Assign Variables
web.user.signup.ui.start = function() { var ui = web.user.signup.ui;
LARGE SCALE JS ENGINES @THANPOLAS LSJSE ARCHITECTURE Separate Core API
From UI/UX Keep it platform agnostic core.user.register(params);
LARGE SCALE JS ENGINES @THANPOLAS LSJSE ARCHITECTURE Abstract Abstract Abstract
Create your framework core.analytics.logPageView(‘/contacts’);
LARGE SCALE JS ENGINES @THANPOLAS LSJSE CONS • Steep Learning
Curve • Long Implementation Time • Slow Initial Page Load • Not SEO Friendly
LARGE SCALE JS ENGINES @THANPOLAS LSJSE PROS • Can Reuse
In Multiple Platforms • With Node.js Reuse Server Side • Faster / Better UX • Smaller Server Load
LARGE SCALE JS ENGINES @THANPOLAS THANK YOU. contact Thanasis Polychronakis
Founder geowarp.com Twitter @thanpolas