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
JSCore on iOS
Search
Kenny Tang
October 27, 2015
Technology
1
170
JSCore on iOS
Lightning talk at Flipconf 2.0, Oct 2015.
Credits to @romaonthego for awesome code and inspiration.
Kenny Tang
October 27, 2015
Tweet
Share
More Decks by Kenny Tang
See All by Kenny Tang
Open Source Swift
kenshin03
0
42
Other Decks in Technology
See All in Technology
忙しい人のためのLangGraph概要まとめ
__ymgc__
1
190
Google CloudのLLM活用の選択肢を広げるVertex AIのパートナーモデル
nayuts
0
130
「自動テストのプラクティスを効果的に学ぶためのカードゲーム」 ( #sqip2024 )
teyamagu
PRO
2
180
React Aria で実現する次世代のアクセシビリティ
ryo_manba
4
1.2k
なにもしてないのにNew Relicのデータ転送量が増えていたときに確認したこと
tk3fftk
2
230
実務における脅威モデリングを考えよう
nikinusu
0
630
サプライチェーン攻撃に備える
ryunen344
0
290
プログラム検証入門
riru
6
870
サーバー管理しないサーバーサービスManaged DevOps Pool
kkamegawa
0
130
『GRANBLUE FANTASY Relink』キャラクターの魅力を支えるリグ・シミュレーション制作事例
cygames
0
120
技術的負債解消の取り組みと専門チームのお話
bengo4com
0
330
『GRANBLUE FANTASY Relink』ソフトウェアラスタライザによる実践的なオクルージョンカリング
cygames
0
170
Featured
See All Featured
Intergalactic Javascript Robots from Outer Space
tanoku
268
26k
WebSockets: Embracing the real-time Web
robhawkes
59
7.3k
Designing for humans not robots
tammielis
248
25k
Making Projects Easy
brettharned
113
5.8k
VelocityConf: Rendering Performance Case Studies
addyosmani
322
23k
Why You Should Never Use an ORM
jnunemaker
PRO
53
8.9k
BBQ
matthewcrist
83
9.2k
Infographics Made Easy
chrislema
239
18k
Being A Developer After 40
akosma
84
590k
The Art of Programming - Codeland 2020
erikaheidi
48
13k
Music & Morning Musume
bryan
46
6k
4 Signs Your Business is Dying
shpigford
179
21k
Transcript
Kenny Tang JSCore on iOS
JSCore on iOS JSCore
JSCore on iOS Web
None
loadRequest: to load a web page
loadRequest: to load a web page stringByEvaluatingJavaScriptFromString: @"alert('hello') to execute
javascript
loadRequest: to load a web page stringByEvaluatingJavaScriptFromString: @"alert('hello') to execute
javascript runtime invokes callback methods on your delegate class on link click events
loadRequest: to load a web page stringByEvaluatingJavaScriptFromString: @"alert('hello') to execute
javascript basis of hybrid apps and frameworks runtime invokes callback methods on your delegate class on link click events
None
resource intensive SLOW APPS must run on main thread synchronous
same process #1 cause of crashes
WKWebview iOS 8
WKWebview iOS 8 separate process message handlers w/ auto-serialization script
injection on doc load start/end Nitro JS engine 3x faster Sunspider benchmarks Designed for displaying web content
what it is + why we should care JSCore on
iOS
JSCore on iOS Safari’s nitro JS engine exposed as a
framework No webviews needed, multi-threaded What makes React Native possible
None
None
None
None
None
None
None
None
None
None
60 FPS 100 cells 20 cells
60 FPS 100 cells 20 cells
http://kalapun.com/posts/more-javascriptcore-benchmarking/
http://kalapun.com/posts/more-javascriptcore-benchmarking/
Write JS from now on?
Write JS from now on? Effort of writing binding classes
Debuggability Perf Overhead
Practical Applications Code Sharing: Web & Native Update client runtime
behavior - no binary resubmission
WWDC 2013 Session 615 WWDC 2014 Session 206 nshipster.com/javascriptcore/