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
45
Other Decks in Technology
See All in Technology
転生CISOサバイバル・ガイド / CISO Career Transition Survival Guide
kanny
3
410
データ基盤の成長を加速させる:アイスタイルにおける挑戦と教訓
tsuda7
3
650
組織貢献をするフリーランスエンジニアという生き方
n_takehata
1
1k
開発スピードは上がっている…品質はどうする? スピードと品質を両立させるためのプロダクト開発の進め方とは #DevSumi #DevSumiB / Agile And Quality
nihonbuson
1
1.3k
10分で紹介するAmazon Bedrock利用時のセキュリティ対策 / 10-minutes introduction to security measures when using Amazon Bedrock
hideakiaoyagi
0
170
マルチモーダル理解と生成の統合 DeepSeek Janus, etc... / Multimodal Understanding and Generation Integration
hiroga
0
360
アジャイル開発とスクラム
araihara
0
160
日経電子版 x AIエージェントの可能性とAgentic RAGによって提案書生成を行う技術
masahiro_nishimi
1
290
AndroidデバイスにFTPサーバを建立する
e10dokup
0
240
サーバーレスアーキテクチャと生成AIの融合 / Serverless Meets Generative AI
_kensh
12
3k
現場の種を事業の芽にする - エンジニア主導のイノベーションを事業戦略に装着する方法 -
kzkmaeda
2
1.5k
君はPostScriptなウィンドウシステム 「NeWS」をご存知か?/sunnews
koyhoge
0
720
Featured
See All Featured
ReactJS: Keep Simple. Everything can be a component!
pedronauck
666
120k
Site-Speed That Sticks
csswizardry
3
370
RailsConf & Balkan Ruby 2019: The Past, Present, and Future of Rails at GitHub
eileencodes
132
33k
How To Stay Up To Date on Web Technology
chriscoyier
790
250k
[RailsConf 2023] Rails as a piece of cake
palkan
53
5.2k
Easily Structure & Communicate Ideas using Wireframe
afnizarnur
193
16k
Writing Fast Ruby
sferik
628
61k
A better future with KSS
kneath
238
17k
Templates, Plugins, & Blocks: Oh My! Creating the theme that thinks of everything
marktimemedia
29
2.2k
The Success of Rails: Ensuring Growth for the Next 100 Years
eileencodes
44
7k
Rebuilding a faster, lazier Slack
samanthasiow
79
8.8k
Build The Right Thing And Hit Your Dates
maggiecrowley
34
2.5k
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/