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
命名おじさん
Search
Paraya
October 10, 2017
Programming
1
140
命名おじさん
Paraya
October 10, 2017
Tweet
Share
More Decks by Paraya
See All by Paraya
J2K failure story : UNIT
paraya3636
0
85
J2Kコンバータをカスタマイズする ver: 5min
paraya3636
0
1.8k
J2Kコンバータをカスタマイズする
paraya3636
1
2.1k
Step up Kotlin
paraya3636
0
79
DDD失敗談
paraya3636
0
110
Other Decks in Programming
See All in Programming
データの民主化を支える、透明性のあるデータ利活用への挑戦 2025-06-25 Database Engineering Meetup#7
y_ken
0
330
Cursor AI Agentと伴走する アプリケーションの高速リプレイス
daisuketakeda
1
130
Result型で“失敗”を型にするPHPコードの書き方
kajitack
4
550
エンジニア向け採用ピッチ資料
inusan
0
180
地方に住むエンジニアの残酷な現実とキャリア論
ichimichi
5
1.4k
Team operations that are not burdened by SRE
kazatohiei
1
290
童醫院敏捷轉型的實踐經驗
cclai999
0
210
なぜ適用するか、移行して理解するClean Architecture 〜構造を超えて設計を継承する〜 / Why Apply, Migrate and Understand Clean Architecture - Inherit Design Beyond Structure
seike460
PRO
1
710
LT 2025-06-30: プロダクトエンジニアの役割
yamamotok
0
650
High-Level Programming Languages in AI Era -Human Thought and Mind-
hayat01sh1da
PRO
0
640
来たるべき 8.0 に備えて React 19 新機能と React Router 固有機能の取捨選択とすり合わせを考える
oukayuka
2
880
スタートアップの急成長を支えるプラットフォームエンジニアリングと組織戦略
sutochin26
0
200
Featured
See All Featured
We Have a Design System, Now What?
morganepeng
53
7.7k
Agile that works and the tools we love
rasmusluckow
329
21k
The Pragmatic Product Professional
lauravandoore
35
6.7k
Navigating Team Friction
lara
187
15k
Designing Dashboards & Data Visualisations in Web Apps
destraynor
231
53k
Designing Experiences People Love
moore
142
24k
ピンチをチャンスに:未来をつくるプロダクトロードマップ #pmconf2020
aki_iinuma
124
52k
Rails Girls Zürich Keynote
gr2m
94
14k
Keith and Marios Guide to Fast Websites
keithpitt
411
22k
YesSQL, Process and Tooling at Scale
rocio
173
14k
Building an army of robots
kneath
306
45k
Improving Core Web Vitals using Speculation Rules API
sergeychernyshev
17
950
Transcript
໋໊͓͡͞Μ Keisuke Miura IGNIS LTD.
ࣗݾհ • Android 3 / iOS3 • DDD / CleanArchitecture
/ CleanCode / Kotlinʹ ྗͯ͠Δ
໋໊͓͡͞Μ Keisuke Miura IGNIS LTD.
ΞδΣϯμ • ໋໊͓͡͞Μͷઆ໌ • ໋໊ʹͩ͜ΘΔཧ༝ • ·ͱΊ
͜Ε͔Β͘͝ී௨ͰҰൠతͳ Λ͠·͢ɻ ͔͠͠ϓϩάϥϜͷੈքͩͱ ୭͠ग़དྷ͓ͯΒͣɺͱͯ ͍͠ͳͷͩͱࢥͬͯͩ͘ ͍͞ɻ ຊ͕Կॻ͚ͯചΕΔϨϕϧͷͰ͢ʂ
໋໊͓͡͞Μͷઆ໌
໋໊͓͡͞Μͱ
None
͜Ε͕ΩοΧέͰ ໋໊͓͡͞ΜͱݺΕ ΔΑ͏ʹ
໋໊͓͡͞Μ͏͘͟ͳ ͍͔ͬ͢ʁͱ͍͏ؾ࣋ ͪɺ͋Δͱࢥ͍·͢ɻ ͏͍͟ͱࢥ͍·͢
ಈ͍ͯΔͳΒཁ݅ຬͨ ͯ͠ΔͷͰ Ϛʔδ͍ͨ͠ ϦϦʔε͍ͨ͠
ͳͥͦ͜·Ͱͩ͜ΘΔ ͷ͔
໋໊͓͡͞Μ͕ ໋໊ʹͩ͜ΘΔཧ༝
͠มΘΔͷͰ͕͢
ΦϒδΣΫτࢦͬͯ ͬͯ·͢ʁ
ΦϒδΣΫτࢦ • ΧϓηϧԽ • ܧঝ • ϙϦϞʔϑΟζϜ • ͏ΜͨΒ͔ΜͨΒ…
ͳͥΦϒδΣΫτࢦͰ࡞ Δ͖ͳͷ͔ͬͯ·͢ʁ
தଜ͞Μʂ
ͦΕਖ਼ղͰ͋Δͷ Ͱ͕͢…ਖ਼ղ
զʑਓ͕ؒࣗɺ ͜ͷੈքΛΦϒδΣΫτ ࢦͰଊ͍͑ͯΔ ͔ΒͰ͢ɻ
ΒͷෳࡶͳΛෳࡶͳ ··ߟ͑Δͷʹద͓ͯ͠Βͣɺ ɺࣄͱ͍͏֓೦ʹͯΊ ͯߟ͍͑ͯ·͢
ਫ Խ ʹ14.6g •৯ ણ ҡʹ1.5g ɹɹෆਫ༹ੑણҡʹ1.2g ɹɹਫ༹ੑણҡʹ0.3g
•λϯύΫ࣭ʹ0.2g •փɹɹɹʹ0.2g •ࢷɹɹɹ࣭ʹ0.1g ΦϒδΣΫτͷߏཁૉ ͜ΕΛͲ͏֮ͬͯ͑Δʁ ૬खʹ͑Δʁ ໊લͷແ͍ΦϒδΣΫτ
શ͖֮ͯ͑Εͳ͍ʂ ແཧʂ
ਫ Խ ʹ14.6g •৯ ણ ҡʹ1.5g ɹɹෆਫ༹ੑણҡʹ1.2g ɹɹਫ༹ੑણҡʹ0.3g
•λϯύΫ࣭ʹ0.2g •փɹɹɹʹ0.2g •ࢷɹɹɹ࣭ʹ0.1g ΦϒδΣΫτͷ֓೦Λද ໊͢લΛ͚Δ͜ͱͰཧ ղ͘͢͠ͳΔɻ Ϧϯΰ
ෳࡶͳɺࣄʹ దͳ໊લΛ͚Δͱ ཧղ͍͢͠
ٯʹݴ͏ͱదͰͳ͍ ໊લΛ͚Δͱɺͱͯ ͔Γਏ͍
ਫ Խ ʹ14.6g •৯ ણ ҡʹ1.5g ɹɹෆਫ༹ੑણҡʹ1.2g ɹɹਫ༹ੑણҡʹ0.3g
•λϯύΫ࣭ʹ0.2g •փɹɹɹʹ0.2g •ࢷɹɹɹ࣭ʹ0.1g దͰͳ໊͍લΛ͚ Δͱͱ͔ͯΓਏ͍ɻ ҧײΛײ͡Δɻ όφφ ΦϒδΣΫτͷཁૉͱ໊ લ͕טΈ߹͍ͬͯͳ͍
ෳࡶͳɺࣄʹదͨ͠ ໊લɺͭ·Γଞͷਓʹ ͔Δ໊લΛ͚ͳ͍ͱ͔ Γਏ͍
·ͨจ຺ʹ໊͋ͬͨલΛ ͚ͳ͍ͱ͔Γਏ͍Ͱ͢
จ຺ʹΑͬͯϦϯΰͱ͚ͩݴΘΕͯ அͰ͖ͳ͍έʔε͕͋Γ·͢ Ϧϯΰ͞Μͷ͓ (ೖΕͨ)Ϧϯΰ (ചͬͨ)Ϧϯΰ
໊લʹम০Λ͚Δ͜ͱͰͷจ ຺ʹ߹͏Α͏ʹͳΔ Ϧϯΰ͞Μͷ͓ ೖΕͨϦϯΰ ചͬͨϦϯΰ
͜ΕΒ
ϓϩάϥϛϯάʹ ͯ·Γ·͢
ͳͥͳΒਓ͕ؒෳࡶͳʹରॲ͢Δͨ ΊͷΦϒδΣΫτࢦ͕ɺϓϩάϥϛ ϯάͰར༻͞Ε͍ͯΔ͔ΒͰ͢
ෳࡶͳʹద໊ͨ͠લ Λ͚Δͱ͔Γ͢ ͍ɻ
దͳ໊લΛ͚Δͱ Ұ؏ͯ͑͠·͢ɻ Ϧϯΰ Ͳ͜ͰϦϯΰɻ
͜ΕΛDDDͰϢϏΩλεݴޠͱݴ͍·͢ɻ ϓϩάϥϜͰϦϯΰͲ͜·Ͱ͍ͬͯ ϦϯΰΛҡ࣋͢Δͱ͔Γ͍͢Ͱ͢ɻ fun cooking(banana: Apple) : AppleCake { val
cookingFood = cut(banana) return finish(cookingFood) } มʹ໊લΛ ม͑ͨΓ͠ͳ͍ appleͲ͜Ͱapple
·ͱΊ
• ෳࡶͳʹదͳ໊લΛ͚Α͏ɻ֓೦ Խ͢Δ͜ͱͰཧղ͘͢͠ͳΓ·͢ɻ • దͳ໊લҰ؏ੑΛ࣋ͪ·͢ɻϓϩάϥ Ϝاըॻ·ͰҰ؏໊ͨ͠લʹ͢Δͱཧ ղ͘͢͠ͳΓ·͢ɻ • ໊લ͚ͩͰจ຺ʹΑͬͯஅग़དྷͳ͍ έʔε͕͋Γ·͢ɻ໊લΛจ຺ʹ߹͏Α͏
ʹम০͠·͠ΐ͏ɻ
•࣮͢Δࡍจ຺Λҙࣝͨ͠ɺద͠ ໊ͨલΛٻ͠Α͏ɻ •಄ͷѱ͍ਓʹͳΒͳ͍Α͏ʹ͠Α͏
໋໊ͬͯେࣄ☺
࣭λΠϜ