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
160
命名おじさん
Paraya
October 10, 2017
Tweet
Share
More Decks by Paraya
See All by Paraya
J2K failure story : UNIT
paraya3636
0
100
J2Kコンバータをカスタマイズする ver: 5min
paraya3636
0
1.8k
J2Kコンバータをカスタマイズする
paraya3636
1
2.2k
Step up Kotlin
paraya3636
0
91
DDD失敗談
paraya3636
0
130
Other Decks in Programming
See All in Programming
2025 컴포즈 마법사
jisungbin
0
150
Duke on CRaC with Jakarta EE
ivargrimstad
0
210
生成AIを活用したリファクタリング実践 ~コードスメルをなくすためのアプローチ
raedion
0
120
歴史から学ぶ「Why PHP?」 PHPを書く理由を改めて理解する / Learning from History: “Why PHP?” Rediscovering the Reasons for Writing PHP
seike460
PRO
0
170
JJUG CCC 2025 Fall: Virtual Thread Deep Dive
ternbusty
3
490
Flutterアプリ運用の現場で役立った監視Tips 5選
ostk0069
1
520
TypeScriptで設計する 堅牢さとUXを両立した非同期ワークフローの実現
moeka__c
5
2.3k
最新のDirectX12で使えるレイトレ周りの機能追加について
projectasura
0
300
しっかり学ぶ java.lang.*
nagise
1
440
Java_プロセスのメモリ監視の落とし穴_NMT_で見抜けない_glibc_キャッシュ問題_.pdf
ntt_dsol_java
0
230
CloudNative Days Winter 2025: 一週間で作る低レイヤコンテナランタイム
ternbusty
7
1.7k
『実践MLOps』から学ぶ DevOps for ML
nsakki55
2
470
Featured
See All Featured
Exploring the Power of Turbo Streams & Action Cable | RailsConf2023
kevinliebholz
36
6.1k
The Hidden Cost of Media on the Web [PixelPalooza 2025]
tammyeverts
1
51
The Invisible Side of Design
smashingmag
302
51k
Principles of Awesome APIs and How to Build Them.
keavy
127
17k
Sharpening the Axe: The Primacy of Toolmaking
bcantrill
46
2.6k
No one is an island. Learnings from fostering a developers community.
thoeni
21
3.5k
Become a Pro
speakerdeck
PRO
30
5.6k
Making Projects Easy
brettharned
120
6.5k
Typedesign – Prime Four
hannesfritz
42
2.9k
Learning to Love Humans: Emotional Interface Design
aarron
274
41k
RailsConf & Balkan Ruby 2019: The Past, Present, and Future of Rails at GitHub
eileencodes
140
34k
XXLCSS - How to scale CSS and keep your sanity
sugarenia
249
1.3M
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
·ͱΊ
• ෳࡶͳʹదͳ໊લΛ͚Α͏ɻ֓೦ Խ͢Δ͜ͱͰཧղ͘͢͠ͳΓ·͢ɻ • దͳ໊લҰ؏ੑΛ࣋ͪ·͢ɻϓϩάϥ Ϝاըॻ·ͰҰ؏໊ͨ͠લʹ͢Δͱཧ ղ͘͢͠ͳΓ·͢ɻ • ໊લ͚ͩͰจ຺ʹΑͬͯஅग़དྷͳ͍ έʔε͕͋Γ·͢ɻ໊લΛจ຺ʹ߹͏Α͏
ʹम০͠·͠ΐ͏ɻ
•࣮͢Δࡍจ຺Λҙࣝͨ͠ɺద͠ ໊ͨલΛٻ͠Α͏ɻ •಄ͷѱ͍ਓʹͳΒͳ͍Α͏ʹ͠Α͏
໋໊ͬͯେࣄ☺
࣭λΠϜ