Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Sign up for free
Menu
Search
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Pricing
Search
Sign in
Sign up for free
開発者だけでソフトウェア設計をしてはいけない理由
Search
mather
October 11, 2016
Technology
630
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
開発者だけでソフトウェア設計をしてはいけない理由
過去の設計・開発を振り返りながらソフトウェア設計を開発者だけで行ってはいけない理由を説明します。
mather
October 11, 2016
More Decks by mather
See All by mather
数学勉強会へのいざない
mather
0
83
SolidjsでLeacTion!を作り直しました / Rebuilt LeacTion! in Solid.js
mather
0
370
Webフレームワークの功罪 / Advantages and considerable point of Web Frameworks
mather
0
520
LeacTion!のアップデートとプチ勉強会へのいざない / Updates of LeacTion and Petit Meetup
mather
0
560
LeacTion!について / About LeacTion!
mather
0
370
Rubyでワンライナー / One-liner on Ruby
mather
0
510
認知と思考パターン / Cognition and Pattern
mather
1
340
「モデル」を考える / Think about "model"
mather
0
410
Shall we make a speech?
mather
0
280
Other Decks in Technology
See All in Technology
"計画的無茶振り"を通してAIネイティブ世代の新人を育てる
subroh0508
1
140
AI Search (Foundry IQ) におけるRAGデータの準備と配置
ryomaru0825
1
130
「作れる」と「リリースできる」の間にあったもの── PdMを外して見えた、PdMがやるべき仕事/Buildable ≠ Shippable: What Removing the PM Taught Me About the PM’s Job
yappli_developers
0
420
これだけは抑えておきたい!後悔しない re:Invent の過ごし方 / AWS re:Invent 2026 prestudy
kinunori
2
650
なぜAI時代に技術記事を書くのか?どう書くのか? 〜bunの場合〜
kworkdev
PRO
0
3.5k
AIがGISを代替する日:〜すべてをAIが創る時代に、私たちがFOSS4Gに関わる意味〜
lehupa
0
190
AI時代の開発はウォーターフォールに回帰する? / development-with-ai-back-to-wf
okamototakuyasr2
0
170
Maestro MCPとClaude Code Skillsによる自律的なE2Eテスト支援
asmz
0
400
キヨさん、67歳。AIコーディングエージェントに挑む
happysamurai294
0
140
仕様駆動開発の、その先へ。決める力と確かめる仕組み
inariku
1
160
Oracle Database Security 詳細解説
oracle4engineer
PRO
1
200
新米を「売り越さない」、Aurora DSQLで作る在庫ゼロ死守の限定ドロップEC
yama3133
0
140
Featured
See All Featured
Odyssey Design
rkendrick25
PRO
2
910
ReactJS: Keep Simple. Everything can be a component!
pedronauck
666
130k
The Psychology of Web Performance [Beyond Tellerrand 2023]
tammyeverts
49
3.6k
Exploring the relationship between traditional SERPs and Gen AI search
raygrieselhuber
PRO
4
4.4k
Abbi's Birthday
coloredviolet
4
11k
Optimising Largest Contentful Paint
csswizardry
37
4k
Imperfection Machines: The Place of Print at Facebook
scottboms
270
14k
We Have a Design System, Now What?
morganepeng
55
8.4k
The World Runs on Bad Software
bkeepers
PRO
72
12k
GraphQLの誤解/rethinking-graphql
sonatard
75
12k
The Myth of the Modular Monolith - Day 2 Keynote - Rails World 2024
eileencodes
28
3.7k
A Modern Web Designer's Workflow
chriscoyier
699
190k
Transcript
։ൃऀ͚ͩͰ ιϑτΣΞઃܭΛ ͍͚ͯ͠ͳ͍ ཧ༝ ೆभιϑτΣΞઃܭLabo vol.1 #ddd_labo ܂ാӳࢿ
ࣗݾհ • גࣜձࣾΞϥλφ • 2લ·Ͱ౦ژͷձࣾͰۈ • ݩֶઐ߈ʢʣ • ͖ͳݴޠɿHaskellͱ͔Scalaͱ͔ •
झຯɿεΩϡʔόμΠϏϯάɺΧϝϥ
μΠόʔؒɹืूதʂ
͓͜ͱΘΓ • աڈͷιϑτΣΞઃܭɾ։ൃͷܦݧஊ • ࣦഊͷࣄྫ͔Βֶͼ͍ͨ • ※͋͘·ͰݸਓͷײͰ͢
Agenda • എܠ • ͳͥ։ൃऀ͚ͩͰઃܭͨ͠ͷ͔ʁ • Կ͕ى͔ͬͨ͜ʁ • Կ͔ʁͲ͏͢ΕվળͰ͖ͨͩΖ͏͔ʁ •
υϝΠϯۦಈઃܭͷಓ
Agenda • എܠ • ͳͥ։ൃऀ͚ͩͰઃܭͨ͠ͷ͔ʁ • Կ͕ى͔ͬͨ͜ʁ • Կ͔ʁͲ͏͢ΕվળͰ͖ͨͩΖ͏͔ʁ •
υϝΠϯۦಈઃܭͷಓ
എܠ ͱ͋Δձࣾ ϚʔέςΟϯάπʔϧ (ASP)
ϚʔέςΟϯάπʔϧʁ
طଘϓϩμΫτͷঢ়ଶ • ॏͳΔཁٻΛগͣͭ͠Ճ࣮ͯ͠ϦϦʔε • طଘػೳͷվमσάϨ͕ාͯ͘Ͱ͖ͳ͍ • ΄΅ಉ͡ػೳΛίϐϖͯᷖ͠ճίʔυͷྔ࢈ • εύήςΟίʔυ ƅшƅ)řŵŖ
• ֦ுੑͷݶք͕དྷ͍ͯΔ…ʂ
എܠ 2ձࣾͬͱ͍ͨ͠ɻ ɹιϑτΣΞ։ൃࠓޙͲ͏͢ΕΑ͍͔ʁ ᶃগͣͭ͠ϦϑΝΫλϦϯά͢Δɻ ᶄ࣍ظόʔδϣϯͷ։ൃɾҠߦΛݕ౼͢Δɻ ᶅͲ͏ʹͳΒͳ͍ɻݱ࣮ඇͰ͋Δɻ
എܠ ᶃճؼςετ͕ͳ͘ɺ༷ʹ͍ͭͯѲͰ͖ͯ ͍Δਓ͕͍ͳ͍ͨΊɺϦϑΝΫλϦϯάͷਖ਼͠ ͞Λ୲อͰ͖ͳ͍ɻ ᶄಉ͘͡ϝϯόʔ͕༷ʹ͍ͭͯ໌Δ͘ͳ͍ɻ ߋʹɺઐ༻γεςϜΧελϚΠζΛՃ͍͑ͯ Δސ٬ଘࡏ͢ΔͨΊɺҠߦ͕Ͱ͖ͳ͍Մೳੑ ͕ߴ͍ɻ
͑ᶅ ͑ᶅ ͑ᶅ
δϦශϓϩμΫτ ͋Δ͋Δ
͜͜Ͱ੨ఱͷᯡᯧ
ͬͺΓ ࣍ظόʔδϣϯΛ࡞ͬͯ Ṣճ͢Δͧʂʂʂ by Ғ͍ਓ at ࣾһ૯ձ
࣍ظόʔδϣϯͷ։ൃ ͦΜͳ͜ΜͳͰ ϓϩδΣΫτԽ͞Εͨ ಥવ
Agenda • എܠ • ͳͥ։ൃऀ͚ͩͰઃܭͨ͠ͷ͔ʁ • Կ͕ى͔ͬͨ͜ʁ • Կ͔ʁͲ͏͢ΕվળͰ͖ͨͩΖ͏͔ʁ •
υϝΠϯۦಈઃܭͷಓ
ͳͥ։ൃऀ͚ͩͰઃܭͨ͠ͷ͔ʁ ཁ݅ఆ͔ٛΒड͚ೖΕςετ·Ͱ։ൃͰߦ͏׳ྫ վળཁ όάใࠂ ཁ݅ఆٛ ઃܭ ࣮ ςετ ӡ༻
ͳͥ։ൃऀ͚ͩͰઃܭͨ͠ͷ͔ʁ ෦ߏ։ൃऀ͔͠ཧղͰ͖ͳ͍(?)
ͳͥ։ൃऀ͚ͩͰઃܭͨ͠ͷ͔ʁ ৽͍ٕ͠ज़࠷৽൛ͷػೳΛऔΓೖΕ͍ͨ 7 or 8 (6EOL)
ཁ͢Δʹ
։ൃ෦͚ͩͰ ։ൃ͍ͯ͠Δͱ͍͏ ࣗෛ
Agenda • എܠ • ͳͥ։ൃऀ͚ͩͰઃܭͨ͠ͷ͔ʁ • Կ͕ى͔ͬͨ͜ʁ • Կ͔ʁͲ͏͢ΕվળͰ͖ͨͩΖ͏͔ʁ •
υϝΠϯۦಈઃܭͷಓ
Կ͕ى͔ͬͨ͜ʁ • ΩοΫΦϑ&։ൃ߹॓ • ཁ݅Λूதతʹٞʢͨͭ͠Γʣ • ཉ͍͠ػೳɾ͢ػೳɾফ͖͢ػೳΛ ։ൃऀࢹͰग़͚ͨͩͩͬͨ͠ • େ෩࿊ෑΛ͕͛ͨ̎ϲ݄ޙʹফ͑ͨ
Կ͕ى͔ͬͨ͜ʁ • ͍͟։ൃελʔτͨ͠ͷͷ… • ·ͣಈ͘ͷΛ࡞ͬͯ։ൃͯ͠·͢Ξϐʔϧ • Ͱɺ୭ʹݟͤΕ͍͍ʁ • ͲΜͳػೳ͕ඞཁ͔୭͕ܾΊΔʁ •
ϓϩμΫτΦʔφʔͷ࣮࣭తෆࡏ
Կ͕ى͔ͬͨ͜ʁ • ୭ͬͯ͘Εͳ͍ͷͰখنҊ݅ʹೖ(!) • ϕʔλ൛ͷͣͩͬͨͷʹ̍ܖ • ͳ่͠͠తʹػೳ֬ఆ͠ɺϦϑΝΫλෆೳʹ • ύονΞοϓσʔτͷ࢝·Γ •
ڧͳطࢹײ
Կ͕ى͔ͬͨ͜ʁ • ӦۀʮͰɺطଘͷػೳA͑·͔͢ʁʯ • ൚༻ੑΛҙࣝͯ͠εϦϜʹղ͍ͯͨ͠ • Έ߹ΘͤΕಉ͜͡ͱ࣮ݱͰ͖Δͣʁ • Ӧۀʮ͔Βͳ͍ʯʮސ٬ʹઆ໌Ͱ͖ͳ͍ʯ •
Ӧۀ͚આ໌ॻΛ࡞Δඞཁ͋Γʁ
Կ͕ى͔ͬͨ͜ʁ • چόʔδϣϯ͔Βͷސ٬ͷҠߦՄೳ͔ʁ • ։ൃऀʮچver.ͷσʔλߏͷΛղܾ ͢ΔͷͰ͋ΔͨΊҠߦۃΊͯࠔʯ • ӦۀʮεϜʔζʹҠߦͰ͖ͳ͍ͱചΕͳ͍ʯ • Ғ͍ਓʮҠߦඞਢɻͳΜͱ͔ͤΑɻʯ
Ͳ͏ͯ͜͠͏ͳͬͨʁʁʁ
Agenda • എܠ • ͳͥ։ൃऀ͚ͩͰઃܭͨ͠ͷ͔ʁ • Կ͕ى͔ͬͨ͜ʁ • Կ͔ʁͲ͏͢ΕվળͰ͖ͨͩΖ͏͔ʁ •
υϝΠϯۦಈઃܭͷಓ
ސ٬ͷۀͰ͏ͨΊͷπʔϧ։ൃ ͳͷʹ ސ٬ۀΛ͍ͬͯΔϝϯόʔ͕͍ͳ͍··ઃܭ ར༻ঢ়گΛ͖ͪΜͱѲ͠ ࣮ࡍͷސ٬ۀΛΔϝϯόʔͱ ϢʔεέʔεΛ࡞Δ͖
ސ٬ۀଟذʹΘͨΔͷͨΊ ࢥ͍ͭ͘৭ʑͳύλʔϯʹରԠͰ͖ΔΑ͏ʹ ֦ுੑͱ൚༻ੑΛॏࢹͯ͠͠·ͬͨ Ϣʔεέʔεʹݟ߹͏࠷খͷߏ͔Β࢝ΊΔ͖ ͍͔ͭ͘ͷέʔεʹର͢Δ࣮Λ ͋ͱͰϦϑΝΫλ͢Εྑ͍
࠷খߏͷཁ͕݅Θ͔Βͳ͍ ෆཁͳͷΛΈࠐΜͰͳ͍͔ఆͰ͖ͳ͍ ۀΛཧղ͍ͯ͠Δ εςʔΫϗϧμʔΛཱͯΔ͖
چver.ͷػೳ໊ϫʔΫϑϩʔΛ ҙࣝͯ͠͠·͏͜ͱͰ ಉ͡ػೳΛম͖͠Ͱ࡞ͬͯ͠·͏ چver.ͷ׳शతͳࣾ༻ޠΛཧ ຊདྷͷۀʹඞཁͳ༻ޠΛ͏
࣍ظόʔδϣϯͱฉ͍ͯಥͬΔΞϗʢࣗʣ ̍ਓͰScala, AkkaͰ෦తͳػೳΛ࣮ ؔܕActorϞσϧͷฒߦੑʹϋϚΔ ͱΓ͋͑ͣམͪண͚ ࣗҎ֎ͰอकՄೳͳݴޠΛબͿ͖ ʢͱ͍͑ݸਓతʹྑ͍ܦݧʣ
Agenda • എܠ • ͳͥ։ൃऀ͚ͩͰઃܭͨ͠ͷ͔ʁ • Կ͕ى͔ͬͨ͜ʁ • Կ͔ʁͲ͏͢ΕվળͰ͖ͨͩΖ͏͔ʁ •
υϝΠϯۦಈઃܭͷಓ
ͷυϝΠϯۦಈઃܭͷಓ • ʮ༻ޠཧʯΛ͍ͨ͠ɺͱ͍͏ཉٻ͔Β • ΩʔϫʔυʮϢϏΩλεݴޠʯ͔ΒDDD • ۀʹԊͬͯιϑτΣΞΛ։ൃ͢Δ֓೦ʹ ಉҙ • ݱࡏͷ։ൃͷ͕ஈʑݟ͑ͯ͘Δ
υϝΠϯۦಈઃܭͷಓ • ސ٬ͷۀΛΔਓΛҾ͖ࠐΉ ʢυϝΠϯΤΩεύʔτʣ • ۀͷ֓೦Λదʹදݱ͢Δݴ༿Λߏங͢Δ ʢϢϏΩλεݴޠʣ • ϓϩμΫτͷଟ༷ԽͱίϯςΩετͷղ
ํ๏Ͱͳ͍υϝΠϯۦಈઃܭ • ։ൃͰؕΓ͕ͪͳΛ໌֬ʹ͢ΔͨΊͷ ࢥߟํ๏ͷҰͭ • ͷલͷ࣮ࣗͷ୲ྖҬ͚ͩʹಛԽ͠ ͨ࠷খྖҬͰकΓʹೖ͍͚ͬͯͳ͍ • ۀʹଈͨ͠ʮՁͷ͋ΔϓϩμΫτʯΛಧ ͚ΔͨΊͷ࠷దͳߏΛߟ͑Δ͖
·ͱΊ
Β ୭ͷՁͷͨΊʹ ιϑτΣΞΛઃܭ͠ ։ൃ͢Δͷ͔
ࠓҰ ͍ͦ͏
None