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
昔Reactで書いたコードをHyperappに移植した話 / Porting react to...
Search
Yuuki Sumida
September 01, 2018
Programming
290
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
昔Reactで書いたコードをHyperappに移植した話 / Porting react to hyperapp
https://gbdaitokai.connpass.com/event/94404/
Yuuki Sumida
September 01, 2018
More Decks by Yuuki Sumida
See All by Yuuki Sumida
stddev_popとstddev_sampの話 / stddev_pop and stddev_samp
razon
0
730
Monacaのビルド結果をSlackに通知したいマン[WIP] / Notify Monaca build results to Slack [WIP]
razon
0
490
ノベルティカンファレンス in 地方 / Novelty conference in local region
razon
0
900
おれたちのファイナルファンタジー勉強会 アンケート / Final Fantasy Survey
razon
1
300
フロントエンドわからなさすぎるのでVue CLIが吐き出すファイルを読む / Read the files generated by Vue CLI
razon
0
1.1k
今の飲みは次の飲みへ[完結編] / For the current drinking party to the next drinking party -final version-
razon
0
79
今の飲みは次の飲みへ / For the current drinking party to the next drinking party
razon
0
77
大都会アワード2017 / Daitokai awards 2017
razon
0
960
合体事故した話
razon
0
720
Other Decks in Programming
See All in Programming
FDEが実現するAI駆動経営の現在地
gonta
2
240
jsmini JavaScript Engine を作ってみた話
yosuke_furukawa
PRO
0
280
その節約、円になってますか?
isamumumu
0
570
ITヒヤリハットを整理してみた ~ライフサイクルと原因から考える再発防止策~
koukimiura
1
120
変わらないものが、変わるものを決める — 意図駆動開発 × イベントソーシング × イミュータブル | What Doesn't Change Decides What Can — IDD × Event Sourcing × Immutability
tomohisa
0
840
What's New in Android 2026
veronikapj
0
240
AI時代、エンジニアはどう育つのか -未経験エンジニアの成長を間近で見て考えたこと-
thasu0123
0
200
複数の Claude Code が"放置"されてしまう問題をCLI ダッシュボードを自作して解決した話
sumihiro3
0
580
2年かけて Deno に DOMMatrix を実装した話 / How I implemented DOMMatrix in Deno over two years
petamoriken
0
190
信頼性について考えてみる(SRE NEXT 2026 miniLT)
hayama17
0
230
Prismを使った型安全な暗号化_関数型まつり2026
_fhhmm
0
160
壊れたパーサから始める関数型設計と構成的なパーサ #fp_matsuri
raiga0310
2
420
Featured
See All Featured
KATA
mclloyd
PRO
35
15k
Being A Developer After 40
akosma
91
590k
Building Experiences: Design Systems, User Experience, and Full Site Editing
marktimemedia
0
560
Unlocking the hidden potential of vector embeddings in international SEO
frankvandijk
0
880
What's in a price? How to price your products and services
michaelherold
247
13k
Visualizing Your Data: Incorporating Mongo into Loggly Infrastructure
mongodb
49
10k
エンジニアに許された特別な時間の終わり
watany
108
250k
Heart Work Chapter 1 - Part 1
lfama
PRO
8
36k
Raft: Consensus for Rubyists
vanstee
141
7.6k
B2B Lead Gen: Tactics, Traps & Triumph
marketingsoph
0
190
Ecommerce SEO: The Keys for Success Now & Beyond - #SERPConf2024
aleyda
1
2.1k
The browser strikes back
jonoalderson
0
1.4k
Transcript
昔 R e a c t で 書 い た
コ ー ド を H y p e r a p p に 移 植 し た 話 合 同 勉 強 会 i n ⼤ 都 会 岡 ⼭ - 2 0 1 8 S u m m a e r - # g b d a i t o k a i
A B O U T M E Yuuki Sumida(@razon) Information
Network co.,ltd
昔 R e a c t で 書 い た
コ ー ド を H y p e r a p p に 移 植 し た 話 合 同 勉 強 会 i n ⼤ 都 会 岡 ⼭ - 2 0 1 8 S u m m a e r - # g b d a i t o k a i
React Hyperapp …今更説明するまでもないよね? https://github.com/hyperapp/hyperapp 軽量 コアは398⾏ exportされている関数はhとappのふたつのみ
import { h, app } from "hyperapp" const state =
{ count: 0 } const actions = { down: value => state => ({ count: state.count - value }), up: value => state => ({ count: state.count + value }) } const view = (state, actions) => ( <div> <h1>{state.count}</h1> <button onclick={() => actions.down(1)}>-</button> <button onclick={() => actions.up(1)}>+</button> </div> ) app(state, actions, view, document.body) State Actions View
https://kampa.me/
State
Actions
View
移植してみて(完⾛した感想) 割と楽勝だった (Viewの互換性が⾼かったおかげ?) 規模あんまり⼤きくないんだけどもういい加減直接DOM いじるのはからい、みたいなところによさそう!
カ ン パ お 願 い し ま す ま
と め 終 @razon