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
Elm 開発サンプル
Search
Yosuke Torii
September 22, 2018
Technology
1
1.2k
Elm 開発サンプル
「Elm でユーザーストーリーマッピングのツールを作ってみた」の完全版
Yosuke Torii
September 22, 2018
Tweet
Share
More Decks by Yosuke Torii
See All by Yosuke Torii
TEA++
jinjor
2
440
Elm でユーザーストーリーマッピングのツールを作ってみた
jinjor
0
1.1k
Friendly Elm (怖くないElm)
jinjor
3
1.8k
Elmのさわれる副作用
jinjor
2
1.3k
Elm for React.js Users
jinjor
5
2.7k
Let's learn Elm
jinjor
3
690
Other Decks in Technology
See All in Technology
Snowflake Summit 2025全体振り返り / Snowflake Summit 2025 Overall Review
mtpooh
2
410
第9回情シス転職ミートアップ_テックタッチ株式会社
forester3003
0
260
Oracle Cloud Infrastructure:2025年6月度サービス・アップデート
oracle4engineer
PRO
2
270
Tech-Verse 2025 Global CTO Session
lycorptech_jp
PRO
0
440
MySQL5.6から8.4へ 戦いの記録
kyoshidaxx
1
260
AWS Organizations 新機能!マルチパーティ承認の紹介
yhana
1
130
監視のこれまでとこれから/sakura monitoring seminar 2025
fujiwara3
11
4k
製造業からパッケージ製品まで、あらゆる領域をカバー!生成AIを利用したテストシナリオ生成 / 20250627 Suguru Ishii
shift_evolve
PRO
1
140
AIの最新技術&テーマをつまんで紹介&フリートークするシリーズ #1 量子機械学習の入門
tkhresk
0
140
2025-06-26_Lightning_Talk_for_Lightning_Talks
_hashimo2
2
100
Javaで作る RAGを活用した Q&Aアプリケーション
recruitengineers
PRO
1
120
BrainPadプログラミングコンテスト記念LT会2025_社内イベント&問題解説
brainpadpr
1
170
Featured
See All Featured
個人開発の失敗を避けるイケてる考え方 / tips for indie hackers
panda_program
107
19k
RailsConf & Balkan Ruby 2019: The Past, Present, and Future of Rails at GitHub
eileencodes
138
34k
The Language of Interfaces
destraynor
158
25k
Git: the NoSQL Database
bkeepers
PRO
430
65k
Documentation Writing (for coders)
carmenintech
72
4.9k
Six Lessons from altMBA
skipperchong
28
3.9k
Building an army of robots
kneath
306
45k
Side Projects
sachag
455
42k
Product Roadmaps are Hard
iamctodd
PRO
54
11k
Learning to Love Humans: Emotional Interface Design
aarron
273
40k
Imperfection Machines: The Place of Print at Facebook
scottboms
267
13k
Reflections from 52 weeks, 52 projects
jeffersonlam
351
20k
Transcript
&MN։ൃαϯϓϧ &MNೖϋϯζΦϯʹͯ :PTVLF5PSJJ
ࣗݾհ :PTVLF5PSJJ!KJOKPS w &MNྺ΄Ͳ w &MNຊࣥචத w *EFJO*ODۈ ରԠʂʢॏཁʣ
ϋϯζΦϯ͓ർΕ༷Ͱͨ͠
ͩΜͩΜγϯλοΫεʹ׳Ε͖ͯͨ
ͩΜͩΜγϯλοΫεʹ׳Ε͖ͯͨ ϥΠϒϥϦͷυΩϡϝϯτಡΊΔΑ͏ʹͳͬͨ
ͩΜͩΜγϯλοΫεʹ׳Ε͖ͯͨ ϥΠϒϥϦͷυΩϡϝϯτಡΊΔΑ͏ʹͳͬͨ ؆୯ͳ50%0ΞϓϦॻ͚ͨ
ͩΜͩΜγϯλοΫεʹ׳Ε͖ͯͨ ϥΠϒϥϦͷυΩϡϝϯτಡΊΔΑ͏ʹͳͬͨ ؆୯ͳ50%0ΞϓϦॻ͚ͨ Ͱʜ
ͩΜͩΜγϯλοΫεʹ׳Ε͖ͯͨ ϥΠϒϥϦͷυΩϡϝϯτಡΊΔΑ͏ʹͳͬͨ ؆୯ͳ50%0ΞϓϦॻ͚ͨ Ͱʜ ·ͱͳΞϓϦ͕͢ΔΠϝʔδ͕࣋ͯͳ͍
ࠓ͓͍͑ͨ͜͠ͱ
ࠓ͓͍͑ͨ͜͠ͱ &MNͰී௨ͷΞϓϦ͕ී௨ʹ࡞ΕΔ
ϢʔβʔετʔϦʔϚοϐϯά
&MNͰ ϢʔβʔετʔϦʔϚοϐϯά ͷπʔϧΛ࡞ͬͯΈͨ
TUPSZOPUFTIFSPLVBQQDPN 4UPSZ/PUFT .71WFS
TUPSZOPUFTIFSPLVBQQDPN 4UPSZ/PUFT .71WFS ͬ͘͟Γ͍͏ͱɺετʔϦʔʹԊͬͯ ΞϓϦέʔγϣϯͷػೳΛݟੵΔπʔϧͰ͢
ܦҢ
ܦҢ w *EFJO*ODͰ։ൃதͷ8FCαʔϏε
ܦҢ w *EFJO*ODͰ։ൃதͷ8FCαʔϏε w ్த͔ΒεΫϥϜಋೖ
ܦҢ w *EFJO*ODͰ։ൃதͷ8FCαʔϏε w ్த͔ΒεΫϥϜಋೖ w ϢʔβʔετʔϦʔϚοϐϯάͰͬͯΈΔ͔
ܦҢ w *EFJO*ODͰ։ൃதͷ8FCαʔϏε w ్த͔ΒεΫϥϜಋೖ w ϢʔβʔετʔϦʔϚοϐϯάͰͬͯΈΔ͔ w ୭ᝦΛݟͳ͘ͳͬͨ w
੮͔Βԕ͍ ϦϞʔτϫʔΫଟ͍
ܦҢ w *EFJO*ODͰ։ൃதͷ8FCαʔϏε w ్த͔ΒεΫϥϜಋೖ w ϢʔβʔετʔϦʔϚοϐϯάͰͬͯΈΔ͔ w ୭ᝦΛݟͳ͘ͳͬͨ w
੮͔Βԕ͍ ϦϞʔτϫʔΫଟ͍ w ΦϯϥΠϯͷπʔϧͰ࡞ͬͯΈΔ͔ w ΄΅झຯ
%&.0
ղઆ
ߏ w %#1PTUHSF42- w 4FSWFS/PEFKT &YQSFTT 5ZQF4DSJQU w 'SPOUFOE&MN
ߏ w %#1PTUHSF42- w 4FSWFS/PEFKT &YQSFTT 5ZQF4DSJQU w 'SPOUFOE&MN
Ϗϧυ w OQNTDSJQUͰେମͲ͏ʹ͔ͳΔ w XFCQBDL͓͏ͱࢥ͑͑Δ w EPDLFSDPNQPTF
σϓϩΠɾͦͷଞ w )FSPLV w $JSDMF$*
$44 w ී௨ͷ$44ϑΝΠϧ DTT w ΠϯϥΠϯΛਪ͍ͯ͠ΔΘ͚Ͱͳ͍ w είʔϓ͕ཉ͚͠ΕFMNDTTͱ͔͋Δ
ϩάΠϯ w ී௨ͷ0"VUI w QBTTQPSUϞδϡʔϧ༻ w GPSNཁૉͰը໘ભҠ w DPPLJF
ಉ࣌ฤू
ಉ࣌ฤू .PEFM 7JFX 6QEBUF
ಉ࣌ฤू %# .PEFM 7JFX 6QEBUF
ಉ࣌ฤू %# .PEFM 7JFX 6QEBUF .PEFM 7JFX 6QEBUF
ಉ࣌ฤू %# .PEFM 7JFX 6QEBUF .PEFM 7JFX 6QEBUF 1 1
ಉ࣌ฤू %# .PEFM 7JFX 6QEBUF .PEFM 7JFX 6QEBUF 1 1
1
ಉ࣌ฤू %# .PEFM 7JFX 6QEBUF .PEFM 7JFX 6QEBUF 1 1
1 1
ಉ࣌ฤू %# .PEFM 7JFX 6QEBUF .PEFM 7JFX 6QEBUF 1 1
1 1 1
ಉ࣌ฤू %# .PEFM 6QEBUF 1 1 1 1 .PEFM 6QEBUF
1 1 1 1 7JFX 7JFX
ಉ࣌ฤू 1
ϧʔςΟϯά w ϋογϡͰϫʔΫεϖʔεΓସ͑ w Bʜ
ϧʔςΟϯά w ϋογϡͰϫʔΫεϖʔεΓସ͑ w Bʜ w 3PVUFΛܕͰఆ͓ٛͯ͘͠ͱศར
ϧʔςΟϯά w #SPXTFSBQQMJDBUJPOΛ͏
ϧʔςΟϯά w #SPXTFSBQQMJDBUJPOΛ͏
ϧʔςΟϯά .PEFM 7JFX 6QEBUF %#
ϧʔςΟϯά .PEFM 7JFX 6QEBUF %# PO6SM3FRVFTU
ϧʔςΟϯά 7JFX 6QEBUF %# PO6SM3FRVFTU PO6SM$IBOHF .PEFM
ϧʔςΟϯά 7JFX 6QEBUF %# PO6SM3FRVFTU PO6SM$IBOHF .PEFM #3322a08…
ϧʔςΟϯά 7JFX 6QEBUF %# PO6SM3FRVFTU PO6SM$IBOHF .PEFM #3322a08… Workspace “3322a08…”
ϧʔςΟϯά .PEFM 7JFX 6QEBUF %# PO6SM3FRVFTU PO6SM$IBOHF #3322a08… Workspace “3322a08…”
ϧʔςΟϯά .PEFM 7JFX 6QEBUF %# PO6SM3FRVFTU PO6SM$IBOHF #3322a08… Workspace “3322a08…”
ϧʔςΟϯά .PEFM 6QEBUF %# PO6SM3FRVFTU PO6SM$IBOHF #3322a08… Workspace “3322a08…” 7JFX
εΫϩʔϧͷ࣮
εΫϩʔϧͷ࣮
εΫϩʔϧͷ࣮ 6QEBUF .PEFM scroll = { x = .., y
= .. }
εΫϩʔϧͷ࣮ 6QEBUF .PEFM scroll = { x = .., y
= .. }
%SBHBOE%SPQͷ࣮
%SBHBOE%SPQͷ࣮ 6QEBUF .PEFM type_ = Note 1 start = {
x = .., y = .. } current = { x = .., y = .. }
ඳըͷύϑΥʔϚϯεΛߟྀ [ viewBackground backgroundState , viewNotes notes , viewDraggingNote dragState
]
ඳըͷύϑΥʔϚϯεΛߟྀ [ lazy viewBackground backgroundState , lazy viewNotes notes ,
viewDraggingNote dragState ]
ඳըͷύϑΥʔϚϯεΛߟྀ [ lazy viewBackground backgroundState , lazy viewNotes notes ,
viewDraggingNote dragState ] 1VSF$PNQPOFOUXJUIPVUUIF)FBEBDIF
ෳࡶ͞ʹཱ͔ͪ͏
ෳࡶ͞ʹཱ͔ͪ͏ wܕ
ෳࡶ͞ʹཱ͔ͪ͏ wܕ w ΞΫηε੍ޚ
ෳࡶ͞ʹཱ͔ͪ͏ wܕ w ΞΫηε੍ޚ %BUB 6QEBUF JOUFSGBDF
·ͱΊ
·ͱΊ &MNͰී௨ͷΞϓϦ͕ී௨ʹ࡞ΕΔ w Ұൠతͳ41"ʹඞཁͳಓ۩͋Δ w ྗΛೖΕ͍ͨͱ͜ΖҎ֎खΛൈ͍͍͍ͯ
5IBOLZPV !KJOKPS