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
240
SimpleとEasyの選択
disc99
December 15, 2016
Tweet
Share
More Decks by disc99
See All by disc99
アーキテクチャ選択の裏側
disc99
0
37
120リポジトリを1つのMonorepoに統合した理由
disc99
1
940
モノリスとマイクロサービスを経てモジュラモノリスを導入した実践事例
disc99
25
14k
PaaS DX by Cloud Native Buildpacks
disc99
0
200
全てのAPIをProtocol Buffersで管理する / Manage all APIs with Protocol Buffers
disc99
2
5.1k
Serverless Application
disc99
1
2.6k
イベント駆動マイクロサービスアーキテクチャ / Event-Driven Microservices Architecture
disc99
4
2.6k
Event Sourcing 101
disc99
1
170
NGINX Blogから考えるマイクロサービスのProxy設計
disc99
0
860
Other Decks in Technology
See All in Technology
なぜ「Event Sourcing」を選択したのか〜事実に基づくことの重要性〜/Why did we choose "Event Sourcing"?
bitkey
0
180
プラクティスの名前は言わない方がいい / Not to mention the name of the practice
3l4l5
2
490
RaspberryPi CM4(CM5も)面白いぞ!
nonnoise
1
310
Autonomous Database サービス・アップデート (FY25)
oracle4engineer
PRO
1
510
Roomの監視可能なクエリのカスタマイズとレガシーコードへの適用
shiita0903
2
160
Amazon Bedrock 2025 年の熱いアップデート (2025/3 時点)
icoxfog417
PRO
3
540
EC-CUBEはサーバレスで動かせるのか?
yukishimada
1
110
Amazon Bedrock Knowledge basesにLangfuse導入してみた
sonoda_mj
2
390
ライフステージの変化を乗り越える 探索型のキャリア選択
tenshoku_draft
2
530
きのこカンファレンス_ランチスポンサーセッション
kabaya
1
390
やっぱり余白が大切だった話
kakehashi
PRO
3
520
エンジニア採用と 技術広報の実践/acaricsummit2025
nishiuma
1
160
Featured
See All Featured
Building a Modern Day E-commerce SEO Strategy
aleyda
38
7.1k
Let's Do A Bunch of Simple Stuff to Make Websites Faster
chriscoyier
507
140k
It's Worth the Effort
3n
184
28k
Making the Leap to Tech Lead
cromwellryan
133
9.1k
The Web Performance Landscape in 2024 [PerfNow 2024]
tammyeverts
4
460
Code Reviewing Like a Champion
maltzj
521
39k
Keith and Marios Guide to Fast Websites
keithpitt
411
22k
Build The Right Thing And Hit Your Dates
maggiecrowley
34
2.6k
For a Future-Friendly Web
brad_frost
176
9.6k
Fontdeck: Realign not Redesign
paulrobertlloyd
83
5.4k
StorybookのUI Testing Handbookを読んだ
zakiyama
28
5.5k
Sharpening the Axe: The Primacy of Toolmaking
bcantrill
40
2k
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