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
900
現代に求められる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.3k
26 Java Years
shintanimoto
0
56
Let’s Have Fun with Reactive Programming, Using Reactor and WebFlux
shintanimoto
0
240
Monitoring and Visualizing Your (Micro)services
shintanimoto
0
350
人生がときめく「学び」の魔法 / The Life-Changing Magic of Studying
shintanimoto
6
1.6k
業務で使いたいWebFluxによるReactiveプログラミング / Introduction to Reactive Programming using Spring WebFlux
shintanimoto
9
9.2k
from old Java to modern Java (2017) #jjug
shintanimoto
4
1.6k
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
RSNA2024振り返り
nanachi
0
580
白金鉱業Meetup Vol.17_あるデータサイエンティストのデータマネジメントとの向き合い方
brainpadpr
6
760
AndroidXR 開発ツールごとの できることできないこと
donabe3
0
130
ハッキングの世界に迫る~攻撃者の思考で考えるセキュリティ~
nomizone
13
5.2k
なぜ私は自分が使わないサービスを作るのか? / Why would I create a service that I would not use?
aiandrox
0
750
Data-centric AI入門第6章:Data-centric AIの実践例
x_ttyszk
1
410
地方拠点で エンジニアリングマネージャーってできるの? 〜地方という制約を楽しむオーナーシップとコミュニティ作り〜
1coin
1
230
次世代KYC活動報告 / 20250219-BizDay17-KYC-nextgen
oidfj
0
260
開発スピードは上がっている…品質はどうする? スピードと品質を両立させるためのプロダクト開発の進め方とは #DevSumi #DevSumiB / Agile And Quality
nihonbuson
2
3k
ユーザーストーリーマッピングから始めるアジャイルチームと並走するQA / Starting QA with User Story Mapping
katawara
0
210
運用しているアプリケーションのDBのリプレイスをやってみた
miura55
1
730
AndroidデバイスにFTPサーバを建立する
e10dokup
0
250
Featured
See All Featured
RailsConf & Balkan Ruby 2019: The Past, Present, and Future of Rails at GitHub
eileencodes
133
33k
Unsuck your backbone
ammeep
669
57k
How STYLIGHT went responsive
nonsquared
98
5.4k
The Cult of Friendly URLs
andyhume
78
6.2k
Making the Leap to Tech Lead
cromwellryan
133
9.1k
Distributed Sagas: A Protocol for Coordinating Microservices
caitiem20
330
21k
Done Done
chrislema
182
16k
The Art of Delivering Value - GDevCon NA Keynote
reverentgeek
10
1.3k
XXLCSS - How to scale CSS and keep your sanity
sugarenia
248
1.3M
Writing Fast Ruby
sferik
628
61k
Docker and Python
trallard
44
3.3k
For a Future-Friendly Web
brad_frost
176
9.5k
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(ΛΓͤ ͦΕͧΕਐΉͷͰʁʯ
ͦ͏ͬͯɺࢼߦࡨޡΛ͠ͳ͕Β Γ͍ͨ͜ͱΛ Ͱ͖ΔΑ͏ʹ͢ΔͨΊʹ ৫Λ࡞͍͖ͬͯ·͢ʂ
Ҏ্ʂ ʢҎ߱εϥΠυඇެ։ʣ