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
Building native apps with scala.js
Search
Shinpei Maruyama
April 03, 2018
Programming
1.5k
2
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
Building native apps with scala.js
Shinpei Maruyama
April 03, 2018
More Decks by Shinpei Maruyama
See All by Shinpei Maruyama
過去や未来を扱うのは難しい? 過去と未来に立ち向かうための勘所
shinpeim
3
4.5k
設計ナイト2022 トランザクションスクリプト
shinpeim
12
3.7k
Ruby (off|with) the Rails
shinpeim
20
5.3k
綱渡りバッチ脱出大作戦
shinpeim
3
4k
今あえてDRY原則に向き合う
shinpeim
51
560k
Nekogata Drum Sequencer written in Scala.js
shinpeim
2
4.1k
複雑なJavaScriptアプリケーションに立ち向かうためのアーキテクチャ
shinpeim
36
15k
Using Scala.js with the JavaScript ecosystems
shinpeim
0
2.5k
Vue.jsで実現するMVVMパターン Fluxアーキテクチャとの距離
shinpeim
22
33k
Other Decks in Programming
See All in Programming
AWS CDK を「作」ってみた 〜フルスクラッチで見えた CDK の裏側〜 / aws-cdk-from-scratch
gotok365
3
2.7k
TSX の <Hoge<Fuga>> という構文に驚いた話 / tsx-type-argument-syntax
kanaru0928
0
150
Android CLI
fornewid
0
200
AI時代の仕事技芸論〜ソフトウェア開発で「遊ぶように働く」職人的熟達のすすめ(スクフェス仙台 2026バージョン)
kuranuki
0
790
その節約、円になってますか?
isamumumu
0
630
ビデオ通話が繋がる0.2秒で何が起きているのか
supurazako
2
160
PHP初心者セッション2026 〜生成AIでは見えない裏側を知る:今だからLAMPを通して仕組みを学ぶ〜
kashioka
0
750
信頼性について考えてみる(SRE NEXT 2026 miniLT)
hayama17
0
230
Welcome to the "Parametricity" 🏙️ − Generic だけど Specific な世界 −
guvalif
PRO
1
200
The Past, Present, and Future of Enterprise Java
ivargrimstad
0
480
Haskell/Servantを通してWebミドルウェアを捉え直す
pizzacat83
1
630
yield再入門 #phpcon
o0h
PRO
0
860
Featured
See All Featured
Pawsitive SEO: Lessons from My Dog (and Many Mistakes) on Thriving as a Consultant in the Age of AI
davidcarrasco
0
200
We Have a Design System, Now What?
morganepeng
55
8.2k
[RailsConf 2023] Rails as a piece of cake
palkan
59
6.8k
Performance Is Good for Brains [We Love Speed 2024]
tammyeverts
12
1.8k
SEO Brein meetup: CTRL+C is not how to scale international SEO
lindahogenes
1
2.8k
The untapped power of vector embeddings
frankvandijk
2
1.8k
Max Prin - Stacking Signals: How International SEO Comes Together (And Falls Apart)
techseoconnect
PRO
0
330
Prompt Engineering for Job Search
mfonobong
0
390
The Illustrated Guide to Node.js - THAT Conference 2024
reverentgeek
1
420
Skip the Path - Find Your Career Trail
mkilby
1
170
The Organizational Zoo: Understanding Human Behavior Agility Through Metaphoric Constructive Conversations (based on the works of Arthur Shelley, Ph.D)
kimpetersen
PRO
0
400
The B2B funnel & how to create a winning content strategy
katarinadahlin
PRO
1
450
Transcript
CZ͠Μ͍BLBೣܕԻػ #VJMEJOHOBUJWF BQQTXJUI 4DBMBKT
BCPVUNF w ג ϝσΟϩϜ w ීஈ4DBMBͱ͔+4ͱ͔ຊޠ ͱ͔ w 1FSM 3VCZͨ͠ͳΉఔʹ
w UXJUUFS!TIJOQFJ
BCPVUNF w 4DBMBKTͱ 3FBDU/BUJWFc&MFDUSPO ͬͯ झຯΞϓϦॻ͍ͨΓͯ͠Δ w #BDLMPHΫϥΠΞϯτ &MFDUSPO
w ίʔυේΤσΟλ 3FBDU/BUJWF
લఏࣝ
4DBMBKT
4DBMBKT w 4DBMBUP+BWB4DSJQUͳτϥϯ εύΠϥ w ϓϩμΫτͰ͏ͱ͜Ζ͕૿͖͑ͯ ͍ͯΔ<ཁग़య>
4DBMBKTϝϦοτ w 4DBMBͰ͋Δ͜ͱ w ;ͭ͏ʹ4DBMB w ҆શ w දݱྗߴ͍
None
4DBMBKTσϝϦοτ w 4DBMBͰ͋Δ͜ͱ w 4DBMB͔Β+BWB4DSJQUͷੈքΛ ৮Ζ͏ͱ͢Δͱ్ʹۤ௧͕૿͑Δ w ಈతܕ͚ϥΠϒϥϦͱ͔ϒϥβͷ "1*ͱ͔ʜʜ
#VJMEJOHOBUJWF BQQTXJUI+4
3FBDU/BUJWF w 3FBDUͰωΠςΟϒεϚϗΞϓϦ ͕࡞ΕΔ w 8FC7JFXͱ͔͡Όͳ͍ w 3FBDU͕/BUJWFͷϓϨθϯςʔ γϣϯΛநԽ͍ͯ͠Δ
&MFDUSPO w +4ͰσεΫτοϓωΠςΟϒΞϓ Ϧ͕࡞ΕΔ w த΄΅ϒϥβΈ͍ͨͳ͔Μ͡
ϝϦοτ w +4Ͱ͋Δ͜ͱ w ࢲݟ͚ͩͲɺωΠςΟϒॻ͚ΔϓϩάϥϚΑΓ+4ॻ ͚ΔϓϩάϥϚͷ΄͏͕͕ଟ͍ w 6*Ήͱ͖ͷ։ൃαΠΫϧ͕ૣ͘ճΔ w ׳ΕΔͱωΠςΟϒͷϏϧυ͕ͪ࣌ؒΉ͠Ζ͠Μ
Ͳ͘ͳΔ w 91MBUͰ͋Δ͜ͱ w ͪΐͬͱਂೖΓ͢Δͱࢮ͵ͷͰ͜ͷແࢹ͠·͢
Ϟνϕʔγϣϯ
ຊԻ w 4DBMBͰωΠςΟϒΞϓϦॻ͖ͨ ͍ w ͳͥͳΒΘΕΘΕ4DBMB͕͖ ͔ͩΒ w ຊԻͰݴ͏ͱ͜Εׂ͕
ݐલ w (6*ΞϓϦέʔγϣϯෳࡶͳঢ়ଶ Λ࣋ͭͨΊɺߏங͢Δͷ͕ඇৗʹΉ ͔͍ͣ͠ w ෳࡶͳྖҬʹରͯ͠4DBMBͷ Α͏ͳڧྗͳݴޠͰཱ͔͍͍ͪͨ
ϐίʔϯʂ 4DBMBKTͷػӡʂ
ൃ w +4ͰωΠςΟϒΞϓϦॻ͚ΔͳΒ 4DBMBKTͰωΠςΟϒΞϓϦॻ͚ Δ͡ΌΜ w ѱຐతͻΒΊ͖ʜʜʂ
ཱ͔ͪ͏͖น ͦͷ
ϏϧυपΓͷ
ϏϧυपΓͷ w ͦͦ+4Ͱ͋ΔఔҎ্ෳࡶͳ (6*ΞϓϦΛ࡞ΔͳΒɺXFCQBDL ͕લఏͱͳ͍ͬͯΔ w 4DBMBKTTCUͰϏϧυ͢Δલఏ
ϏϧυपΓͷ w 4DBMBKTͷMPBEFS͋Δɻ͋Δʹ ͋Δ͕ʜʜ w ڊେϏϧυγεςϜͱڊେϏϧυγ εςϜΛڊେ࿈݁͢Δͷͪΐͬ ͱʜʜʢݸਓͷݟղͰ͢ʣ
ཱ͔ͪ͏͖น ͦͷ
ΘΒ͔͘࡞Γ͍ͨ ෦ WT ߗ͘࡞Γ͍ͨ෦
ॊΒ͔͍΄͏͕͍͍෦ w ͱ͘ʹ3FBDU/BUJWFͱ͔ͰΔͳΒɺ7JFX पΓͷίʔυૉͷ+4ͷ΄͏ָ͕ͩͬͨΓ ͢Δ w ϓϨʔϯͳΦϒδΣΫτ \lBzlCz^Έ͍ͨ ͳͭ ଟ༻͢Δ͠ɺ։ൃͯ͠ΔؒʹΩʔ
ΨϯΨϯมΘΔ w ฤू֬ೝͷαΠΫϧΛ͘ճ͍ͨ͠
ߗ͍΄͏͕͍͍෦ w ͱݴ͑ɺෳࡶͳঢ়ଶཧϩδο ΫΛ+4Ͱॻ͘ͷͭΒ͍ɻ4DBMB ͳΒͳ͋ʜʜͬͯࢥ͏͜ͱଟ͍
ιϦϡʔγϣϯͷ ͝հ
ιϦϡʔγϣϯ w 6*ૉʹ+4ͷ6*ϑϨʔϜϫʔ ΫͰͦͷ··ॻ͘ w ϞσϧҎԼΛ4DBMBKTͰॻ͘
TCU ਤ WVFͩͱ͔ KTY TDBMB JNQPSUͯ͠͏ DPNQJMFEKT DPNQJMF͢Δ XFCQBDL
.78 7JFX 8IBUFWFS .PEFM 6* -BZFS .PEFM -BZFS
.78 7JFX 8IBUFWFS .PEFM &MFDUSPOΒ 3FBDU/BUJWFΒͷ ߹ʹৼΓճ͞ΕΔ ෦ Ͳ͏ͤ ࣗͰ
ઃܭͯ͠ ॻ͘෦
XJUI4DBMBKT 7VFPS3FBDU/BUJWF .PEFM 3FBDU 7VF FUDʜ 4DBMBKT $PNNBOE 2VFSZ &WFOU
7VFPS3FBDU/BUJWF 7VFKTXJUI4DBMBKT .PEFM 4DBMBKT $PNNBOE 2VFSZ &WFOU JOWPLF ෭࡞༻ 3FBDU
7VF FUDʜ
XJUI4DBMBKT 7VFPS3FBDU/BUJWF .PEFM 3FBDU 7VF FUDʜ 4DBMBKT $PNNBOE 2VFSZ &WFOU
XBUDI
7VFPS3FBDU/BUJWF 3FBDU 7VF FUDʜ 7VFKTXJUI4DBMBKT .PEFM $PNNBOE 2VFSZ &WFOU OPUJGZ
4DBMBKT
7VFPS3FBDU/BUJWF 3FBDU 7VF FUDʜ 7VFKTXJUI4DBMBKT .PEFM Ͳ͏ͤ ࣗͰ ઃܭͯ͠ ॻ͘෦
$PNNBOE 2VFSZ &WFOU GFUDI
7VFPS3FBDU/BUJWF 3FBDU 7VF FUDʜ σʔλϑϩʔ୯ํ .PEFM Ͳ͏ͤ ࣗͰ ઃܭͯ͠ ॻ͘෦
$PNNBOE 2VFSZ &WFOU
ίʔυྫ
3FBDU/BUJWF෦
3FBDU/BUJWF෦
3FBDU/BUJWF෦
;ͭ͏ͷ 3FBDU/BUJWF
4DBMB෦
;ͭ͏ͷ4DBMB
ॴײ
ॴײ w ΠϯϑϥετϥΫνϟϨΠϠʔͰ4DBMB͔Β +4ͷϥΠϒϥϦ"1*৮Δͷආ͚ΒΕͳ͍ w ͕͚ͬ͜͜͜͏ͭΒ͍ w ͦ͏ߟ͑Δͱɺ+4ͷ"1*ୟ͖·͘ΔΑ͏ͳͭ ͪΐͬͱਏͦ͏ w
4DBMBͰΞϓϦॻ͚Δ͜ͱࣗମͱͯྑ͍ମ ݧΛಘΒΕΔ
ॴײ w ϓϨθϯςʔγϣϯϨΠϠʔૉͷ +4ɺͦͷԼશ෦4DBMBͱ͍͏ͷ ͔ͳΓମݧ͕ྑ͍ w 4DBMBͰωΠςΟϒΞϓϦॻ͚ ·͢ʂʂʂʂ
·ͱΊ
·ͱΊ w 4DBMBͰωΠςΟϒΞϓϦ͕࡞Γ͍ͨʂͱ ͍͏͍ࢥ͍࣮ݱՄೳͰ͋Δ͜ͱΛݟ͖ͯ ·ͨ͠ w 6*ʹ͍ۙ෦ɺ+4ͷ··Δͱ͏·͍͘ ͘͜ͱ͕ଟ͍͜ͱΛݟ͖ͯ·ͨ͠ w ਖ਼͜ͷํੑ͔ͳΓ͋Γͩͱࢥ͏ɺͱ͍
͍͏ҙݟΛൃ৴͠·ͨ͠