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
mather
October 11, 2016
Technology
0
610
開発者だけでソフトウェア設計をしてはいけない理由
過去の設計・開発を振り返りながらソフトウェア設計を開発者だけで行ってはいけない理由を説明します。
mather
October 11, 2016
Tweet
Share
More Decks by mather
See All by mather
SolidjsでLeacTion!を作り直しました / Rebuilt LeacTion! in Solid.js
mather
0
320
Webフレームワークの功罪 / Advantages and considerable point of Web Frameworks
mather
0
470
LeacTion!のアップデートとプチ勉強会へのいざない / Updates of LeacTion and Petit Meetup
mather
0
480
LeacTion!について / About LeacTion!
mather
0
330
Rubyでワンライナー / One-liner on Ruby
mather
0
470
認知と思考パターン / Cognition and Pattern
mather
1
280
「モデル」を考える / Think about "model"
mather
0
380
Shall we make a speech?
mather
0
240
Elmでライフゲーム / LifeGame in Elm
mather
1
1k
Other Decks in Technology
See All in Technology
退屈なことはDevinにやらせよう〜〜Devin APIを使ったVisual Regression Testの自動追加〜
kawamataryo
4
1.5k
「魔法少女まどか☆マギカ Magia Exedra」の必殺技演出を徹底解剖! -キャラクターの魅力を最大限にファンに届けるためのこだわり-
gree_tech
PRO
0
520
Webブラウザ向け動画配信プレイヤーの 大規模リプレイスから得た知見と学び
yud0uhu
0
200
絶対に失敗できないキャンペーンページの高速かつ安全な開発、WINTICKET × microCMS の開発事例
microcms
0
390
役割は変わっても、変わらないもの 〜スクラムマスターからEMへの転身で学んだ信頼構築の本質〜 / How to build trust
shinop
0
160
AI開発ツールCreateがAnythingになったよ
tendasato
0
110
実践AIガバナンス
asei
3
350
ここ一年のCCoEとしてのAWSコスト最適化を振り返る / CCoE AWS Cost Optimization devio2025
masahirokawahara
1
1.4k
カミナシ社の『ID管理基盤』製品内製 - その意思決定背景と2年間の進化 #AWSUnicornDay / Kaminashi ID - The Big Whys
kaminashi
3
770
今!ソフトウェアエンジニアがハードウェアに手を出すには
mackee
9
4.1k
オブザーバビリティが広げる AIOps の世界 / The World of AIOps Expanded by Observability
aoto
PRO
0
290
20250903_1つのAWSアカウントに複数システムがある環境におけるアクセス制御をABACで実現.pdf
yhana
2
330
Featured
See All Featured
Building Flexible Design Systems
yeseniaperezcruz
328
39k
Mobile First: as difficult as doing things right
swwweet
224
9.9k
10 Git Anti Patterns You Should be Aware of
lemiorhan
PRO
656
61k
Designing Dashboards & Data Visualisations in Web Apps
destraynor
231
53k
[RailsConf 2023] Rails as a piece of cake
palkan
56
5.8k
The Illustrated Children's Guide to Kubernetes
chrisshort
48
50k
Fight the Zombie Pattern Library - RWD Summit 2016
marcelosomers
234
17k
Imperfection Machines: The Place of Print at Facebook
scottboms
268
13k
The Art of Programming - Codeland 2020
erikaheidi
55
13k
Stop Working from a Prison Cell
hatefulcrawdad
271
21k
Six Lessons from altMBA
skipperchong
28
4k
Raft: Consensus for Rubyists
vanstee
140
7.1k
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