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
45
0
Share
Large Scale JS Engines
A presentation back from 2011, be gentle
Thanos Polychronakis
March 04, 2011
More Decks by Thanos Polychronakis
See All by Thanos Polychronakis
Why Logging is Important
thanpolas
0
170
Intro to WebRTC
thanpolas
1
140
Classical Inheritance in Javascript
thanpolas
0
400
Testing Node.js Applications
thanpolas
1
170
Top Tier Remote
thanpolas
6
2.6k
Desktop apps with Electron
thanpolas
2
370
Error Handling in Javascript and Node.js
thanpolas
2
160
Classical Inheritance in Javascript
thanpolas
0
440
Getting Serious with remote
thanpolas
2
620
Other Decks in Programming
See All in Programming
[RubyKaigi 2026] Require Hooks
palkan
1
210
NakouPAY説明用
annouim0
0
240
AI時代のPhpStorm最新事情 #phpcon_odawara
yusuke
0
190
事業会社でのセキュリティ長期インターンについて
masachikaura
0
250
GoogleCloudとterraform完全に理解した
terisuke
1
110
一度始めたらやめられない開発効率向上術 / Findy あなたのdotfilesを教えて!
k0kubun
4
3k
〜バイブコーディングを超えて〜 チームで実験し続けたAI駆動開発
tigertora7571
0
130
「話せることがない」を乗り越える 〜日常業務から登壇テーマをつくる思考法〜
shoheimitani
4
830
Kingdom of the Machine
yui_knk
2
400
의존성 주입과 모듈화
fornewid
0
150
Liberating Ruby's Parser from Lexer Hacks
ydah
2
1.5k
PDI: Como Alavancar Sua Carreira e Seu Negócio
marcelgsantos
0
120
Featured
See All Featured
Put a Button on it: Removing Barriers to Going Fast.
kastner
60
4.2k
Git: the NoSQL Database
bkeepers
PRO
432
67k
Java REST API Framework Comparison - PWX 2021
mraible
34
9.3k
The Director’s Chair: Orchestrating AI for Truly Effective Learning
tmiket
1
150
Lightning talk: Run Django tests with GitHub Actions
sabderemane
0
170
Paper Plane
katiecoart
PRO
1
49k
Bootstrapping a Software Product
garrettdimon
PRO
307
120k
Why You Should Never Use an ORM
jnunemaker
PRO
61
9.8k
Google's AI Overviews - The New Search
badams
0
980
Public Speaking Without Barfing On Your Shoes - THAT 2023
reverentgeek
1
380
The Success of Rails: Ensuring Growth for the Next 100 Years
eileencodes
47
8.1k
Visualization
eitanlees
150
17k
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