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
私と Nature Remo E / Nature Remo E
Search
Kuniwak
PRO
March 24, 2023
Technology
0
25k
私と Nature Remo E / Nature Remo E
Kuniwak
PRO
March 24, 2023
Tweet
Share
More Decks by Kuniwak
See All by Kuniwak
欠陥を早期に発見するための Software Engineer in Test とその重要性 / What is Software Engineer in Test and How they works
orgachem
PRO
21
3.6k
住宅を WebXR で評価しよう / Evaluating My Home by WebXR
orgachem
PRO
0
71
HOME VR
orgachem
PRO
1
780
uGUI の自動操作の考え方と操作方法
orgachem
PRO
1
1.3k
Swift Macro に備えて構文木を 10min で学ぶ / Learn Syntax Tree for Swift Macro in 10 minutes
orgachem
PRO
1
1k
SoftWare Engineer in Test のおしごと / What is SWET
orgachem
PRO
1
980
存在しないアセットへの参照と 未公開アセットでのネタバレに どう立ち向かうか / How to prevent missing assets and spoilers by assets
orgachem
PRO
1
990
睡眠する技術 / Technology to Sleep
orgachem
PRO
15
14k
LintオタクによるLint解説 / Introduction to Lints
orgachem
PRO
27
12k
Other Decks in Technology
See All in Technology
Mocking in Rust Applications
taiki45
1
380
たった1人からはじめる【Agile Community of Practice】~ソース原理とFearless Changeを添えて~
ktc_corporate_it
1
180
自作Cコンパイラ 8時間の奮闘
soukouki
0
620
React Aria で実現する次世代のアクセシビリティ
ryo_manba
4
1.2k
Functional TypeScript
naoya
11
4.6k
Eventual Detection Engineering
ken5scal
0
1.3k
四国クラウドお遍路 2024 in 高知 エンディング
yukataoka
0
190
Privacy Sandbox on Android / DroidKaigi 2024
7pairs
1
170
SORACOMで実現するIoTのマルチクラウド対応 - IoTでのクリーンアーキテクチャの実現 -
kenichirokimura
0
350
スタッフエンジニアの道: The Staff Engineer’s Path
snoozer05
PRO
39
13k
サイボウズ 開発本部採用ピッチ / Cybozu Engineer Recruit
cybozuinsideout
PRO
9
41k
The XZ Backdoor Story
fr0gger
0
3.4k
Featured
See All Featured
It's Worth the Effort
3n
182
27k
Adopting Sorbet at Scale
ufuk
73
8.9k
Happy Clients
brianwarren
96
6.6k
Building a Scalable Design System with Sketch
lauravandoore
458
32k
Principles of Awesome APIs and How to Build Them.
keavy
125
16k
ReactJS: Keep Simple. Everything can be a component!
pedronauck
663
120k
Producing Creativity
orderedlist
PRO
340
39k
Git: the NoSQL Database
bkeepers
PRO
425
64k
Designing Dashboards & Data Visualisations in Web Apps
destraynor
226
52k
Large-scale JavaScript Application Architecture
addyosmani
508
110k
Cheating the UX When There Is Nothing More to Optimize - PixelPioneers
stephaniewalter
278
13k
ピンチをチャンスに:未来をつくるプロダクトロードマップ #pmconf2020
aki_iinuma
103
48k
Transcript
ࢲͱ/BUVSF3FNP& /BUVSF.FFUVQ,VOJXBL
,VOJXBL /BUVSFࣾͷϏδϣϯʹڞײͨ͠Ұਓɻ ΤωϧΪʔͳΜͱ͔͠ͳ͍ͱ͍͚ͳ͍ɻ 3FNPྺɺ3FNP&ྺϲ݄ɻ 2
None
None
None
None
ࣗͷઃඋ 7
ଠཅޫύωϧ ژηϥΤίϊϧʔπλΠϓ-L8I ి 1BOBTPOJD-+#L8I"I εϚʔτి൫ 1BOBTPOJD#).;$ ΤίΩϡʔτ )*5"$)*#)15"%6 8
ଠཅޫύωϧ ژηϥΤίϊϧʔπλΠϓ-L8I ి 1BOBTPOJD-+#L8I"I εϚʔτి൫ 1BOBTPOJD#).;$ ΤίΩϡʔτ )*5"$)*#)15"%6 9
ଠཅޫύωϧ ژηϥΤίϊϧʔπλΠϓ-L8I ి 1BOBTPOJD-+#L8I"I εϚʔτి൫ 1BOBTPOJD#).;$ ΤίΩϡʔτ )*5"$)*#)15"%6 10 ͕ڱ͍ͷͰൃిྔখ͍͞
ຊͬͱൃిྔ͕΄͍͠
ଠཅޫύωϧ ژηϥΤίϊϧʔπλΠϓ-L8I ి 1BOBTPOJD-+#L8I"I εϚʔτి൫ 1BOBTPOJD#).;$ ΤίΩϡʔτ )*5"$)*#)15"%6 11
ଠཅޫύωϧ ژηϥΤίϊϧʔπλΠϓ-L8I ి 1BOBTPOJD-+#L8I"I εϚʔτి൫ 1BOBTPOJD#).;$ ΤίΩϡʔτ )*5"$)*#)15"%6 12 ࣨʹஔ͔͘໎ͬͯ݁ہ֎ʹͨ͠
ՈͰҰ൪ߴֹͳͷۭؒͳͷͰʜ
ଠཅޫύωϧ ژηϥΤίϊϧʔπλΠϓ-L8I ి 1BOBTPOJD-+#L8I"I εϚʔτి൫ 1BOBTPOJD#).;$ ΤίΩϡʔτ )*5"$)*#)15"%6 13 ༰ྔN"IͷϞόΠϧ
όοςϦʔݸͩͱݴΘΕΔͱ গͳ͘ײ͡Δ͕ʜ
3FNP&Ͱͷ؍݁Ռ 14 ΑΓ্ͷͷόʔిʹΑΔ څిɻҙ֎ͱ"IͰ͍ͬͯΔ ே৯४උͷ*)ɾిࢠϨϯδͰ ྗਚ͖͕ͨͦΕ·Ͱ͍͑ͯͨ
ଠཅޫύωϧ ژηϥΤίϊϧʔπλΠϓ-L8I ి 1BOBTPOJD-+#L8I"I εϚʔτి൫ 1BOBTPOJD#).;$ ΤίΩϡʔτ )*5"$)*#)15"%6 15
ଠཅޫύωϧ ژηϥΤίϊϧʔπλΠϓ-L8I ి 1BOBTPOJD-+#L8I"I εϚʔτి൫ 1BOBTPOJD#).;$ ΤίΩϡʔτ )*5"$)*#)15"%6 16 ຊԻΛݴ͏ͱεϚʔτి൫ʹ͢Δ
ͭΓͳ͔͕ͬͨɺ͏͔ͬΓ εϚʔτి൫ʹͳ͍ͬͯͨ ࠓͰେਖ਼ղͩͱࢥ͍ͬͯΔʢޙड़ʣ
εϚʔτి൫ 17 -"/έʔϒϧ͕ ͍ͬͯ͞Δ
ίϯηϯτ͝ͱͷిྗ༻ྔ͕Θ͔Δʂ 18
ޙͰઆ໌͢Δ͕ిྗ༻ྔΛ͘͢Δʹ ిྗ༻ྔͷଟ͍ՈిΛಛఆ͢Δ͜ͱ͕ॏཁɻ ίϯηϯτ͝ͱͷిྗ༻ྔ͕Θ͔Βͳ͍ͱ Ոిͷ0/0''ΛΓସ͑ͯτʔλϧͷ ిྗ༻ྔͷมԽΛ؍͠ͳ͍ͱ͍͚ͳ͍ɻ ͜ͷ࡞ۀ͋·Γʹେมʜ 19
ίϯηϯτ͝ͱͷిྗ༻ྔ͕Θ͔Δʂ 20 εϚʔτి൫ ਆͱ͍͏͜ͱ
ଠཅޫύωϧ ژηϥΤίϊϧʔπλΠϓ-L8I ి 1BOBTPOJD-+#L8I"I εϚʔτి൫ 1BOBTPOJD#).;$ ΤίΩϡʔτ )*5"$)*#)15"%6 21
ଠཅޫύωϧ ژηϥΤίϊϧʔπλΠϓ-L8I ి 1BOBTPOJD-+#L8I"I εϚʔτి൫ 1BOBTPOJD#).;$ ΤίΩϡʔτ )*5"$)*#)15"%6 22 &$)0/&5-JUFରԠػछ͕ͩઢͱ
ՃϞδϡʔϧ͕ඞཁɻඞཁͳ͍ͱ ࢥ͍ͬͯͨͷͰจ͍ͯ͠ͳ͔ͬͨʜ
ͳ͓εϚʔτి൫͔Β ΤίΩϡʔτΛ؍Ͱ͖Δ 23 εϚʔτి൫ ਆͱ͍͏͜ͱ
ΤωϧΪʔʢͱࡒʣͷ ͨΊʹ࣮ફ͍ͯ͠Δ͜ͱ 24
࣮ફ͍ͯ͠Δ͜ͱ wൃిྔͷ૿Ճ w༻ྔͷݮ w༻λΠϛϯάͷมߋ 25
࣮ફ͍ͯ͠Δ͜ͱ wൃిྔͷ૿Ճ w༻ྔͷݮ w༻λΠϛϯάͷมߋ 26
ޤ͍ʢӍޤ͍ͷٯʣ 27 ո͛͠ͳّࣜӕͰ͕͢ ຖΕͯ΄͍͠ͱ ࢥ͍ͬͯΔͷຊͰ͢
࣮ફ͍ͯ͠Δ͜ͱ wൃిྔͷ૿Ճ w༻ྔͷݮ w༻λΠϛϯάͷมߋ 28
༻ྔͷݮ w ిྗ༻ྔͷଟ͍Ոి͔ΒݮΒ͍͔ͯ͠ͳ͍ͱ τʔλϧͷిྗ༻ྔ͕ݮΒͳ͍ w Λ੍ޚ͢ΔՈిͲΕిྗ༻ྔ͕ ଟ͍ͷͰ͜ΕΒͷՈిͷઃఆΛݟ͢ͱΑ͍ 29
ઃఆΛݟͨ͠ͷ w ిɿӡసϞʔυΛܦࡁϞʔυ͔ΒڥϞʔυʹͨ͠ w ΤίΩϡʔτɿΤίϞʔυͷઃఆΛͯ͢Φϯʹͨ͠ w ΤΞίϯɿ3FNPͰࣗಈͰਂʹӡసఀࢭ͢ΔΑ͏ʹͨ͠ w Թஆศ࠲ɿઃఆԹΛͨ͘͠ 30
ઃఆΛݟͨ͠ͷ 31 w ిɿӡసϞʔυΛܦࡁϞʔυ͔ΒڥϞʔυʹͨ͠ w ΤίΩϡʔτɿΤίϞʔυͷઃఆΛͯ͢Φϯʹͨ͠ w ΤΞίϯɿ3FNPͰࣗಈͰਂʹӡసఀࢭ͢ΔΑ͏ʹͨ͠ w Թஆศ࠲ɿઃఆԹΛͨ͘͠
ࢲͷ'*5ͷങऔՁ֨=L8Iɻ౦ژిྗͷਂͷిؾྉۚΑΓ ങऔՁ͕͍֨҆ͷͰࣗՈফඅͨ͠ํ͕ܦࡁతͰ͋Δ ిͷӡసϞʔυʹܦࡁ༏ઌϞʔυͱڥ༏ઌϞʔυ͕͋Γɺ ͜ͷঢ়گͰࣗՈফඅॏࢹͷڥϞʔυͷํ͕ܦࡁతʹͳΔ
ิɿܦࡁ༏ઌϞʔυͱڥ༏ઌϞʔυ 32 ܦࡁ༏ઌϞʔυ ڥ༏ઌϞʔυ ॆిʹ͏ిྗ ਂͷ҆Ձͳిྗ ଠཅޫൃిͷ ༨ిྗ ଠཅޫൃిͷ ༨ిྗ
ͯ͢ചి ॆిʹͬͨ ༨ΓΛചి
ઃఆΛݟͨ͠ͷ 33 w ిɿӡసϞʔυΛܦࡁϞʔυ͔ΒڥϞʔυʹͨ͠ w ΤίΩϡʔτɿΤίϞʔυͷઃఆΛͯ͢Φϯʹͨ͠ w ΤΞίϯɿ3FNPͰࣗಈͰਂʹӡసఀࢭ͢ΔΑ͏ʹͨ͠ w Թஆศ࠲ɿઃఆԹΛͨ͘͠
ిྗফඅྔ͔ͳΓେ͖͍ͱ༧͍͕ͯͨ͠ ࣮ࡍʹେ͖͍ɻΤίϞʔυͷઃఆΛશ෦ Φϯʹͨ͠Β͍ͩͿେਓ͘͠ͳͬͨ
ઃఆΛݟͨ͠ͷ 34 w ిɿӡసϞʔυΛܦࡁϞʔυ͔ΒڥϞʔυʹͨ͠ w ΤίΩϡʔτɿΤίϞʔυͷઃఆΛͯ͢Φϯʹͨ͠ w ΤΞίϯɿ3FNPͰࣗಈͰਂʹӡసఀࢭ͢ΔΑ͏ʹͨ͠ w Թஆศ࠲ɿઃఆԹΛͨ͘͠
ӡసఀࢭ͠ͳ͍ํ͕ిྗΛফඅ͠ͳ͍ͱ͢Δઆ͋Δ͕ɺ ࣮ࡍʹ3FNP&Ͱܭଌͨ͠ͱ͜Ζఀࢭͨ͠ํͷ༻ྔ͕ গͳ͍ͱΘ͔ͬͨʢߴஅؾີͷॅ͔ͩΒ͔ʁʣ
ઃఆΛݟͨ͠ͷ 35 w ిɿӡసϞʔυΛܦࡁϞʔυ͔ΒڥϞʔυʹͨ͠ w ΤίΩϡʔτɿΤίϞʔυͷઃఆΛͯ͢Φϯʹͨ͠ w ΤΞίϯɿ3FNPͰࣗಈͰਂʹӡసఀࢭ͢ΔΑ͏ʹͨ͠ w Թஆศ࠲ɿઃఆԹΛͨ͘͠
3FNP&Λݟ͍ͯͨΒɺτΠϨͰిྗফඅ͕େ͖͍͜ͱ͕ Θ͔ΓԹஆศ࠲ΛΦϑ·ͨऑͨ͘͠Βେਓ͘͠ͳͬͨ
࣮ફ͍ͯ͠Δ͜ͱ wൃిྔͷ૿Ճ w༻ྔͷݮ w༻λΠϛϯάͷมߋ 36
༻λΠϛϯάͷมߋ '*5ͷՁ֨Լམ͢ΔҰํͰɺ'*5ظؒͰ ͋ͬͯిྗΛചͬͯେͨ͠ऩೖʹͳΒͳ͍ɻ ଠཅޫൃిˠిͷมޮఔͰ ిΛܦ༝͢Δͱͷϩε͕͋Δɻ ͜ͷ͔ΒͳΔ͘ଠཅޫͰൃిͨ͠ిؾ ൃిͨͦ͠ͷ࣌ʹ༻͍ͨ͠ɻ 37
༻λΠϛϯάͷมߋ w ચ୕ס૩ػɾཋࣨס૩ػɿΕͷதʹ༻͢Δ w ϗοτΫοΫʢ࡞Γஔ͖ʣɿΕͷதʹ༻͢Δ w ΤίΩϡʔτɿΕͷதʹ༻͢Δ 38 ࣌ؒΛ͏ͷͰిྗ༻ྔ͕͔ͳΓେ͖͘ɺҰ൪ ൃిྔͷଟ͍ਖ਼ޕͷൃిྔΛ͍Δ΄Ͳʹ༻͢Δɻ
ͳΔ͘ਖ਼ޕΛ·͙ͨΑ͏ʹͯ͠ચ୕ס૩Λ͢ΔͱΑ͍ɻ Ұपճͬͯఱؾͷྑ͍͕ચ୕ʹͳͬͨ
༻λΠϛϯάͷมߋ w ચ୕ס૩ػɾཋࣨס૩ػɿΕͷதʹ༻͢Δ w ϗοτΫοΫʢ࡞Γஔ͖ʣɿΕͷதʹ༻͢Δ w ΤίΩϡʔτɿΕͷதʹ༻͢Δ 39 ࣌ؒΛ͏ͷͰిྗ༻ྔ͕ͦͦ͜͜େ͖͍ɻ ࡞Γஔ͖ͳΒΕΛͯΔͷͰΕͨλΠϛϯάͰ
Ұؾʹௐཧͯ͠͠·͏ͱΑ͍
༻λΠϛϯάͷมߋ w ચ୕ס૩ػɾཋࣨס૩ػɿΕͷதʹ༻͢Δ w ϗοτΫοΫʢ࡞Γஔ͖ʣɿΕͷதʹ༻͢Δ w ΤίΩϡʔτɿΕͷதʹ༻͢Δ 40 ޙͰ͕ͬͨɺ͜ͷػछ͔࣌ؒ͢Λେͯ͠มߋͰ͖ͳ͍ɻ தʹফඅ͕͋ΕଠཅޫͰ͔ͯ͘͠ΕΔ͕ɺ౬ͷফඅ͕Ұ൪
େ͖͍ͷೖཋͰզ͕ՈͷೖཋͳͷͰਂʹ͔͞Εͯ͠·͏ɻ &$)0/&5-JUFϞδϡʔϧΛ͚ͭͯ/BUVSF͕ఱؾ༧ใΛ τϦΨʹͰ͖ΔΑ͏ʹͳΕͳΜͱ͔ͳΔ͔͠Εͳ͍͕ʜ ଠཅޫൃిར༻ػೳ͋Δ͕લͷखಈૢ࡞͕ඞཁɻແཧήʔͰʁ
3FNP&͔ΒΤΫεϙʔτ ͨ͠σʔλʹΑΔޮՌଌఆ 41
3FNP&͔ΒͷσʔλΤΫεϙʔτ 42 ༻ిྗྔͳͲΛ $47ܗࣜͰ ΤΫεϙʔτͰ͖Δ
ޮՌଌఆͷҙࣄ߲ ͦΕͧΕͷରࡦΛ࢝ΊͨλΠϛϯάͱقઅͷҠΓมΘΓ ʢౙˠय़ʣ͕ඃ͍ͬͯΔͷͰࠩ͠Ҿ͍ͯΈͯ΄͍͠ɻ ͨͱ͑ؾԹ͕มΘΔ͚ͩͰΤΞίϯͷফඅిྗྔ͕ มΘͬͯ͠·͍ެฏͳൺֱʹͳΒͳ͍ɻ 43
3FNP&͔ΒΤΫεϙʔτͨ͠σʔλʹΑΔൺֱ 44 ʢରࡦલʣ ʢରࡦޙʣ
3FNP&͔ΒΤΫεϙʔτͨ͠σʔλʹΑΔൺֱ 45 ༻λΠϛϯάͷ มߋʹΑΓങిྔݮ ઃఆมߋʹΑΓফඅ ిྗྔݮ ଠཅޫൃిྔ݄ˠ ݄Ͱ૿ͳͷͰ ചిྔඍݮ ʢରࡦલʣ
ʢରࡦޙʣ
࣮ࡍͷσʔλ͜Μͳײ͡ 46 ݄ ݄
·ͱΊ 47
3FNP&͔ͳΓ͍͍ 48 ܭଌͰ͖Δͱؔ৺Λ࣋ͯΔ͠ରࡦ ଧͯΔɻͦͷܭଌΛॿ͚ͯ͘ΕΔ 3FNP&͍͍͘͢͝ͱ,VOJXBL ࢥ͏ʢͳ͔ͳ͔ͷ͓ஈ͚ͨ͠Ͳʣɻ