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
2
1.2k
Building native apps with scala.js
Shinpei Maruyama
April 03, 2018
Tweet
Share
More Decks by Shinpei Maruyama
See All by Shinpei Maruyama
過去や未来を扱うのは難しい? 過去と未来に立ち向かうための勘所
shinpeim
3
3.4k
設計ナイト2022 トランザクションスクリプト
shinpeim
11
3.4k
Ruby (off|with) the Rails
shinpeim
20
4.9k
綱渡りバッチ脱出大作戦
shinpeim
3
3.4k
今あえてDRY原則に向き合う
shinpeim
51
560k
Nekogata Drum Sequencer written in Scala.js
shinpeim
2
3.9k
複雑なJavaScriptアプリケーションに立ち向かうためのアーキテクチャ
shinpeim
36
15k
Using Scala.js with the JavaScript ecosystems
shinpeim
0
2.2k
Vue.jsで実現するMVVMパターン Fluxアーキテクチャとの距離
shinpeim
22
32k
Other Decks in Programming
See All in Programming
NSOutlineView何もわからん:( 前編 / I Don't Understand About NSOutlineView :( Pt. 1
usagimaru
0
330
色々なIaCツールを実際に触って比較してみる
iriikeita
0
330
Snowflake x dbtで作るセキュアでアジャイルなデータ基盤
tsoshiro
2
520
카카오페이는 어떻게 수천만 결제를 처리할까? 우아한 결제 분산락 노하우
kakao
PRO
0
110
「今のプロジェクトいろいろ大変なんですよ、app/services とかもあって……」/After Kaigi on Rails 2024 LT Night
junk0612
5
2.1k
【Kaigi on Rails 2024】YOUTRUST スポンサーLT
krpk1900
1
330
Why Jakarta EE Matters to Spring - and Vice Versa
ivargrimstad
0
1k
Compose 1.7のTextFieldはPOBox Plusで日本語変換できない
tomoya0x00
0
190
Make Impossible States Impossibleを 意識してReactのPropsを設計しよう
ikumatadokoro
0
170
Flutterを言い訳にしない!アプリの使い心地改善テクニック5選🔥
kno3a87
1
140
Less waste, more joy, and a lot more green: How Quarkus makes Java better
hollycummins
0
100
2024/11/8 関西Kaggler会 2024 #3 / Kaggle Kernel で Gemma 2 × vLLM を動かす。
kohecchi
5
910
Featured
See All Featured
Documentation Writing (for coders)
carmenintech
65
4.4k
Java REST API Framework Comparison - PWX 2021
mraible
PRO
28
8.2k
Why You Should Never Use an ORM
jnunemaker
PRO
54
9.1k
Bash Introduction
62gerente
608
210k
StorybookのUI Testing Handbookを読んだ
zakiyama
27
5.3k
What’s in a name? Adding method to the madness
productmarketing
PRO
22
3.1k
Intergalactic Javascript Robots from Outer Space
tanoku
269
27k
For a Future-Friendly Web
brad_frost
175
9.4k
A Tale of Four Properties
chriscoyier
156
23k
The Success of Rails: Ensuring Growth for the Next 100 Years
eileencodes
44
6.8k
The Pragmatic Product Professional
lauravandoore
31
6.3k
Save Time (by Creating Custom Rails Generators)
garrettdimon
PRO
27
840
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 ਖ਼͜ͷํੑ͔ͳΓ͋Γͩͱࢥ͏ɺͱ͍
͍͏ҙݟΛൃ৴͠·ͨ͠