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
3 Effective Rules for Using Signals in Angular
manfredsteyer
PRO
0
120
광고 소재 심사 과정에 AI를 도입하여 광고 서비스 생산성 향상시키기
kakao
PRO
0
170
TypeScriptでライブラリとの依存を限定的にする方法
tutinoko
3
690
みんなでプロポーザルを書いてみた
yuriko1211
0
260
CSC509 Lecture 11
javiergs
PRO
0
180
よくできたテンプレート言語として TypeScript + JSX を利用する試み / Using TypeScript + JSX outside of Web Frontend #TSKaigiKansai
izumin5210
6
1.7k
flutterkaigi_2024.pdf
kyoheig3
0
140
Micro Frontends Unmasked Opportunities, Challenges, Alternatives
manfredsteyer
PRO
0
100
Laravel や Symfony で手っ取り早く OpenAPI のドキュメントを作成する
azuki
2
120
.NET のための通信フレームワーク MagicOnion 入門 / Introduction to MagicOnion
mayuki
1
1.7k
Arm移行タイムアタック
qnighy
0
330
LLM生成文章の精度評価自動化とプロンプトチューニングの効率化について
layerx
PRO
2
190
Featured
See All Featured
Producing Creativity
orderedlist
PRO
341
39k
What's new in Ruby 2.0
geeforr
343
31k
Refactoring Trust on Your Teams (GOTO; Chicago 2020)
rmw
31
2.7k
The Success of Rails: Ensuring Growth for the Next 100 Years
eileencodes
44
6.8k
Optimising Largest Contentful Paint
csswizardry
33
2.9k
Building Better People: How to give real-time feedback that sticks.
wjessup
364
19k
[RailsConf 2023] Rails as a piece of cake
palkan
52
4.9k
Building an army of robots
kneath
302
43k
BBQ
matthewcrist
85
9.3k
Let's Do A Bunch of Simple Stuff to Make Websites Faster
chriscoyier
506
140k
What’s in a name? Adding method to the madness
productmarketing
PRO
22
3.1k
Understanding Cognitive Biases in Performance Measurement
bluesmoon
26
1.4k
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 ਖ਼͜ͷํੑ͔ͳΓ͋Γͩͱࢥ͏ɺͱ͍
͍͏ҙݟΛൃ৴͠·ͨ͠