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
WebKit-API
Search
yashigani
May 03, 2014
Technology
0
930
WebKit-API
Kyoto.なんかでWebKit APIについて話しました
yashigani
May 03, 2014
Tweet
Share
More Decks by yashigani
See All by yashigani
Hatena Engineer Seminar #10
yashigani
0
2.2k
Dependency Injection in iOS Apps
yashigani
2
470
Multiple layout with UITableViewCell
yashigani
1
3.5k
Lazy stored property
yashigani
3
2.1k
Code reviewing in iOS app development
yashigani
9
4.5k
Useful 3 techniques developing in iOS Apps
yashigani
0
1.5k
Introduction to WebKitPlus
yashigani
2
2.3k
Types in Swift
yashigani
5
2.3k
Swift with apps by Hatena
yashigani
13
29k
Other Decks in Technology
See All in Technology
生成AIの利活用を加速させるための取り組み「prAIrie-dog」/ Shibuya_AI_1
visional_engineering_and_design
1
140
Ask! NIKKEI RAG検索技術の深層
hotchpotch
13
2.8k
Larkご案内資料
customercloud
PRO
0
600
まだ間に合う! エンジニアのための生成AIアプリ開発入門 on AWS
minorun365
PRO
4
580
サーバーレスアーキテクチャと生成AIの融合 / Serverless Meets Generative AI
_kensh
12
3k
室長と気ままに学ぶマイクロソフトのビジネスアプリケーションとビジネスプロセス
ryoheig0405
0
320
SA Night #2 FinatextのSA思想/SA Night #2 Finatext session
satoshiimai
1
100
30分でわかる『アジャイルデータモデリング』
hanon52_
9
2.2k
オブザーバビリティの観点でみるAWS / AWS from observability perspective
ymotongpoo
7
1k
日経電子版 x AIエージェントの可能性とAgentic RAGによって提案書生成を行う技術
masahiro_nishimi
1
290
現場で役立つAPIデザイン
nagix
29
10k
明日からできる!技術的負債の返済を加速するための実践ガイド~『ホットペッパービューティー』の事例をもとに~
recruitengineers
PRO
3
100
Featured
See All Featured
It's Worth the Effort
3n
184
28k
ピンチをチャンスに:未来をつくるプロダクトロードマップ #pmconf2020
aki_iinuma
114
50k
Embracing the Ebb and Flow
colly
84
4.6k
Statistics for Hackers
jakevdp
797
220k
How GitHub (no longer) Works
holman
313
140k
Why You Should Never Use an ORM
jnunemaker
PRO
55
9.2k
Evolution of real-time – Irina Nazarova, EuRuKo, 2024
irinanazarova
6
540
Scaling GitHub
holman
459
140k
Fontdeck: Realign not Redesign
paulrobertlloyd
82
5.4k
Agile that works and the tools we love
rasmusluckow
328
21k
Dealing with People You Can't Stand - Big Design 2015
cassininazir
366
25k
Side Projects
sachag
452
42k
Transcript
ΒΕ͟ΔWebKit APIͷੈք @yashigani Kyoto.ͳΜ͔
@yashigani • iOS / Mac Application Engineer • http://yashigani.hatenablog.com/ •
Sleipnir for Mac / Sleipnir Mobile for iOS • ࠷ۙChrome ExtensionsσϏϡʔ͠·ͨ͠
None
Architecture of WebKit ! ! ! WebKit API WebCore JaveScriptCore
WTF
WebKitʹ3छྨͷAPI͕͋Δ
3छྨͷAPI • WebKit(WebKit 1) • Chromium WebKit(Blink) • WebKit 2
Ͳͷϒϥβʁ • Other WebKit base Browsers • Chromium / Google
Chrome • Safari / Mobile Safari
What different?
Process Model
WebKit 1 • ॴҦWebView/UIWebView • ϥΠϒϥϦͱ͍ͯ͘͢͠ઃܭ • ϓϥοτϑΥʔϜ͝ͱʹ߹ͬͨAPI • ϨϯμϦϯάΛؚΊͯ୯ҰͷϓϩηεͰ݁
Chromium WebKit(Blink) • RendererͷͨΊͷAPI • WebKit(WebCore)ΛແཧཧϚϧνϓϩηε Ͱ͏ • ChromiumຊମͱIPCͰΓͱΓ •
JavaScriptCore -> V8
! ! ! ! ! WebKit API WebCore Chromium (Application)
Renderer (Application) IPC Chromium WebKit API Boundary Host Process Renderer Process
WebKit 2 • WebKitࣗମʹϚϧνϓϩηεϞσϧΛಋೖ • API͕UI ProcessͱWeb Processʹ • C
API • υΩϡϝϯτ͕Ұແ͍ • ࠓͷͱ͜ΖSafariͷͨΊͷAPI
! ! WebKit2 ! ! WebKit API(UI Process) WebCore WebKit
API(Web Process) API Boundary Application UI Process Web Process
WebKitʹ͍Ζ͍Ζ͋Δʂ
·ͱΊ • WebKit = ͓͍ͦ • Chromium WebKit = ΊͬͪΌ͍
• WebKit 2 = ΊͬͪΌ͍
Sleipnir͕ΜͬͯΔʂ
WebKitࡶஊ • No release, No versions • WWDCΑΓલʹ࠷৽ใ͕Θ͔Δ(͜ͱ͋Δ) • Chromium
Embedded Framework • node-webkit
More info… • WebKit2 ͱ༇շͳؒͨͪ • http://steps.dodgson.org/b/2012/03/28/ webkit2-and-other-approaches/ • How
WebKit Works • https://docs.google.com/presentation/d/ 1ZRIQbUKw9Tf077odCh66OrrwRIVNLvI_nhLm 2Gi__F0/pub#slide=id.p
• WebKit Open Source Project - Technical Articles • http://www.webkit.org/coding/technical-
articles.html • WebKit 2 - WebKit • http://trac.webkit.org/wiki/WebKit2 • For Developers - The Chromium Project • http://www.chromium.org/developers
Thank you!