![Page 1: Nas entranhas do WebKit e do V8 - The Developers Conference 2013 SP - TDC2013](https://reader033.vdocuments.us/reader033/viewer/2022051818/54b731e74a795912438b45a9/html5/thumbnails/1.jpg)
NAS ENTRANHAS DO
WEBKIT E DO V8ZAEDY SAYÃO @zaedysayao
![Page 2: Nas entranhas do WebKit e do V8 - The Developers Conference 2013 SP - TDC2013](https://reader033.vdocuments.us/reader033/viewer/2022051818/54b731e74a795912438b45a9/html5/thumbnails/2.jpg)
Zaedy Dantas Sayão@zaedysayao@javamanrj@javamanrj
@WORKS
http://about.me/zaedy
![Page 3: Nas entranhas do WebKit e do V8 - The Developers Conference 2013 SP - TDC2013](https://reader033.vdocuments.us/reader033/viewer/2022051818/54b731e74a795912438b45a9/html5/thumbnails/3.jpg)
![Page 4: Nas entranhas do WebKit e do V8 - The Developers Conference 2013 SP - TDC2013](https://reader033.vdocuments.us/reader033/viewer/2022051818/54b731e74a795912438b45a9/html5/thumbnails/4.jpg)
![Page 5: Nas entranhas do WebKit e do V8 - The Developers Conference 2013 SP - TDC2013](https://reader033.vdocuments.us/reader033/viewer/2022051818/54b731e74a795912438b45a9/html5/thumbnails/5.jpg)
BÁSICO
![Page 6: Nas entranhas do WebKit e do V8 - The Developers Conference 2013 SP - TDC2013](https://reader033.vdocuments.us/reader033/viewer/2022051818/54b731e74a795912438b45a9/html5/thumbnails/6.jpg)
![Page 7: Nas entranhas do WebKit e do V8 - The Developers Conference 2013 SP - TDC2013](https://reader033.vdocuments.us/reader033/viewer/2022051818/54b731e74a795912438b45a9/html5/thumbnails/7.jpg)
CONCEITO
![Page 8: Nas entranhas do WebKit e do V8 - The Developers Conference 2013 SP - TDC2013](https://reader033.vdocuments.us/reader033/viewer/2022051818/54b731e74a795912438b45a9/html5/thumbnails/8.jpg)
O QUE É?
![Page 9: Nas entranhas do WebKit e do V8 - The Developers Conference 2013 SP - TDC2013](https://reader033.vdocuments.us/reader033/viewer/2022051818/54b731e74a795912438b45a9/html5/thumbnails/9.jpg)
BROWSER
![Page 10: Nas entranhas do WebKit e do V8 - The Developers Conference 2013 SP - TDC2013](https://reader033.vdocuments.us/reader033/viewer/2022051818/54b731e74a795912438b45a9/html5/thumbnails/10.jpg)
![Page 11: Nas entranhas do WebKit e do V8 - The Developers Conference 2013 SP - TDC2013](https://reader033.vdocuments.us/reader033/viewer/2022051818/54b731e74a795912438b45a9/html5/thumbnails/11.jpg)
X
![Page 12: Nas entranhas do WebKit e do V8 - The Developers Conference 2013 SP - TDC2013](https://reader033.vdocuments.us/reader033/viewer/2022051818/54b731e74a795912438b45a9/html5/thumbnails/12.jpg)
USER INTERFACE
BROWSER ENGINE
RENDER ENGINE
NETWORK I/O
JAVASCRIPTENGINE
GRAPHICS STACK
![Page 13: Nas entranhas do WebKit e do V8 - The Developers Conference 2013 SP - TDC2013](https://reader033.vdocuments.us/reader033/viewer/2022051818/54b731e74a795912438b45a9/html5/thumbnails/13.jpg)
USER INTERFACE
BROWSER ENGINE
RENDER ENGINE
NETWORK I/O
JAVASCRIPTENGINE
GRAPHICS STACK
WEBKIT
![Page 14: Nas entranhas do WebKit e do V8 - The Developers Conference 2013 SP - TDC2013](https://reader033.vdocuments.us/reader033/viewer/2022051818/54b731e74a795912438b45a9/html5/thumbnails/14.jpg)
WEBKITNÃO É UM BROWSER
![Page 15: Nas entranhas do WebKit e do V8 - The Developers Conference 2013 SP - TDC2013](https://reader033.vdocuments.us/reader033/viewer/2022051818/54b731e74a795912438b45a9/html5/thumbnails/15.jpg)
WEBKIT
⊑
![Page 16: Nas entranhas do WebKit e do V8 - The Developers Conference 2013 SP - TDC2013](https://reader033.vdocuments.us/reader033/viewer/2022051818/54b731e74a795912438b45a9/html5/thumbnails/16.jpg)
BROWSERENGINE
![Page 17: Nas entranhas do WebKit e do V8 - The Developers Conference 2013 SP - TDC2013](https://reader033.vdocuments.us/reader033/viewer/2022051818/54b731e74a795912438b45a9/html5/thumbnails/17.jpg)
RENDERENGINE
![Page 18: Nas entranhas do WebKit e do V8 - The Developers Conference 2013 SP - TDC2013](https://reader033.vdocuments.us/reader033/viewer/2022051818/54b731e74a795912438b45a9/html5/thumbnails/18.jpg)
ENGINE?
![Page 19: Nas entranhas do WebKit e do V8 - The Developers Conference 2013 SP - TDC2013](https://reader033.vdocuments.us/reader033/viewer/2022051818/54b731e74a795912438b45a9/html5/thumbnails/19.jpg)
CONJUNTO DE LIBS
CÓDIGO
![Page 20: Nas entranhas do WebKit e do V8 - The Developers Conference 2013 SP - TDC2013](https://reader033.vdocuments.us/reader033/viewer/2022051818/54b731e74a795912438b45a9/html5/thumbnails/20.jpg)
FAZ O QUE?
![Page 21: Nas entranhas do WebKit e do V8 - The Developers Conference 2013 SP - TDC2013](https://reader033.vdocuments.us/reader033/viewer/2022051818/54b731e74a795912438b45a9/html5/thumbnails/21.jpg)
![Page 22: Nas entranhas do WebKit e do V8 - The Developers Conference 2013 SP - TDC2013](https://reader033.vdocuments.us/reader033/viewer/2022051818/54b731e74a795912438b45a9/html5/thumbnails/22.jpg)
CÓDIGO
![Page 23: Nas entranhas do WebKit e do V8 - The Developers Conference 2013 SP - TDC2013](https://reader033.vdocuments.us/reader033/viewer/2022051818/54b731e74a795912438b45a9/html5/thumbnails/23.jpg)
CÓDIGO
![Page 24: Nas entranhas do WebKit e do V8 - The Developers Conference 2013 SP - TDC2013](https://reader033.vdocuments.us/reader033/viewer/2022051818/54b731e74a795912438b45a9/html5/thumbnails/24.jpg)
CÓDIGO
![Page 25: Nas entranhas do WebKit e do V8 - The Developers Conference 2013 SP - TDC2013](https://reader033.vdocuments.us/reader033/viewer/2022051818/54b731e74a795912438b45a9/html5/thumbnails/25.jpg)
CÓDIGO
![Page 26: Nas entranhas do WebKit e do V8 - The Developers Conference 2013 SP - TDC2013](https://reader033.vdocuments.us/reader033/viewer/2022051818/54b731e74a795912438b45a9/html5/thumbnails/26.jpg)
CÓDIGO
42
![Page 27: Nas entranhas do WebKit e do V8 - The Developers Conference 2013 SP - TDC2013](https://reader033.vdocuments.us/reader033/viewer/2022051818/54b731e74a795912438b45a9/html5/thumbnails/27.jpg)
CÓDIGO
![Page 28: Nas entranhas do WebKit e do V8 - The Developers Conference 2013 SP - TDC2013](https://reader033.vdocuments.us/reader033/viewer/2022051818/54b731e74a795912438b45a9/html5/thumbnails/28.jpg)
CÓDIGO
HTMLCSSJS
SVG
![Page 29: Nas entranhas do WebKit e do V8 - The Developers Conference 2013 SP - TDC2013](https://reader033.vdocuments.us/reader033/viewer/2022051818/54b731e74a795912438b45a9/html5/thumbnails/29.jpg)
CÓDIGO
PAINT
HTMLCSSJS
SVG
![Page 30: Nas entranhas do WebKit e do V8 - The Developers Conference 2013 SP - TDC2013](https://reader033.vdocuments.us/reader033/viewer/2022051818/54b731e74a795912438b45a9/html5/thumbnails/30.jpg)
CÓDIGO
PAINT
HTMLCSSJS
SVG
LAYOUT
![Page 31: Nas entranhas do WebKit e do V8 - The Developers Conference 2013 SP - TDC2013](https://reader033.vdocuments.us/reader033/viewer/2022051818/54b731e74a795912438b45a9/html5/thumbnails/31.jpg)
![Page 32: Nas entranhas do WebKit e do V8 - The Developers Conference 2013 SP - TDC2013](https://reader033.vdocuments.us/reader033/viewer/2022051818/54b731e74a795912438b45a9/html5/thumbnails/32.jpg)
![Page 33: Nas entranhas do WebKit e do V8 - The Developers Conference 2013 SP - TDC2013](https://reader033.vdocuments.us/reader033/viewer/2022051818/54b731e74a795912438b45a9/html5/thumbnails/33.jpg)
PAST
![Page 34: Nas entranhas do WebKit e do V8 - The Developers Conference 2013 SP - TDC2013](https://reader033.vdocuments.us/reader033/viewer/2022051818/54b731e74a795912438b45a9/html5/thumbnails/34.jpg)
HISTÓRIA
![Page 35: Nas entranhas do WebKit e do V8 - The Developers Conference 2013 SP - TDC2013](https://reader033.vdocuments.us/reader033/viewer/2022051818/54b731e74a795912438b45a9/html5/thumbnails/35.jpg)
2001
![Page 36: Nas entranhas do WebKit e do V8 - The Developers Conference 2013 SP - TDC2013](https://reader033.vdocuments.us/reader033/viewer/2022051818/54b731e74a795912438b45a9/html5/thumbnails/36.jpg)
KHTML
![Page 37: Nas entranhas do WebKit e do V8 - The Developers Conference 2013 SP - TDC2013](https://reader033.vdocuments.us/reader033/viewer/2022051818/54b731e74a795912438b45a9/html5/thumbnails/37.jpg)
2005
![Page 38: Nas entranhas do WebKit e do V8 - The Developers Conference 2013 SP - TDC2013](https://reader033.vdocuments.us/reader033/viewer/2022051818/54b731e74a795912438b45a9/html5/thumbnails/38.jpg)
![Page 39: Nas entranhas do WebKit e do V8 - The Developers Conference 2013 SP - TDC2013](https://reader033.vdocuments.us/reader033/viewer/2022051818/54b731e74a795912438b45a9/html5/thumbnails/39.jpg)
CONTRIBUTOR
![Page 40: Nas entranhas do WebKit e do V8 - The Developers Conference 2013 SP - TDC2013](https://reader033.vdocuments.us/reader033/viewer/2022051818/54b731e74a795912438b45a9/html5/thumbnails/40.jpg)
CONTRIBUTOR
![Page 41: Nas entranhas do WebKit e do V8 - The Developers Conference 2013 SP - TDC2013](https://reader033.vdocuments.us/reader033/viewer/2022051818/54b731e74a795912438b45a9/html5/thumbnails/41.jpg)
CONTRIBUTOR
COMMITER
![Page 42: Nas entranhas do WebKit e do V8 - The Developers Conference 2013 SP - TDC2013](https://reader033.vdocuments.us/reader033/viewer/2022051818/54b731e74a795912438b45a9/html5/thumbnails/42.jpg)
CONTRIBUTOR
COMMITER
![Page 43: Nas entranhas do WebKit e do V8 - The Developers Conference 2013 SP - TDC2013](https://reader033.vdocuments.us/reader033/viewer/2022051818/54b731e74a795912438b45a9/html5/thumbnails/43.jpg)
CONTRIBUTOR
COMMITER
REVIEWER
![Page 44: Nas entranhas do WebKit e do V8 - The Developers Conference 2013 SP - TDC2013](https://reader033.vdocuments.us/reader033/viewer/2022051818/54b731e74a795912438b45a9/html5/thumbnails/44.jpg)
APPLE ENVIA
CONTA SVN
![Page 45: Nas entranhas do WebKit e do V8 - The Developers Conference 2013 SP - TDC2013](https://reader033.vdocuments.us/reader033/viewer/2022051818/54b731e74a795912438b45a9/html5/thumbnails/45.jpg)
ONDE RODA?
![Page 46: Nas entranhas do WebKit e do V8 - The Developers Conference 2013 SP - TDC2013](https://reader033.vdocuments.us/reader033/viewer/2022051818/54b731e74a795912438b45a9/html5/thumbnails/46.jpg)
![Page 47: Nas entranhas do WebKit e do V8 - The Developers Conference 2013 SP - TDC2013](https://reader033.vdocuments.us/reader033/viewer/2022051818/54b731e74a795912438b45a9/html5/thumbnails/47.jpg)
EVERYWHERE
![Page 48: Nas entranhas do WebKit e do V8 - The Developers Conference 2013 SP - TDC2013](https://reader033.vdocuments.us/reader033/viewer/2022051818/54b731e74a795912438b45a9/html5/thumbnails/48.jpg)
![Page 49: Nas entranhas do WebKit e do V8 - The Developers Conference 2013 SP - TDC2013](https://reader033.vdocuments.us/reader033/viewer/2022051818/54b731e74a795912438b45a9/html5/thumbnails/49.jpg)
![Page 50: Nas entranhas do WebKit e do V8 - The Developers Conference 2013 SP - TDC2013](https://reader033.vdocuments.us/reader033/viewer/2022051818/54b731e74a795912438b45a9/html5/thumbnails/50.jpg)
APPLEGOOGLENOKIA
BLACKBERRYIGALIA (GNOME)
![Page 51: Nas entranhas do WebKit e do V8 - The Developers Conference 2013 SP - TDC2013](https://reader033.vdocuments.us/reader033/viewer/2022051818/54b731e74a795912438b45a9/html5/thumbnails/51.jpg)
GETTING CODE
![Page 52: Nas entranhas do WebKit e do V8 - The Developers Conference 2013 SP - TDC2013](https://reader033.vdocuments.us/reader033/viewer/2022051818/54b731e74a795912438b45a9/html5/thumbnails/52.jpg)
svn checkout https://svn.webkit.org/repository/webkit/trunk
git clone git://git.webkit.org/WebKit.git
![Page 53: Nas entranhas do WebKit e do V8 - The Developers Conference 2013 SP - TDC2013](https://reader033.vdocuments.us/reader033/viewer/2022051818/54b731e74a795912438b45a9/html5/thumbnails/53.jpg)
svn checkout https://svn.webkit.org/repository/webkit/trunk
git clone git://git.webkit.org/WebKit.git
1.2GB
![Page 54: Nas entranhas do WebKit e do V8 - The Developers Conference 2013 SP - TDC2013](https://reader033.vdocuments.us/reader033/viewer/2022051818/54b731e74a795912438b45a9/html5/thumbnails/54.jpg)
svn checkout https://svn.webkit.org/repository/webkit/trunk
git clone git://git.webkit.org/WebKit.git
1.2GB
80% TESTES
![Page 55: Nas entranhas do WebKit e do V8 - The Developers Conference 2013 SP - TDC2013](https://reader033.vdocuments.us/reader033/viewer/2022051818/54b731e74a795912438b45a9/html5/thumbnails/55.jpg)
BUILD
![Page 56: Nas entranhas do WebKit e do V8 - The Developers Conference 2013 SP - TDC2013](https://reader033.vdocuments.us/reader033/viewer/2022051818/54b731e74a795912438b45a9/html5/thumbnails/56.jpg)
WebKitTools/Scripts/build-webkit
--qt for Qt, --gtk for Gtk+ --debug for “Debug” mode
![Page 57: Nas entranhas do WebKit e do V8 - The Developers Conference 2013 SP - TDC2013](https://reader033.vdocuments.us/reader033/viewer/2022051818/54b731e74a795912438b45a9/html5/thumbnails/57.jpg)
RUN
![Page 58: Nas entranhas do WebKit e do V8 - The Developers Conference 2013 SP - TDC2013](https://reader033.vdocuments.us/reader033/viewer/2022051818/54b731e74a795912438b45a9/html5/thumbnails/58.jpg)
WebKitTools/Scripts/run-launcher
--qt for Qt, --gtk for Gtk+ --debug for “Debug” mode
![Page 59: Nas entranhas do WebKit e do V8 - The Developers Conference 2013 SP - TDC2013](https://reader033.vdocuments.us/reader033/viewer/2022051818/54b731e74a795912438b45a9/html5/thumbnails/59.jpg)
![Page 60: Nas entranhas do WebKit e do V8 - The Developers Conference 2013 SP - TDC2013](https://reader033.vdocuments.us/reader033/viewer/2022051818/54b731e74a795912438b45a9/html5/thumbnails/60.jpg)
PORTS
![Page 61: Nas entranhas do WebKit e do V8 - The Developers Conference 2013 SP - TDC2013](https://reader033.vdocuments.us/reader033/viewer/2022051818/54b731e74a795912438b45a9/html5/thumbnails/61.jpg)
SAFARIIOS ≠WINDOWS
![Page 62: Nas entranhas do WebKit e do V8 - The Developers Conference 2013 SP - TDC2013](https://reader033.vdocuments.us/reader033/viewer/2022051818/54b731e74a795912438b45a9/html5/thumbnails/62.jpg)
APPLEPORT DO
COREFOUNDATION PARA O WINDOWS
![Page 63: Nas entranhas do WebKit e do V8 - The Developers Conference 2013 SP - TDC2013](https://reader033.vdocuments.us/reader033/viewer/2022051818/54b731e74a795912438b45a9/html5/thumbnails/63.jpg)
CHROMECHROMIUM
![Page 64: Nas entranhas do WebKit e do V8 - The Developers Conference 2013 SP - TDC2013](https://reader033.vdocuments.us/reader033/viewer/2022051818/54b731e74a795912438b45a9/html5/thumbnails/64.jpg)
ANDROID
![Page 65: Nas entranhas do WebKit e do V8 - The Developers Conference 2013 SP - TDC2013](https://reader033.vdocuments.us/reader033/viewer/2022051818/54b731e74a795912438b45a9/html5/thumbnails/65.jpg)
QTWEBKIT
![Page 66: Nas entranhas do WebKit e do V8 - The Developers Conference 2013 SP - TDC2013](https://reader033.vdocuments.us/reader033/viewer/2022051818/54b731e74a795912438b45a9/html5/thumbnails/66.jpg)
WEBKITGTK+
![Page 67: Nas entranhas do WebKit e do V8 - The Developers Conference 2013 SP - TDC2013](https://reader033.vdocuments.us/reader033/viewer/2022051818/54b731e74a795912438b45a9/html5/thumbnails/67.jpg)
WEBKIT NIGHTLY
MAC PORT -> SAFARI
![Page 68: Nas entranhas do WebKit e do V8 - The Developers Conference 2013 SP - TDC2013](https://reader033.vdocuments.us/reader033/viewer/2022051818/54b731e74a795912438b45a9/html5/thumbnails/68.jpg)
PORTS
![Page 69: Nas entranhas do WebKit e do V8 - The Developers Conference 2013 SP - TDC2013](https://reader033.vdocuments.us/reader033/viewer/2022051818/54b731e74a795912438b45a9/html5/thumbnails/69.jpg)
INTERFACE
![Page 70: Nas entranhas do WebKit e do V8 - The Developers Conference 2013 SP - TDC2013](https://reader033.vdocuments.us/reader033/viewer/2022051818/54b731e74a795912438b45a9/html5/thumbnails/70.jpg)
IMPLEMENTAÇÃO
![Page 71: Nas entranhas do WebKit e do V8 - The Developers Conference 2013 SP - TDC2013](https://reader033.vdocuments.us/reader033/viewer/2022051818/54b731e74a795912438b45a9/html5/thumbnails/71.jpg)
![Page 72: Nas entranhas do WebKit e do V8 - The Developers Conference 2013 SP - TDC2013](https://reader033.vdocuments.us/reader033/viewer/2022051818/54b731e74a795912438b45a9/html5/thumbnails/72.jpg)
![Page 73: Nas entranhas do WebKit e do V8 - The Developers Conference 2013 SP - TDC2013](https://reader033.vdocuments.us/reader033/viewer/2022051818/54b731e74a795912438b45a9/html5/thumbnails/73.jpg)
<input type=”number”/>
![Page 74: Nas entranhas do WebKit e do V8 - The Developers Conference 2013 SP - TDC2013](https://reader033.vdocuments.us/reader033/viewer/2022051818/54b731e74a795912438b45a9/html5/thumbnails/74.jpg)
<input type=”number”/>WEBKIT
![Page 75: Nas entranhas do WebKit e do V8 - The Developers Conference 2013 SP - TDC2013](https://reader033.vdocuments.us/reader033/viewer/2022051818/54b731e74a795912438b45a9/html5/thumbnails/75.jpg)
<input type=”number” />
WebKit
Thursday, November 3, 2011
<input type=”number”/>WEBKIT
![Page 76: Nas entranhas do WebKit e do V8 - The Developers Conference 2013 SP - TDC2013](https://reader033.vdocuments.us/reader033/viewer/2022051818/54b731e74a795912438b45a9/html5/thumbnails/76.jpg)
<input type=”number” />
WebKit
Thursday, November 3, 2011
<input type=”number”/>
PINTA PARA MIM
WEBKIT
![Page 77: Nas entranhas do WebKit e do V8 - The Developers Conference 2013 SP - TDC2013](https://reader033.vdocuments.us/reader033/viewer/2022051818/54b731e74a795912438b45a9/html5/thumbnails/77.jpg)
<input type=”number” />
WebKit
Thursday, November 3, 2011
<input type=”number”/>
PINTA PARA MIM
WEBKIT
PORT
![Page 78: Nas entranhas do WebKit e do V8 - The Developers Conference 2013 SP - TDC2013](https://reader033.vdocuments.us/reader033/viewer/2022051818/54b731e74a795912438b45a9/html5/thumbnails/78.jpg)
<input type=”number” />
WebKit
Thursday, November 3, 2011
<input type=”number”/>
PINTA PARA MIM
<input type=”number” />
Port
Thursday, November 3, 2011
WEBKIT
PORT
![Page 79: Nas entranhas do WebKit e do V8 - The Developers Conference 2013 SP - TDC2013](https://reader033.vdocuments.us/reader033/viewer/2022051818/54b731e74a795912438b45a9/html5/thumbnails/79.jpg)
<input type=”number” />
WebKit
Thursday, November 3, 2011
<input type=”number”/>
PINTA PARA MIM
<input type=”number” />
Port
Thursday, November 3, 2011
EU SEI FAZER!
WEBKIT
PORT
![Page 80: Nas entranhas do WebKit e do V8 - The Developers Conference 2013 SP - TDC2013](https://reader033.vdocuments.us/reader033/viewer/2022051818/54b731e74a795912438b45a9/html5/thumbnails/80.jpg)
<input type=”number” />
WebKit
Thursday, November 3, 2011
<input type=”number”/>WEBKIT
123
![Page 81: Nas entranhas do WebKit e do V8 - The Developers Conference 2013 SP - TDC2013](https://reader033.vdocuments.us/reader033/viewer/2022051818/54b731e74a795912438b45a9/html5/thumbnails/81.jpg)
<input type=”number” />
WebKit
Thursday, November 3, 2011
<input type=”number”/>WEBKIT
123
AQUI
![Page 82: Nas entranhas do WebKit e do V8 - The Developers Conference 2013 SP - TDC2013](https://reader033.vdocuments.us/reader033/viewer/2022051818/54b731e74a795912438b45a9/html5/thumbnails/82.jpg)
<input type=”number”/><input type=”number” />
Port
Thursday, November 3, 2011
PORT123
![Page 83: Nas entranhas do WebKit e do V8 - The Developers Conference 2013 SP - TDC2013](https://reader033.vdocuments.us/reader033/viewer/2022051818/54b731e74a795912438b45a9/html5/thumbnails/83.jpg)
<input type=”number”/><input type=”number” />
Port
Thursday, November 3, 2011
PORT123
BLZ!
![Page 84: Nas entranhas do WebKit e do V8 - The Developers Conference 2013 SP - TDC2013](https://reader033.vdocuments.us/reader033/viewer/2022051818/54b731e74a795912438b45a9/html5/thumbnails/84.jpg)
<input type=”number”/><input type=”number” />
Port
Thursday, November 3, 2011
PORT123
BLZ!
![Page 85: Nas entranhas do WebKit e do V8 - The Developers Conference 2013 SP - TDC2013](https://reader033.vdocuments.us/reader033/viewer/2022051818/54b731e74a795912438b45a9/html5/thumbnails/85.jpg)
WEBKIT SABE COMO
DESENHAR
![Page 86: Nas entranhas do WebKit e do V8 - The Developers Conference 2013 SP - TDC2013](https://reader033.vdocuments.us/reader033/viewer/2022051818/54b731e74a795912438b45a9/html5/thumbnails/86.jpg)
RESPONSABILIDADEÉ DO PORT
(COREGRAPHICS)
![Page 87: Nas entranhas do WebKit e do V8 - The Developers Conference 2013 SP - TDC2013](https://reader033.vdocuments.us/reader033/viewer/2022051818/54b731e74a795912438b45a9/html5/thumbnails/87.jpg)
![Page 88: Nas entranhas do WebKit e do V8 - The Developers Conference 2013 SP - TDC2013](https://reader033.vdocuments.us/reader033/viewer/2022051818/54b731e74a795912438b45a9/html5/thumbnails/88.jpg)
![Page 89: Nas entranhas do WebKit e do V8 - The Developers Conference 2013 SP - TDC2013](https://reader033.vdocuments.us/reader033/viewer/2022051818/54b731e74a795912438b45a9/html5/thumbnails/89.jpg)
QTWEBKITQNETWORKACESSMANAGER
![Page 90: Nas entranhas do WebKit e do V8 - The Developers Conference 2013 SP - TDC2013](https://reader033.vdocuments.us/reader033/viewer/2022051818/54b731e74a795912438b45a9/html5/thumbnails/90.jpg)
KDEWEBKITKDE NETWORK LAYER
![Page 91: Nas entranhas do WebKit e do V8 - The Developers Conference 2013 SP - TDC2013](https://reader033.vdocuments.us/reader033/viewer/2022051818/54b731e74a795912438b45a9/html5/thumbnails/91.jpg)
NETWORK INTERFACENADA DE HTTP, SSL...
MAS TEM CHAMADAS PARA ENVIO DE DADOS
![Page 92: Nas entranhas do WebKit e do V8 - The Developers Conference 2013 SP - TDC2013](https://reader033.vdocuments.us/reader033/viewer/2022051818/54b731e74a795912438b45a9/html5/thumbnails/92.jpg)
IMPLEMENTAÇÃOLIB DO SISTEMA
![Page 93: Nas entranhas do WebKit e do V8 - The Developers Conference 2013 SP - TDC2013](https://reader033.vdocuments.us/reader033/viewer/2022051818/54b731e74a795912438b45a9/html5/thumbnails/93.jpg)
SE QUISER FAZER UM PORT?
![Page 94: Nas entranhas do WebKit e do V8 - The Developers Conference 2013 SP - TDC2013](https://reader033.vdocuments.us/reader033/viewer/2022051818/54b731e74a795912438b45a9/html5/thumbnails/94.jpg)
IMPLEMENTE AS INTERFACES
![Page 95: Nas entranhas do WebKit e do V8 - The Developers Conference 2013 SP - TDC2013](https://reader033.vdocuments.us/reader033/viewer/2022051818/54b731e74a795912438b45a9/html5/thumbnails/95.jpg)
SE NÃO IMPLEMENTAR?
![Page 96: Nas entranhas do WebKit e do V8 - The Developers Conference 2013 SP - TDC2013](https://reader033.vdocuments.us/reader033/viewer/2022051818/54b731e74a795912438b45a9/html5/thumbnails/96.jpg)
fillRoundedRect()BOTÃO
QUADRADO
![Page 97: Nas entranhas do WebKit e do V8 - The Developers Conference 2013 SP - TDC2013](https://reader033.vdocuments.us/reader033/viewer/2022051818/54b731e74a795912438b45a9/html5/thumbnails/97.jpg)
SE WEBKIT ->
MENOS UM BROWSER PARA
TESTAR#1
![Page 98: Nas entranhas do WebKit e do V8 - The Developers Conference 2013 SP - TDC2013](https://reader033.vdocuments.us/reader033/viewer/2022051818/54b731e74a795912438b45a9/html5/thumbnails/98.jpg)
![Page 99: Nas entranhas do WebKit e do V8 - The Developers Conference 2013 SP - TDC2013](https://reader033.vdocuments.us/reader033/viewer/2022051818/54b731e74a795912438b45a9/html5/thumbnails/99.jpg)
NOVA FEATURE ->
DISPONÍVEL EM TODO PORT#2
![Page 100: Nas entranhas do WebKit e do V8 - The Developers Conference 2013 SP - TDC2013](https://reader033.vdocuments.us/reader033/viewer/2022051818/54b731e74a795912438b45a9/html5/thumbnails/100.jpg)
![Page 101: Nas entranhas do WebKit e do V8 - The Developers Conference 2013 SP - TDC2013](https://reader033.vdocuments.us/reader033/viewer/2022051818/54b731e74a795912438b45a9/html5/thumbnails/101.jpg)
![Page 102: Nas entranhas do WebKit e do V8 - The Developers Conference 2013 SP - TDC2013](https://reader033.vdocuments.us/reader033/viewer/2022051818/54b731e74a795912438b45a9/html5/thumbnails/102.jpg)
WEBKIT TAMBÉM É UMA
API
![Page 103: Nas entranhas do WebKit e do V8 - The Developers Conference 2013 SP - TDC2013](https://reader033.vdocuments.us/reader033/viewer/2022051818/54b731e74a795912438b45a9/html5/thumbnails/103.jpg)
WEBKIT2MULTI-PROCESS
![Page 104: Nas entranhas do WebKit e do V8 - The Developers Conference 2013 SP - TDC2013](https://reader033.vdocuments.us/reader033/viewer/2022051818/54b731e74a795912438b45a9/html5/thumbnails/104.jpg)
JAVASCRIPTCOREENGINE
![Page 105: Nas entranhas do WebKit e do V8 - The Developers Conference 2013 SP - TDC2013](https://reader033.vdocuments.us/reader033/viewer/2022051818/54b731e74a795912438b45a9/html5/thumbnails/105.jpg)
WEBCORECSS, HTML, DOM,
RENDER
![Page 106: Nas entranhas do WebKit e do V8 - The Developers Conference 2013 SP - TDC2013](https://reader033.vdocuments.us/reader033/viewer/2022051818/54b731e74a795912438b45a9/html5/thumbnails/106.jpg)
WTFWEB TEMPLATE FRAMEWORK
![Page 107: Nas entranhas do WebKit e do V8 - The Developers Conference 2013 SP - TDC2013](https://reader033.vdocuments.us/reader033/viewer/2022051818/54b731e74a795912438b45a9/html5/thumbnails/107.jpg)
![Page 108: Nas entranhas do WebKit e do V8 - The Developers Conference 2013 SP - TDC2013](https://reader033.vdocuments.us/reader033/viewer/2022051818/54b731e74a795912438b45a9/html5/thumbnails/108.jpg)
![Page 109: Nas entranhas do WebKit e do V8 - The Developers Conference 2013 SP - TDC2013](https://reader033.vdocuments.us/reader033/viewer/2022051818/54b731e74a795912438b45a9/html5/thumbnails/109.jpg)
PROPÓSITOS
![Page 110: Nas entranhas do WebKit e do V8 - The Developers Conference 2013 SP - TDC2013](https://reader033.vdocuments.us/reader033/viewer/2022051818/54b731e74a795912438b45a9/html5/thumbnails/110.jpg)
![Page 111: Nas entranhas do WebKit e do V8 - The Developers Conference 2013 SP - TDC2013](https://reader033.vdocuments.us/reader033/viewer/2022051818/54b731e74a795912438b45a9/html5/thumbnails/111.jpg)
WEBCORE
![Page 112: Nas entranhas do WebKit e do V8 - The Developers Conference 2013 SP - TDC2013](https://reader033.vdocuments.us/reader033/viewer/2022051818/54b731e74a795912438b45a9/html5/thumbnails/112.jpg)
LOADINGPARSINGLAYOUTPAINT
HTML EDITINGJS BINDINGS
![Page 113: Nas entranhas do WebKit e do V8 - The Developers Conference 2013 SP - TDC2013](https://reader033.vdocuments.us/reader033/viewer/2022051818/54b731e74a795912438b45a9/html5/thumbnails/113.jpg)
LOADINGPEGANDO DADOS
![Page 114: Nas entranhas do WebKit e do V8 - The Developers Conference 2013 SP - TDC2013](https://reader033.vdocuments.us/reader033/viewer/2022051818/54b731e74a795912438b45a9/html5/thumbnails/114.jpg)
COMPLICADA!!!
![Page 115: Nas entranhas do WebKit e do V8 - The Developers Conference 2013 SP - TDC2013](https://reader033.vdocuments.us/reader033/viewer/2022051818/54b731e74a795912438b45a9/html5/thumbnails/115.jpg)
WEBKITWEBCORE
WEBCORE/LOADERWEBCORE/PLATFORM/NETWORK
FRAMELOADERCLIENT
![Page 116: Nas entranhas do WebKit e do V8 - The Developers Conference 2013 SP - TDC2013](https://reader033.vdocuments.us/reader033/viewer/2022051818/54b731e74a795912438b45a9/html5/thumbnails/116.jpg)
2 PASSOSFRAMES E RESOURCES
![Page 117: Nas entranhas do WebKit e do V8 - The Developers Conference 2013 SP - TDC2013](https://reader033.vdocuments.us/reader033/viewer/2022051818/54b731e74a795912438b45a9/html5/thumbnails/117.jpg)
LOADING A FRAME
CLASSE FRAMELOADER
![Page 118: Nas entranhas do WebKit e do V8 - The Developers Conference 2013 SP - TDC2013](https://reader033.vdocuments.us/reader033/viewer/2022051818/54b731e74a795912438b45a9/html5/thumbnails/118.jpg)
1)POLICY STAGEBLOCK POP-UP
CROSS-PROCESS NAVIGATION
![Page 119: Nas entranhas do WebKit e do V8 - The Developers Conference 2013 SP - TDC2013](https://reader033.vdocuments.us/reader033/viewer/2022051818/54b731e74a795912438b45a9/html5/thumbnails/119.jpg)
2)PROVISIONAL STAGE
DOWNLOAD OU COMMITEX: LINK
![Page 120: Nas entranhas do WebKit e do V8 - The Developers Conference 2013 SP - TDC2013](https://reader033.vdocuments.us/reader033/viewer/2022051818/54b731e74a795912438b45a9/html5/thumbnails/120.jpg)
3)COMMITED STAGE
START PARSING
![Page 121: Nas entranhas do WebKit e do V8 - The Developers Conference 2013 SP - TDC2013](https://reader033.vdocuments.us/reader033/viewer/2022051818/54b731e74a795912438b45a9/html5/thumbnails/121.jpg)
LOADINGSUBRESOURCES
![Page 122: Nas entranhas do WebKit e do V8 - The Developers Conference 2013 SP - TDC2013](https://reader033.vdocuments.us/reader033/viewer/2022051818/54b731e74a795912438b45a9/html5/thumbnails/122.jpg)
DOCLOADERCACHE
![Page 123: Nas entranhas do WebKit e do V8 - The Developers Conference 2013 SP - TDC2013](https://reader033.vdocuments.us/reader033/viewer/2022051818/54b731e74a795912438b45a9/html5/thumbnails/123.jpg)
DOCLOADERPEGA UMA URL
VERIFICA NO CACHE OU LOADER
RETORNA UM CACHEDRESOURCE
![Page 124: Nas entranhas do WebKit e do V8 - The Developers Conference 2013 SP - TDC2013](https://reader033.vdocuments.us/reader033/viewer/2022051818/54b731e74a795912438b45a9/html5/thumbnails/124.jpg)
CACHEDRESOURCERESPONDE CALLBACKPRODUZ UM OBJETO (IMAGEM, FONTE...)
![Page 125: Nas entranhas do WebKit e do V8 - The Developers Conference 2013 SP - TDC2013](https://reader033.vdocuments.us/reader033/viewer/2022051818/54b731e74a795912438b45a9/html5/thumbnails/125.jpg)
PARSING
![Page 126: Nas entranhas do WebKit e do V8 - The Developers Conference 2013 SP - TDC2013](https://reader033.vdocuments.us/reader033/viewer/2022051818/54b731e74a795912438b45a9/html5/thumbnails/126.jpg)
HTML x XMLHTMLTOKENIZER E HTMLPARSER
XMLTOKENIZER
OUTRAS TASKS:PRE-LOAD SCANNING
(CARREGAMENTO DE CSS ANTES DO PARSE)
![Page 127: Nas entranhas do WebKit e do V8 - The Developers Conference 2013 SP - TDC2013](https://reader033.vdocuments.us/reader033/viewer/2022051818/54b731e74a795912438b45a9/html5/thumbnails/127.jpg)
![Page 128: Nas entranhas do WebKit e do V8 - The Developers Conference 2013 SP - TDC2013](https://reader033.vdocuments.us/reader033/viewer/2022051818/54b731e74a795912438b45a9/html5/thumbnails/128.jpg)
DOM TREERENDEROBJECT TREERENDERSTYLE TREERENDERLAYER TREE
LINEBOX TREE
![Page 129: Nas entranhas do WebKit e do V8 - The Developers Conference 2013 SP - TDC2013](https://reader033.vdocuments.us/reader033/viewer/2022051818/54b731e74a795912438b45a9/html5/thumbnails/129.jpg)
LOADING -> SOURCE PARSING -> DOM TREE
attach() -> RENDEROBJECT TREE
STYLE RESOLUTION -> RENDERSTYLE TREE
LAYOUT -> RENDERLAYER TREE LINEBOX TREE
![Page 130: Nas entranhas do WebKit e do V8 - The Developers Conference 2013 SP - TDC2013](https://reader033.vdocuments.us/reader033/viewer/2022051818/54b731e74a795912438b45a9/html5/thumbnails/130.jpg)
DOM TREE
<html> <head> <title>
foo </title>
<head>
HTMLDocumentHTMLHTMLElementHTMLHeadElementHTMLTitleElement
Text(“foo”)
![Page 131: Nas entranhas do WebKit e do V8 - The Developers Conference 2013 SP - TDC2013](https://reader033.vdocuments.us/reader033/viewer/2022051818/54b731e74a795912438b45a9/html5/thumbnails/131.jpg)
RENDER TREE
LAYOUTPAINTING
HIT TESTING
![Page 132: Nas entranhas do WebKit e do V8 - The Developers Conference 2013 SP - TDC2013](https://reader033.vdocuments.us/reader033/viewer/2022051818/54b731e74a795912438b45a9/html5/thumbnails/132.jpg)
RENDER TREE
RENDEROBJECTSRENDERSTYLE
RENDERLAYERSINLINEBOXES
![Page 133: Nas entranhas do WebKit e do V8 - The Developers Conference 2013 SP - TDC2013](https://reader033.vdocuments.us/reader033/viewer/2022051818/54b731e74a795912438b45a9/html5/thumbnails/133.jpg)
RENDEROBJECTclass RenderObject { virtual void layout() = 0; virtual void paint(PaintInfo) = 0; virtual IntRect repaintRect() = 0; Node* node(); RenderStyle* style() const; RenderLayer* containingLayer(); .....}
![Page 134: Nas entranhas do WebKit e do V8 - The Developers Conference 2013 SP - TDC2013](https://reader033.vdocuments.us/reader033/viewer/2022051818/54b731e74a795912438b45a9/html5/thumbnails/134.jpg)
RENDEROBJECT
RenderBlock(<div>, <p>)RenderInline(<span>, <b>, <i>)RenderImage(<image>)RenderText(#text)RenderTableCell (<td>)
![Page 135: Nas entranhas do WebKit e do V8 - The Developers Conference 2013 SP - TDC2013](https://reader033.vdocuments.us/reader033/viewer/2022051818/54b731e74a795912438b45a9/html5/thumbnails/135.jpg)
OBJETOS DA ENGINE JSString
ArrayNumberPrototypes.__proto__.callee__defineGetter__.toString()
![Page 136: Nas entranhas do WebKit e do V8 - The Developers Conference 2013 SP - TDC2013](https://reader033.vdocuments.us/reader033/viewer/2022051818/54b731e74a795912438b45a9/html5/thumbnails/136.jpg)
![Page 137: Nas entranhas do WebKit e do V8 - The Developers Conference 2013 SP - TDC2013](https://reader033.vdocuments.us/reader033/viewer/2022051818/54b731e74a795912438b45a9/html5/thumbnails/137.jpg)
![Page 138: Nas entranhas do WebKit e do V8 - The Developers Conference 2013 SP - TDC2013](https://reader033.vdocuments.us/reader033/viewer/2022051818/54b731e74a795912438b45a9/html5/thumbnails/138.jpg)
ABERTASFECHADAS
![Page 139: Nas entranhas do WebKit e do V8 - The Developers Conference 2013 SP - TDC2013](https://reader033.vdocuments.us/reader033/viewer/2022051818/54b731e74a795912438b45a9/html5/thumbnails/139.jpg)
SPIDER MONKEYJAVASCRIPTCORE (JSC, NITRO)
V8
![Page 140: Nas entranhas do WebKit e do V8 - The Developers Conference 2013 SP - TDC2013](https://reader033.vdocuments.us/reader033/viewer/2022051818/54b731e74a795912438b45a9/html5/thumbnails/140.jpg)
V8
![Page 141: Nas entranhas do WebKit e do V8 - The Developers Conference 2013 SP - TDC2013](https://reader033.vdocuments.us/reader033/viewer/2022051818/54b731e74a795912438b45a9/html5/thumbnails/141.jpg)
PARSER RUNTIME
INTERPRETER
![Page 142: Nas entranhas do WebKit e do V8 - The Developers Conference 2013 SP - TDC2013](https://reader033.vdocuments.us/reader033/viewer/2022051818/54b731e74a795912438b45a9/html5/thumbnails/142.jpg)
PARSER
![Page 143: Nas entranhas do WebKit e do V8 - The Developers Conference 2013 SP - TDC2013](https://reader033.vdocuments.us/reader033/viewer/2022051818/54b731e74a795912438b45a9/html5/thumbnails/143.jpg)
TOKENIZE
var answer = 42;
![Page 144: Nas entranhas do WebKit e do V8 - The Developers Conference 2013 SP - TDC2013](https://reader033.vdocuments.us/reader033/viewer/2022051818/54b731e74a795912438b45a9/html5/thumbnails/144.jpg)
TOKENIZE
var answer = 42;keyword
![Page 145: Nas entranhas do WebKit e do V8 - The Developers Conference 2013 SP - TDC2013](https://reader033.vdocuments.us/reader033/viewer/2022051818/54b731e74a795912438b45a9/html5/thumbnails/145.jpg)
TOKENIZE
var answer = 42;keyword identifier
![Page 146: Nas entranhas do WebKit e do V8 - The Developers Conference 2013 SP - TDC2013](https://reader033.vdocuments.us/reader033/viewer/2022051818/54b731e74a795912438b45a9/html5/thumbnails/146.jpg)
TOKENIZE
var answer = 42;keyword identifier
sinal igual
![Page 147: Nas entranhas do WebKit e do V8 - The Developers Conference 2013 SP - TDC2013](https://reader033.vdocuments.us/reader033/viewer/2022051818/54b731e74a795912438b45a9/html5/thumbnails/147.jpg)
TOKENIZE
var answer = 42;keyword identifier
sinal igual
número
![Page 148: Nas entranhas do WebKit e do V8 - The Developers Conference 2013 SP - TDC2013](https://reader033.vdocuments.us/reader033/viewer/2022051818/54b731e74a795912438b45a9/html5/thumbnails/148.jpg)
TOKENIZE
var answer = 42;keyword identifier
sinal igual
número
ponto e vírgula
![Page 149: Nas entranhas do WebKit e do V8 - The Developers Conference 2013 SP - TDC2013](https://reader033.vdocuments.us/reader033/viewer/2022051818/54b731e74a795912438b45a9/html5/thumbnails/149.jpg)
TOKENIZERNO V8
src/scanner.*
![Page 150: Nas entranhas do WebKit e do V8 - The Developers Conference 2013 SP - TDC2013](https://reader033.vdocuments.us/reader033/viewer/2022051818/54b731e74a795912438b45a9/html5/thumbnails/150.jpg)
KEYWORDX
IDENTIFIER
![Page 151: Nas entranhas do WebKit e do V8 - The Developers Conference 2013 SP - TDC2013](https://reader033.vdocuments.us/reader033/viewer/2022051818/54b731e74a795912438b45a9/html5/thumbnails/151.jpg)
#1PERGUNTA 1
![Page 152: Nas entranhas do WebKit e do V8 - The Developers Conference 2013 SP - TDC2013](https://reader033.vdocuments.us/reader033/viewer/2022051818/54b731e74a795912438b45a9/html5/thumbnails/152.jpg)
instanceof - instanceComponent
#1PERGUNTA 1
![Page 153: Nas entranhas do WebKit e do V8 - The Developers Conference 2013 SP - TDC2013](https://reader033.vdocuments.us/reader033/viewer/2022051818/54b731e74a795912438b45a9/html5/thumbnails/153.jpg)
instanceof - instanceComponent
#1PERGUNTA 1
![Page 154: Nas entranhas do WebKit e do V8 - The Developers Conference 2013 SP - TDC2013](https://reader033.vdocuments.us/reader033/viewer/2022051818/54b731e74a795912438b45a9/html5/thumbnails/154.jpg)
instanceof - instanceComponent
#1PERGUNTA 1
![Page 155: Nas entranhas do WebKit e do V8 - The Developers Conference 2013 SP - TDC2013](https://reader033.vdocuments.us/reader033/viewer/2022051818/54b731e74a795912438b45a9/html5/thumbnails/155.jpg)
#2PERGUNTA 2
![Page 156: Nas entranhas do WebKit e do V8 - The Developers Conference 2013 SP - TDC2013](https://reader033.vdocuments.us/reader033/viewer/2022051818/54b731e74a795912438b45a9/html5/thumbnails/156.jpg)
A G H J K L M O P Q X Y Z
#2PERGUNTA 2
![Page 157: Nas entranhas do WebKit e do V8 - The Developers Conference 2013 SP - TDC2013](https://reader033.vdocuments.us/reader033/viewer/2022051818/54b731e74a795912438b45a9/html5/thumbnails/157.jpg)
GRAMÁTICA
![Page 158: Nas entranhas do WebKit e do V8 - The Developers Conference 2013 SP - TDC2013](https://reader033.vdocuments.us/reader033/viewer/2022051818/54b731e74a795912438b45a9/html5/thumbnails/158.jpg)
SouceElement :: (Statement)*
FunctionDeclaration :: ‘function’ Identifier ‘(‘FormalParameters’)’ ‘{‘FunctionBody’}’
![Page 159: Nas entranhas do WebKit e do V8 - The Developers Conference 2013 SP - TDC2013](https://reader033.vdocuments.us/reader033/viewer/2022051818/54b731e74a795912438b45a9/html5/thumbnails/159.jpg)
SYNTAX TREE
![Page 160: Nas entranhas do WebKit e do V8 - The Developers Conference 2013 SP - TDC2013](https://reader033.vdocuments.us/reader033/viewer/2022051818/54b731e74a795912438b45a9/html5/thumbnails/160.jpg)
IDENTIFIER LITERAL CONSTANT
VARIABLE DECLARATION
answer 42
![Page 161: Nas entranhas do WebKit e do V8 - The Developers Conference 2013 SP - TDC2013](https://reader033.vdocuments.us/reader033/viewer/2022051818/54b731e74a795912438b45a9/html5/thumbnails/161.jpg)
CONSEQUÊNCIAALTERNATIVA
BRANCH
VELHONOVO
CONDIÇÃO
idade > 60
![Page 162: Nas entranhas do WebKit e do V8 - The Developers Conference 2013 SP - TDC2013](https://reader033.vdocuments.us/reader033/viewer/2022051818/54b731e74a795912438b45a9/html5/thumbnails/162.jpg)
PARSER NO V8src/parser.*
![Page 163: Nas entranhas do WebKit e do V8 - The Developers Conference 2013 SP - TDC2013](https://reader033.vdocuments.us/reader033/viewer/2022051818/54b731e74a795912438b45a9/html5/thumbnails/163.jpg)
CODE TRACE (EVAL)
SCRIPT :: COMPILE
SCRIPT :: NEW
INTERNAL :: COMPILER :: COMPILE
INTERNAL :: MAKEFUNCIONINFO
INTERNAL :: PARSEAPI :: PARSE
![Page 164: Nas entranhas do WebKit e do V8 - The Developers Conference 2013 SP - TDC2013](https://reader033.vdocuments.us/reader033/viewer/2022051818/54b731e74a795912438b45a9/html5/thumbnails/164.jpg)
INTERPRETER
![Page 165: Nas entranhas do WebKit e do V8 - The Developers Conference 2013 SP - TDC2013](https://reader033.vdocuments.us/reader033/viewer/2022051818/54b731e74a795912438b45a9/html5/thumbnails/165.jpg)
var answer = 42;
![Page 166: Nas entranhas do WebKit e do V8 - The Developers Conference 2013 SP - TDC2013](https://reader033.vdocuments.us/reader033/viewer/2022051818/54b731e74a795912438b45a9/html5/thumbnails/166.jpg)
var answer = 42;
Declare um objeto localChame esse objeto de “answer”
Crie um número 42De “assign” do número ao objeto
![Page 167: Nas entranhas do WebKit e do V8 - The Developers Conference 2013 SP - TDC2013](https://reader033.vdocuments.us/reader033/viewer/2022051818/54b731e74a795912438b45a9/html5/thumbnails/167.jpg)
IDENTIFIER LITERAL CONSTANT
VARIABLE DECLARATION
answer 42
![Page 168: Nas entranhas do WebKit e do V8 - The Developers Conference 2013 SP - TDC2013](https://reader033.vdocuments.us/reader033/viewer/2022051818/54b731e74a795912438b45a9/html5/thumbnails/168.jpg)
VELOCIDADE
![Page 169: Nas entranhas do WebKit e do V8 - The Developers Conference 2013 SP - TDC2013](https://reader033.vdocuments.us/reader033/viewer/2022051818/54b731e74a795912438b45a9/html5/thumbnails/169.jpg)
BYTECODE
SERIALIZA EM UMA LISTA DE “AÇÕES”
![Page 170: Nas entranhas do WebKit e do V8 - The Developers Conference 2013 SP - TDC2013](https://reader033.vdocuments.us/reader033/viewer/2022051818/54b731e74a795912438b45a9/html5/thumbnails/170.jpg)
COMPILA O BYTECODE
PARA ASSEMBLY
JIT (=JUST-IN-TIME) COMPILE
![Page 171: Nas entranhas do WebKit e do V8 - The Developers Conference 2013 SP - TDC2013](https://reader033.vdocuments.us/reader033/viewer/2022051818/54b731e74a795912438b45a9/html5/thumbnails/171.jpg)
shell --print-code
shell --expose-debug-as deb
![Page 172: Nas entranhas do WebKit e do V8 - The Developers Conference 2013 SP - TDC2013](https://reader033.vdocuments.us/reader033/viewer/2022051818/54b731e74a795912438b45a9/html5/thumbnails/172.jpg)
shell --print-code
shell --expose-debug-as deb
deb.Debug.disassemble(f)
![Page 173: Nas entranhas do WebKit e do V8 - The Developers Conference 2013 SP - TDC2013](https://reader033.vdocuments.us/reader033/viewer/2022051818/54b731e74a795912438b45a9/html5/thumbnails/173.jpg)
LAZY
![Page 174: Nas entranhas do WebKit e do V8 - The Developers Conference 2013 SP - TDC2013](https://reader033.vdocuments.us/reader033/viewer/2022051818/54b731e74a795912438b45a9/html5/thumbnails/174.jpg)
![Page 175: Nas entranhas do WebKit e do V8 - The Developers Conference 2013 SP - TDC2013](https://reader033.vdocuments.us/reader033/viewer/2022051818/54b731e74a795912438b45a9/html5/thumbnails/175.jpg)
foobar = function(x, y, z) { ...}
foobar(x, y, z);
![Page 176: Nas entranhas do WebKit e do V8 - The Developers Conference 2013 SP - TDC2013](https://reader033.vdocuments.us/reader033/viewer/2022051818/54b731e74a795912438b45a9/html5/thumbnails/176.jpg)
foobar = function(x, y, z) { ...}
foobar(x, y, z);
Analiza sintaxe
Guarda posição da função
![Page 177: Nas entranhas do WebKit e do V8 - The Developers Conference 2013 SP - TDC2013](https://reader033.vdocuments.us/reader033/viewer/2022051818/54b731e74a795912438b45a9/html5/thumbnails/177.jpg)
foobar = function(x, y, z) { ...}
foobar(x, y, z);
Analiza sintaxe
Guarda posição da função
Compila e roda
![Page 178: Nas entranhas do WebKit e do V8 - The Developers Conference 2013 SP - TDC2013](https://reader033.vdocuments.us/reader033/viewer/2022051818/54b731e74a795912438b45a9/html5/thumbnails/178.jpg)
foobar = function(x, y, z) { ...}
foobar(x, y, z);
Analiza sintaxe
Guarda posição da função
foobar = function(x, y, z, run) { ...}
foobar(x, y, z, false);
Compila e roda
![Page 179: Nas entranhas do WebKit e do V8 - The Developers Conference 2013 SP - TDC2013](https://reader033.vdocuments.us/reader033/viewer/2022051818/54b731e74a795912438b45a9/html5/thumbnails/179.jpg)
foobar = function(x, y, z) { ...}
foobar(x, y, z);
Analiza sintaxe
Guarda posição da função
foobar = function(x, y, z, run) { ...}
foobar(x, y, z, false);
HACK
Compila e roda
![Page 180: Nas entranhas do WebKit e do V8 - The Developers Conference 2013 SP - TDC2013](https://reader033.vdocuments.us/reader033/viewer/2022051818/54b731e74a795912438b45a9/html5/thumbnails/180.jpg)
RUNTIME
![Page 181: Nas entranhas do WebKit e do V8 - The Developers Conference 2013 SP - TDC2013](https://reader033.vdocuments.us/reader033/viewer/2022051818/54b731e74a795912438b45a9/html5/thumbnails/181.jpg)
Date.now()
código nativo
código JavaScript
![Page 182: Nas entranhas do WebKit e do V8 - The Developers Conference 2013 SP - TDC2013](https://reader033.vdocuments.us/reader033/viewer/2022051818/54b731e74a795912438b45a9/html5/thumbnails/182.jpg)
BRIDGEBRIDGING
![Page 183: Nas entranhas do WebKit e do V8 - The Developers Conference 2013 SP - TDC2013](https://reader033.vdocuments.us/reader033/viewer/2022051818/54b731e74a795912438b45a9/html5/thumbnails/183.jpg)
C++Primitive
DateObjectArray
FunctionExternal
![Page 184: Nas entranhas do WebKit e do V8 - The Developers Conference 2013 SP - TDC2013](https://reader033.vdocuments.us/reader033/viewer/2022051818/54b731e74a795912438b45a9/html5/thumbnails/184.jpg)
Handle<FunctionTemplate> systemObject = FunctionTemplate::New();systemObject->Set(String::New(“exit”)), FunctionTemplate::New(system_exit)->GetFunction());
static Handle<value> system_exit(const Arguments& args){ int status = args[0]->Int32Value(); ::exit(status); return Undefined();}
EXPONDO FUNÇÃO
![Page 185: Nas entranhas do WebKit e do V8 - The Developers Conference 2013 SP - TDC2013](https://reader033.vdocuments.us/reader033/viewer/2022051818/54b731e74a795912438b45a9/html5/thumbnails/185.jpg)
JSLINTJSBEAUTIFY
YUI COMPRESSOR
![Page 186: Nas entranhas do WebKit e do V8 - The Developers Conference 2013 SP - TDC2013](https://reader033.vdocuments.us/reader033/viewer/2022051818/54b731e74a795912438b45a9/html5/thumbnails/186.jpg)
![Page 187: Nas entranhas do WebKit e do V8 - The Developers Conference 2013 SP - TDC2013](https://reader033.vdocuments.us/reader033/viewer/2022051818/54b731e74a795912438b45a9/html5/thumbnails/187.jpg)
OBRIGADO!
@zaedysayao