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
940
現代に求められる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
Spring Bootで実装とインフラをこれでもかと分離するための試み
shintanimoto
7
1k
クラウドネイティブ時代のコンテナ環境におけるJavaアプリケーションのメトリクス・ログ・トレースモニタリング
shintanimoto
5
2.4k
26 Java Years
shintanimoto
0
82
Let’s Have Fun with Reactive Programming, Using Reactor and WebFlux
shintanimoto
0
280
Monitoring and Visualizing Your (Micro)services
shintanimoto
1
370
人生がときめく「学び」の魔法 / The Life-Changing Magic of Studying
shintanimoto
6
1.7k
業務で使いたいWebFluxによるReactiveプログラミング / Introduction to Reactive Programming using Spring WebFlux
shintanimoto
9
9.4k
from old Java to modern Java (2017) #jjug
shintanimoto
4
1.7k
Spring Cloud Sleuth + Zipkin with Elasticsearch #zipkin_jp
shintanimoto
1
1.2k
Other Decks in Technology
See All in Technology
Project Referencesを活用した実行環境ごとのtsconfig最適化
itatchi3
1
220
AIのための オンボーディングドキュメントを整備する - hirotea
hirotea
8
1.9k
バックエンドのコードファーストなOpenAPIスキーマ駆動開発 - TSKaigi2025
yujitorii
1
250
型がない世界に生まれ落ちて 〜TypeScript運用進化の歴史〜
narihara
1
190
Introduction to Sansan, inc / Sansan Global Development Center, Inc.
sansan33
PRO
0
2.6k
変化に強いテーブル設計の勘所 / Table design that is resistant to changes
soudai
47
13k
SmartHRの複数のチームにおけるMCPサーバーの活用事例と課題
yukisnow1823
1
800
会社員しながら本を書いてきた知見の共有
sat
PRO
2
640
大事なのは、AIの精度だけじゃない!〜1円のズレも許されない経理領域とAI〜
jun_nemoto
8
4.6k
テスト設計チュートリアル ちびこん編 ’25
omn
1
430
VueUseから学ぶ実践TypeScript #TSKaigi #TSKaigi2025
bengo4com
3
5.3k
Redmineの意外と知らない便利機能 (Redmine 6.0対応版)
vividtone
0
650
Featured
See All Featured
Refactoring Trust on Your Teams (GOTO; Chicago 2020)
rmw
34
3k
10 Git Anti Patterns You Should be Aware of
lemiorhan
PRO
656
60k
The Cult of Friendly URLs
andyhume
78
6.4k
Art, The Web, and Tiny UX
lynnandtonic
298
21k
Creating an realtime collaboration tool: Agile Flush - .NET Oxford
marcduiker
30
2.1k
Templates, Plugins, & Blocks: Oh My! Creating the theme that thinks of everything
marktimemedia
30
2.4k
Improving Core Web Vitals using Speculation Rules API
sergeychernyshev
14
880
Reflections from 52 weeks, 52 projects
jeffersonlam
349
20k
個人開発の失敗を避けるイケてる考え方 / tips for indie hackers
panda_program
105
19k
The Art of Delivering Value - GDevCon NA Keynote
reverentgeek
14
1.5k
Facilitating Awesome Meetings
lara
54
6.4k
The Illustrated Children's Guide to Kubernetes
chrisshort
48
50k
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(ΛΓͤ ͦΕͧΕਐΉͷͰʁʯ
ͦ͏ͬͯɺࢼߦࡨޡΛ͠ͳ͕Β Γ͍ͨ͜ͱΛ Ͱ͖ΔΑ͏ʹ͢ΔͨΊʹ ৫Λ࡞͍͖ͬͯ·͢ʂ
Ҏ্ʂ ʢҎ߱εϥΠυඇެ։ʣ