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
Sponsored
·
Your Podcast. Everywhere. Effortlessly.
Share. Educate. Inspire. Entertain. You do you. We'll handle the rest.
→
Yosuke Torii
September 22, 2018
Technology
1.2k
1
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
Elm 開発サンプル
「Elm でユーザーストーリーマッピングのツールを作ってみた」の完全版
Yosuke Torii
September 22, 2018
More Decks by Yosuke Torii
See All by Yosuke Torii
TEA++
jinjor
2
520
Elm でユーザーストーリーマッピングのツールを作ってみた
jinjor
0
1.2k
Friendly Elm (怖くないElm)
jinjor
3
1.9k
Elmのさわれる副作用
jinjor
2
1.4k
Elm for React.js Users
jinjor
5
2.9k
Let's learn Elm
jinjor
3
750
Other Decks in Technology
See All in Technology
Point Cloud as a Foreign Language for Multi-modal Large Language Model
takmin
0
290
本番に近いテストをもっと手軽に - Postmanで広がるAPIテストの世界 / Expanding the World of API Testing with Postman
yokawasa
1
130
[ホンマでっか SRE] あなたはなぜ SRE に?
_awache
0
350
When Token Pruning is Worse than Random: Understanding Visual Token Information in VLLMs
sansantech
PRO
0
130
全社に広がるMCPサーバーを、 どう安全に管理するか MCPass開発の舞台裏
mtpooh
3
180
Claude Teamプランの コスト最適化を考える
rfdnxbro
1
800
Introduction to Sansan Meishi Maker Development Engineer
sansan33
PRO
0
460
Cloudflare製品を活用した AIガバナンス実践入門 / AI governance with Cloudflare Service
delta_tech
1
120
型落ちシンクライアント端末のPoEモジュールを自作したかった話
logica0419
0
510
dbt と Snowflake と tag
kevinrobot34
2
290
500名弱規模の組織のPythonプロジェクト(dbt) をどう管理するか?
hiracky16
0
360
最新技術に積極チャレンジ!EKS共通基盤のこれまでとこれから
daitak
0
250
Featured
See All Featured
Save Time (by Creating Custom Rails Generators)
garrettdimon
PRO
32
4.5k
Docker and Python
trallard
47
4.2k
The Straight Up "How To Draw Better" Workshop
denniskardys
239
140k
How to make the Groovebox
asonas
2
2.4k
Claude Code のすすめ
schroneko
67
230k
Hiding What from Whom? A Critical Review of the History of Programming languages for Music
tomoyanonymous
3
1.2k
Testing 201, or: Great Expectations
jmmastey
46
8.2k
Building Adaptive Systems
keathley
44
3.2k
Design and Strategy: How to Deal with People Who Don’t "Get" Design
morganepeng
133
19k
Mind Mapping
helmedeiros
PRO
1
340
What the history of the web can teach us about the future of AI
inesmontani
PRO
1
670
Agile that works and the tools we love
rasmusluckow
331
22k
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