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
現代に求められるJavaコミュニティとは / What should be the Java...
Search
Shin Tanimoto
May 18, 2019
Technology
0
870
現代に求められるJavaコミュニティとは / What should be the Java Community of Today?
JJUG CCC 2019 Spring 基調講演
#JJUG #JJUG_CCC #ccc_e1
Shin Tanimoto
May 18, 2019
Tweet
Share
More Decks by Shin Tanimoto
See All by Shin Tanimoto
クラウドネイティブ時代のコンテナ環境におけるJavaアプリケーションのメトリクス・ログ・トレースモニタリング
shintanimoto
5
2.2k
26 Java Years
shintanimoto
0
46
Let’s Have Fun with Reactive Programming, Using Reactor and WebFlux
shintanimoto
0
230
Monitoring and Visualizing Your (Micro)services
shintanimoto
0
330
人生がときめく「学び」の魔法 / The Life-Changing Magic of Studying
shintanimoto
6
1.6k
業務で使いたいWebFluxによるReactiveプログラミング / Introduction to Reactive Programming using Spring WebFlux
shintanimoto
9
9k
from old Java to modern Java (2017) #jjug
shintanimoto
4
1.5k
Spring Cloud Sleuth + Zipkin with Elasticsearch #zipkin_jp
shintanimoto
1
1.2k
Stream API 入門 #jjug #javajo
shintanimoto
4
3.9k
Other Decks in Technology
See All in Technology
ドメインの本質を掴む / Get the essence of the domain
sinsoku
2
150
適材適所の技術選定 〜GraphQL・REST API・tRPC〜 / Optimal Technology Selection
kakehashi
1
150
誰も全体を知らない ~ ロールの垣根を超えて引き上げる開発生産性 / Boosting Development Productivity Across Roles
kakehashi
1
220
Application Development WG Intro at AppDeveloperCon
salaboy
0
180
元旅行会社の情シス部員が教えるおすすめなre:Inventへの行き方 / What is the most efficient way to re:Invent
naospon
2
330
なぜ今 AI Agent なのか _近藤憲児
kenjikondobai
4
1.3k
Incident Response Practices: Waroom's Features and Future Challenges
rrreeeyyy
0
160
いざ、BSC討伐の旅
nikinusu
2
780
複雑なState管理からの脱却
sansantech
PRO
1
140
OCI Network Firewall 概要
oracle4engineer
PRO
0
4.1k
ISUCONに強くなるかもしれない日々の過ごしかた/Findy ISUCON 2024-11-14
fujiwara3
8
860
Exadata Database Service on Dedicated Infrastructure(ExaDB-D) UI スクリーン・キャプチャ集
oracle4engineer
PRO
2
3.2k
Featured
See All Featured
How STYLIGHT went responsive
nonsquared
95
5.2k
Visualizing Your Data: Incorporating Mongo into Loggly Infrastructure
mongodb
42
9.2k
The Invisible Side of Design
smashingmag
298
50k
Exploring the Power of Turbo Streams & Action Cable | RailsConf2023
kevinliebholz
27
4.3k
[RailsConf 2023] Rails as a piece of cake
palkan
52
4.9k
XXLCSS - How to scale CSS and keep your sanity
sugarenia
246
1.3M
The Illustrated Children's Guide to Kubernetes
chrisshort
48
48k
BBQ
matthewcrist
85
9.3k
Teambox: Starting and Learning
jrom
133
8.8k
[Rails World 2023 - Day 1 Closing Keynote] - The Magic of Rails
eileencodes
33
1.9k
Designing on Purpose - Digital PM Summit 2013
jponch
115
7k
Large-scale JavaScript Application Architecture
addyosmani
510
110k
Transcript
ݱʹٻΊΒΕΔ+BWBίϛϡχςΟͱ ʙ++6(جௐߨԋ DDD@F ຊ+BWBϢʔβάϧʔϓϦʔμʔ "DSPRVFTU5FDIOPMPHZ$P -5% &WFSGPSUI$P -5% ୩ຊ৺ !DFSP@U
ࣗݾհ w ୩ຊ৺ 4IJO5BOJNPUP w ࣾͰಇ͘ΤϯδχΞʢओʹΞʔΩςΫτʣ w "DSPRVFTU5FDIOPMPHZגࣜձࣾ w
גࣜձࣾ&WFSGPSUI w +BWB$IBNQJPO w 0SBDMF(SPVOECSFBLFS"NCBTTBEPS w 5XJUUFS!DFSP@U w 'BDFCPPLTIJOUBOJNPUP
͖͞΄Ͳ ++6(Ϧʔμʔʹ ͳΓ·ͨ͠
͜Ε͔Β++6(ΛͲ͏͢Δͷ͔ʁ
ΞδΣϯμ ͜Ε͔Β++6(ͰΓ͍ͨ͜ͱ ͳͥ++6(ͱ$$$ͷ৫Λ͚ͨͷ͔ ʢҎ߱ɺεϥΠυඇެ։ʣ ͍·ͷຊ*5ۀքͷঢ়گΛݟͭΊ͢
ࠓޙͷίϛϡχςΟͷ͋ΓํΛߟ͑Δ ΈΜͳͷՁ؍Λଚॏ͢Δ
͜Ε͔Β++6(Ͱ Γ͍ͨ͜ͱ
ᶃ +BWBͷϦϦʔεͷै ᶄ ւ֎ͷ+6(ͱͷ࿈ܞ ᶅ ํ+BWBίϛϡχςΟͱͷ࿈ܞ ᶆ ॳ৺ऀ͚ίϯςϯπͷॆ࣮
ᶃ+BWBͷϦϦʔεͷै w എܠ w ͝ͱͷϦϦʔεαΠΫϧ ʢֶͿεϐʔυ͕ૣ͘ͳΔʣ w ϥΠηϯεϞσϧͷมߋ ʢͦΕʹ͏ࠞཚʣ
ᶃ+BWBͷϦϦʔεͷै w ࠓޙΔ͜ͱ w ษڧձͰΞοϓσʔτ༰ͷڞ༗ w άουϓϥΫςΟεͷڞ༗
ᶄւ֎+6(ͱͷ࿈ܞ w എܠ w ৽͍ٕ͠ज़ւͷ͜͏͔Βͬͯ͘Δ w ৽͍ٕ͠ज़ͷใΛಘΔબࢶΛ૿͢
ᶄւ֎+6(ͱͷ࿈ܞ w ʢ༨ஊʣ w ৽͍͠ใΛಘΔ બࢶΛ૿͢ʢதʙ্ڃऀ͚ʣ w ͍ࠐΜͩใΛڞ༗͢Δ બࢶΛݮΒ͢ʢॳʙதڃऀ͚ʣ
ᶄւ֎+6(ͱͷ࿈ܞ w ํͷ࿈ܞ w ւ֎ˠຊ w ৽͍͠ใΛಘΔ w ຊˠւ֎ w
ຊͷ։ൃݱͰഓͬͨݟͳͲͷԠ༻ࣄྫɺ ेʹւ֎ʹग़͢Ձ͕͋Δ
ͦ͜ʹཱ͔ͪͩΔɺӳޠͷน
ᶄւ֎+6(ͱͷ࿈ܞ w ӳޠͷนΛΓӽ͑Ζʂ w ʮӳޠ͕େࣄʯͬͯԯճ͘Γ͔͑͠ݴ͏ΑΓ ւ֎ΧϯϑΝϨϯεʹࢀՃ͢Δํ͕खͬऔΓૣ͍ w ʮւ֎ΧϯϑΝϨϯεʹߦ͚ʯͬͯ ԯճ͘Γ͔͑͠ݴ͏ΑΓ ӳޠηογϣϯΛ૿͢΄͏͕खͬऔΓૣ͍
ᶄւ֎+6(ͱͷ࿈ܞ w $$$ͷӳޠηογϣϯʢ˞௨༁ͳ͠ʣ w ळ w य़ w ळ ΞϯΧϯϑΝϨϯε
w य़ ϋϯζΦϯ
ᶄւ֎+6(ͱͷ࿈ܞ w ࠓޙΓ͍ͨ͜ͱ w ++6($$$ͷӳޠηογϣϯΛܧଓվળ w +0OTFOόΠΫπΞʔͷܧଓ w ւ֎ͷ+BWBΤϯδχΞ͕ຊʹཱྀߦ͢Δࡍɺ ཱྀߦઌͷίϛϡχςΟΠϕϯτʹࢀՃͯ͠Β͏
w ຊͷ+BWBΤϯδχΞ͕ւ֎Πϕϯτʹ ࢀՃొஃ͢ΔͷΛαϙʔτ͍ͨ͠ʢʂʣ
ใΛಘΔ͜ͱൃ৴͢Δ͜ͱ ͍ͣΕʹ͓͍ͯ ࣗͨͪͷΓํΛʮ٬؍తʯʹ ݟͭΊΔػձͱͳΔ
ᶅํ+BWBίϛϡχςΟͱͷ࿈ܞ w എܠ w ํͷ+BWBίϛϡχςΟ͕ొஃऀΛݺͿࡍͷ ߤඅ॓ധඅαϙʔτΛଓ͚͍ͯΔ w ͲΕཱ͚͍ͩͬͯΔ͔͔Βͳ͍ w ͦͦํͰԿʹࠔ͍ͬͯΔ͔ΛΒͳ͍
ᶅํ+BWBίϛϡχςΟͱͷ࿈ܞ w ࠓޙΓ͍ͨ͜ͱ w ֤ͷ+BWBίϛϡχςΟͱͷ ఆظతͳΦϯϥΠϯձٞ w ίϛϡχςΟӡӦͷͨΊͷϦιʔεࢧԉ
ᶆॳ৺ऀ͚ίϯςϯπͷॆ࣮ w എܠ w ++6($$$ͷ$BMMGPS1BQFSTʹ Ϩϕϧͷߴ͍Ԡื͕ଟ͘དྷΔ w ॳ৺ऀʹ͍͠ηογϣϯ͕΄ͱΜͲ w ++6(φΠτηϛφʔॳ৺ऀ͚
ʹʙճ͔͠Ͱ͖͍ͯͳ͍
ᶆॳ৺ऀ͚ίϯςϯπͷॆ࣮ w ͦ͏ͳΔഎܠ w ਓجຊతʹʮֶ͕ࣗΜͩ͜ͱʯ ʮ๊͕͍ࣗ͑ͯͨ՝ʯΛத৺ʹ͢ w ొஃ͢ΔΤϯδχΞϨϕϧ͕ߴ͍ ֶΜͩ͜ͱɺ՝ͷϨϕϧ͕ߴ͍ w
ॳ৺ऀ͚ͷηογϣϯ ͦΕͱผͰ४උ͠ͳͯ͘ͳΒͳ͍
ʢืूʣ ॳ৺ऀ͚ͷΛ͍ͨ͠ਓ ʮͦΕ͚ͩͰوॏʯͳͷͰ ͥͻφΠτηϛφʔͰͷొஃ $BMMGPS1BQFSTఏग़Λ ͍ͯͩ͘͠͞ʂ
ᶆॳ৺ऀ͚ίϯςϯπͷॆ࣮ w ࠓޙΓ͍ͨ͜ͱ w ॳ৺ऀ͚ηογϣϯϋϯζΦϯͷॆ࣮ w اۀͱΉʁ w ॳ৺ऀ͚ߨशΛߦ͏ΤϯδχΞʹରͯ͠ ΠϯηϯςΟϒΛઃ͚Δʁ
ͱɺΓ͍ͨ͜ͱ༷ʑ͋Γ·͕͢
ӡӦͷख͕Γͳ͍ʂ
ͳͥ++6(ͱ$$$ͷ ৫Λ͚ͨͷ͔ʁ
γϯϓϧͳཧ༝ɿ ӡӦͷϦιʔεෆ
ϦιʔεෆͰʁ ৫Λ͚Δʁ അࣛͳͷʁࢮ͵ͷʁ
͍··Ͱଧͬͨࡦ $$$ϘϥϯςΟΞͷืू Πϕϯτελοϑͷืू
݁Ռ ΠϕϯτӡӦ͕େ෯ʹָʹͳͬͨ ʢװࣄ͕ർฐ͠ͳ͘ͳͬͨʣ
࣍ͷ՝ ++6(װࣄͷෆ
++6(ϘϥϯςΟΞͷװࣄ͕ ࣄͷ߹ؒʹӡӦΛ͍ͯ͠Δ ϘϥϯςΟΞͳͷͰ ੵۃతͳਓ΄Ͳෛՙ͕ूத͢Δ ʢ͍͠ਓ͕શ෦Δʣ
ফۃతʹͳͬͯΔ࣌ͷ ʮ͋ΕΓ͍ͨɻ͜ΕΓ͍ͨʯ ੵۃతʹͳͬͯΔ࣌ͷ ʮφΠτηϛφʔͱ$$$ͷ४උͰ ͯͦ͘͠ΕͲ͜Ζ͡Όͳ͍ʯ
ʮΓ͍ͨ͜ͱʯͱ ʮΔ͖͜ͱʯͷ όϥϯε
װࣄձͰͷ͍͍͕ͩͨ ʮ࣍ͷʯ++6($$$ͷ དྷ݄ɺ݄ͷװࣄձ͔Β ++6($$$'BMMͷ ४උ͕࢝·Δ
ʮ$$$͕ෛ୲ͳΒ $$$Λճʹ͢Ε ͍͍͡Όͳ͍ʁʯ
ʹճ͔ͩΒͦ͜ ӡӦεΩϧΛܧଓͰ͖Δ ʢճʹ͢ΔͱɺΕΔʣ
ʮ$$$͕ෛ୲ͳΒ ֎෦ʹҕୗ͢Ε ͍͍͡Όͳ͍ʁʯ
͍·ͷ༧ࢉͰগ͠ݫ͍͠ɻ
ʮ༧ࢉ͕Γͳ͍ͳΒ $$$Λ༗ঈԽ͢Ε ͍͍͡Όͳ͍ʁʯ
༗ঈΠϕϯτΛߦ͏͜ͱʹΑΔ װࣄͷϓϨογϟʔ૿
ീํ࠹͕Γ͡ΌΜʂ
ʮ$$$͕ෛ୲Ͱ͋Ε $$$ͱ++6(ΛΓͤ ͦΕͧΕਐΉͷͰʁʯ
ͦ͏ͬͯɺࢼߦࡨޡΛ͠ͳ͕Β Γ͍ͨ͜ͱΛ Ͱ͖ΔΑ͏ʹ͢ΔͨΊʹ ৫Λ࡞͍͖ͬͯ·͢ʂ
Ҏ্ʂ ʢҎ߱εϥΠυඇެ։ʣ