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
SimpleとEasyの選択
Search
disc99
December 15, 2016
Technology
1
260
SimpleとEasyの選択
disc99
December 15, 2016
Tweet
Share
More Decks by disc99
See All by disc99
マルチプロダクト×マルチテナントを支えるモジュラモノリスを中心としたアソビューのアーキテクチャ
disc99
1
780
アーキテクチャ選択の裏側
disc99
0
79
120リポジトリを1つのMonorepoに統合した理由
disc99
1
1.1k
モノリスとマイクロサービスを経てモジュラモノリスを導入した実践事例
disc99
25
14k
PaaS DX by Cloud Native Buildpacks
disc99
0
220
全てのAPIをProtocol Buffersで管理する / Manage all APIs with Protocol Buffers
disc99
2
5.3k
Serverless Application
disc99
1
2.8k
イベント駆動マイクロサービスアーキテクチャ / Event-Driven Microservices Architecture
disc99
4
2.8k
Event Sourcing 101
disc99
1
180
Other Decks in Technology
See All in Technology
研究開発と製品開発、両利きのロボティクス
youtalk
1
520
サンドボックス技術でAI利活用を促進する
koh_naga
0
200
ChatGPTとPlantUML/Mermaidによるソフトウェア設計
gowhich501
1
130
Function Body Macros で、SwiftUI の View に Accessibility Identifier を自動付与する/Function Body Macros: Autogenerate accessibility identifiers for SwiftUI Views
miichan
2
180
AWSで始める実践Dagster入門
kitagawaz
1
610
AI開発ツールCreateがAnythingになったよ
tendasato
0
120
テストを軸にした生き残り術
kworkdev
PRO
0
200
LLMを搭載したプロダクトの品質保証の模索と学び
qa
0
1k
実践!カスタムインストラクション&スラッシュコマンド
puku0x
0
370
【実演版】カンファレンス登壇者・スタッフにこそ知ってほしいマイクの使い方 / 大吉祥寺.pm 2025
arthur1
1
820
バイブスに「型」を!Kent Beckに学ぶ、AI時代のテスト駆動開発
amixedcolor
2
540
EncryptedSharedPreferences が deprecated になっちゃった!どうしよう! / Oh no! EncryptedSharedPreferences has been deprecated! What should I do?
yanzm
0
230
Featured
See All Featured
Thoughts on Productivity
jonyablonski
70
4.8k
Done Done
chrislema
185
16k
Side Projects
sachag
455
43k
Connecting the Dots Between Site Speed, User Experience & Your Business [WebExpo 2025]
tammyeverts
8
520
How to Ace a Technical Interview
jacobian
279
23k
Code Reviewing Like a Champion
maltzj
525
40k
Measuring & Analyzing Core Web Vitals
bluesmoon
9
580
[Rails World 2023 - Day 1 Closing Keynote] - The Magic of Rails
eileencodes
36
2.5k
Stop Working from a Prison Cell
hatefulcrawdad
271
21k
Automating Front-end Workflow
addyosmani
1370
200k
RailsConf & Balkan Ruby 2019: The Past, Present, and Future of Rails at GitHub
eileencodes
139
34k
Documentation Writing (for coders)
carmenintech
74
5k
Transcript
SimpleͱEasyͷબ @disc99 #ShinjukuLT
͘͡ • എܠ • SimpleͱEasyͷҧ͍ • ͲͪΒΛબͿ? • ·ͱΊ
എܠ
࠷ۙͷSpring • Spring BootʹΑ Δߴ։ൃ • ॱௐʹ • ࠾༻OK
Spring Boot and more… • ϝδϟʔͳΞʔΩςΫνϟɺϛυϧΣΞͷେΛα ϙʔτ • ެࣜυΩϡϝϯτ๛ •
࠾༻૿͑ใྔଟ͍ • Springࣗମͷ֦ுੑߴ͍ • OSSͳͷͰΘ͔Βͳ͍෦ιʔεಡΊΔ
͜ΕͰָʹͳΔͣ…
ͱ͋ΔϨϏϡʔίϝϯτ • Springͷ͜ͷػೳΛ͑… • ͜ͷDIίϯςφͷॳظԽϑΣʔζͰ… • ৽͘͠Ճ͞Εͨ͜ͷϥΠϒϥϦΛ͏ͱ… • ςετίʔυͰSpring 4.3͔Β…
͍͘Βใ͕͋ͬͯ ୭Ͱ ཧղ͕͍͘Θ͚Ͱͳ͍
͕ࣗ͑ͯ ୭Ͱ͑ΔͱݶΒͳ͍
Ͳ͏͢Δ?
CodeLunch.fm#16 • power-assert։ൃͷܦҢ(SimpleͱEasy) • γϯϓϧ͞ͷඞཁੑ • RailsConf 2012 جௐߨԋ Rich
Hickey(Clojure࡞ऀ)
SimpleͱEasyͷҧ͍ • Simple • ରٛޠ : Complex • ୯७ɺ؆ܿ •
1ͭͷׂɺ֓೦ • ෳͷΈ߹ΘͤͰͳ͍ • ٬؍త → ୭͔ΒΈͯSimple • Easy • ରٛޠ : Hard • ؆୯ • ۙͳͷ • ཧղɺܦݧɺεΩϧηο τ͔Βஅ • ओ؍త → ݸਓʹେ͖͘ґଘ
SimpleΛબͿ͜ͱ • ֶशίετ͕͍ • ػහ • ඞཁͳͷ͚ͩΛબͰ͖Δ • มߋ͕༰қ •
͕ىͬͯ͜ݪҼ͕ಛఆ͍͢͠ → ࠷ऴతʹEasy
ϨϏϡʔίϝϯτͷཧ༝ • convention over configuration = ֮͑ Δϧʔϧ • Easyʹ͢ΔͨΊͷϑ
ϨʔϜϫʔΫ
SimpleΛબͿͷ͕ਖ਼͍͠?
ຊʹదʹΈ߹ΘͤΕΔ? ݴޠจԽʹద͍ͯ͠Δ?
SimpleΛΈ߹ΘͤΔ • ৗʹదͳΈ߹ΘͤΛબͰ͖Δਓࡐɺϝϯςίετͷ֬อ ͕Մೳ? • Έ߹ΘͤΛ͏ϝϯόʔͷنεΩϧηοτʹ͕ͳ͍? • Έ߹Θͤ෦͕ंྠͷ࠶ൃ໌ɺಠࣗϑϨʔϜϫʔΫԽ͠ͳ͍? • γεςϜͷϥΠϑαΠΫϧతʹϖΠͰ͖Δ?
• Έ߹Θͤʹࣦഊͨ࣌͠ɺޙΓͰ͖Δ?
ݴޠจԽͷཧղ • JavaScriptɺNode.js: ϒϥβؒͷ࣮ࠩɺUnixֶΛड͚ͨNode.js • ϝΠϯετϦʔϜͷมԽ͕ܹ͍͠ɺϑϧελοΫϑϨʔϜϫʔΫ͕ଘଓ͠ʹ͍͘ • γϯϓϧͳͷΛΈ߹ΘͤΔUnixֶ • Ruby:
ϑϧελοΫϑϨʔϜϫʔΫRailsͷѹతγΣΞ • SinatraͰγϯϓϧͳΈ߹ΘͤΛબΜͰ݁ہRailsԽ (rebuild.fm#116) • Java: ͞ͱҾ͖͑ʹߴ͍ޙํޓੑͱ҆ఆͨ͠ϥϯλΠϜ • ेʹރΕͨAPI܈ɺJavaඪ४༷ɺSpring͕ഓ͖ͬͯͨΤίγεςϜ • Java 8ʹΑΓؔܕݴޠ͔ΒֶͿ͜ͱଟ͍͕ɺؔܕϓϩάϥϛϯάͷͨΊͷݴޠͰ ͳ͍ • Scala: ؔܕͱΦϒδΣΫτࢦͷϋΠϒϦου • ΦϒδΣΫτࢦతʹॻ͚Δ͚ͲɺؔܕύϥμΠϜΛ׆͔͢
Simpleॏཁ ͨͩίϯςΩετ࣍ୈͰ EasyΛબ͖͢߹͋Δ
ࠞಉ͍͢͠ݴ༿ • γϯϓϧ • ؆୯ • ָ • ศར •
͍͍ • ༏Ε͍ͯΔ • ΠέͯΔ → Simple? Easy? ओ؍? ٬؍? ڥ? ٕज़എܠ? • ෳࡶ • ͍͠ • ͔Γʹ͘ • ͍ͮΒ͍ • ਏ͍ • Πέͯͳ͍ → Complex ? Hard? ओ؍? ٬؍? ڥ? ٕज़എܠ?
·ͱΊ • SimpleͱEasy͕ҧ͏͜ͱΛཧղ͢Δ • ࣗͷ͍Δڥɺٕज़എܠΛཧղ͢Δ • ͷதʹग़ͯ͘Δݴ༿ʹҙ͢Δ
ࢀߟ • CodeLunch.fm#16 • http://codelunch.fm/16/ • γϯϓϧ͞ͷඞཁੑ • http://eed3si9n.com/ja/simplicity-matters