Lock in $30 Savings on PRO—Offer Ends Soon! ⏳
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
年齢も経験も関係ない!ステップアップするためのJavaコミュニティ活用術
Search
ihcomega56
November 18, 2017
1
7k
年齢も経験も関係ない!ステップアップするためのJavaコミュニティ活用術
JJUG CCC 2017 Fall
ihcomega56
November 18, 2017
Tweet
Share
More Decks by ihcomega56
See All by ihcomega56
JEP 455: Primitive Types in Patterns, instanceof, and switch (Preview)
ihcomega56
0
57
シリコンバレーのチームで経験したふりかえり - 共通点とギャップ / retrospectives in silicon valley
ihcomega56
5
1.8k
「サプライチェーン攻撃」に立ち向かう!SBOMを使った脆弱性管理がもたらす品質とスピード向上
ihcomega56
2
2.2k
アプリケーション開発者目線で語る、明日から始めるDevSecOps
ihcomega56
0
140
パターンマッチングを学んで新しいJavaの世界へ!Java 18までの目玉機能をおさらいしよう / Java 18 pattern matching
ihcomega56
3
1.3k
SCAとDockerを触ってみよう!DecSecOps入門ワークショップ / SCA and Docker workshop
ihcomega56
1
230
JFrogのDevOps Platformづくりを支えるオブザーバビリティ / JFrog Observability
ihcomega56
0
440
SBOMでソフトウェアを守れ!10年後も自信を持ってリリースするために今始めるDevSecOps / DevSecOps with SBOM for yourself 10 years from now
ihcomega56
1
5.9k
Javaアプリケーションの アーティファクト管理と DevSecOps / Java artifacts management and DevSecOps
ihcomega56
0
2.4k
Featured
See All Featured
The World Runs on Bad Software
bkeepers
PRO
65
11k
A Tale of Four Properties
chriscoyier
156
23k
Java REST API Framework Comparison - PWX 2021
mraible
PRO
28
8.2k
Code Reviewing Like a Champion
maltzj
520
39k
Dealing with People You Can't Stand - Big Design 2015
cassininazir
365
24k
Building a Scalable Design System with Sketch
lauravandoore
459
33k
Evolution of real-time – Irina Nazarova, EuRuKo, 2024
irinanazarova
4
400
The Success of Rails: Ensuring Growth for the Next 100 Years
eileencodes
44
6.8k
Being A Developer After 40
akosma
87
590k
A better future with KSS
kneath
238
17k
YesSQL, Process and Tooling at Scale
rocio
169
14k
Unsuck your backbone
ammeep
669
57k
Transcript
ྸܦݧؔͳ͍ʂ εςοϓΞοϓ͢ΔͨΊͷ +BWBίϛϡχςΟ׆༻ज़ 4BU ++6($$$'BMM KKVH@DDDDDD@F
ૣͰ͕͢ ίϛϡχςΟͱͱʹ εςοϓΞοϓ͢ΔͨΊʹ ඞཁͳ͜ͱͱʁ DDD@F
Δ DDD@F
Δ ग़͢ DDD@F
Δ ग़͢ ͘Γ͔͑͠ DDD@F
͜Ε͚ͩ DDD@F
͔Ε͜Ε΄ͲࣗͳΓʹ ͜ͷαΠΫϧΛճ͖ͯͯ͠ɺ ͬͯͯΑ͔ͬͨʙͱ ࢥ͍ͬͯΔͱ͓ͯ͠͠·͢ DDD@F
Θͨ͠ Α͜ͳ!JIDPNFHB גࣜձࣾ'0-*0 +BWBঁࢠ෦ ++6( ےτϨΛ͕ΜΓ͍ͨ DDD@F
++6($$$ܦݧ Ͳͷ͘Β͍Ͱ͔͢ʁ DDD@F
ॳࢀՃͷํʁ DDD@F
ฉ͖͍ͨηογϣϯ બͦ͏Ͱ͔͢ʁ DDD@F
༗ҙٛʹաͤͦ͝͏Ͱ͔͢ʁ DDD@F
ॳࢀՃ࣌ɺࢲແཧͰͨ͠ DDD@F
य़ʙळ ‣ਓࣄͷޱंʹͤΒΕଔͰ*5ۀք ‣1$ͷܦݧͱ͍͏ͱ8PSEͱ4LZQF͘Β͍ ‣ݚमͰݹͷ+BWBΛମಘ ‣JGจͱGPSจͱຊޠΛثʹࣄ ‣Δؾͱɺͳ͔ͥࣗ৴͕͋ͬͨ DDD@F
ౙ ‣ʮ8FCMPHJDษڧձͬͯΔΑʯ ‣ʮ+BWBঁࢠ෦͍ͬͯ͏ͷ͕͋ΔΒ͍͠Αʯ DDD@F
ౙ ‣༏ੜλΠϓɾҙ͚ࣝͩߴ͍ தͳ͍ ࢲ ‣ʮΑ͔͘Βͳ͍͚ͲࢀՃͯ͠ΈΑ͏ʯ ‣ʮಉظʹࠩΛ͚ͭͨΖʯ DDD@F
ίϛϡχςΟॳࢀՃ DDD@F
ܸ DDD@F
Βͳ͍͜ͱ͔͠ͳ͍ ‣ࣄͰ͍ͬͯΔʮ4USVUTʯͱ͍͏͕ͭԿނ ͔օͷωλʹ͞Ε͍ͯΔɾɾɾ ‣+BWBʹόʔδϣϯʁ͕͋ΔΒ͍͠ʁ͕ग़Δ Β͍͠ʁ ‣+BWBҎ֎ʹͨ͘͞Μݴޠ͕͋ΔΑ͏ͩ DDD@F
ӡӦʹܞΘΔ͜ͱʹ ‣ӡྑ͘+BWBঁࢠ෦্ཱ͕ͪ͛ظͩͬͨ ‣֎ͷੈքʹ͜ΜͳʹΒͳ͍͜ͱ͕͋Δͷʹɺ ৬ʹ͜Γଓ͚ͨΒଛͦ͠͏ͳؾ͕ͨ͠ ‣Α͔͘Βͳ͍͚Ͳ༗໊ͳํ͕ͨ͘͞Μू·Δ Β͍͔͠Βࣗʹ͍͍͜ͱ͕͋Δ͔͠Εͳ͍ ‣ԿΑΓɺͬͱͪΌΜͱֶͼ͍ͨʂʂʂʂʂ DDD@F
ͱݴ͑ɺࠓ ίϛϡχςΟӡӦͷ͢ʍΊ Ͱͳ͍ DDD@F
ࣗͳΓͷ͖͔͚ͬͰ ίϛϡχςΟʹࢀՃ͍ͯ͜͠͏ DDD@F
य़ ‣++6($$$ॳࢀՃ ‣+BWB4&ϦϦʔε ‣Ͳ͏Β+BWB͍ʹͱͬͯخ͍͜͠ͱΈ͍ͨͩ ‣ʮ+BWB+BWBʯͱࢥ͍͚ͬͯͨͲҧ͏Β͍͠ ‣+BWBࣗମਐԽ͢Δ͔Β͍ଓ͚Δඞཁ͕͋Δ ɾɾɾͳͲͳͲɺ৭ʑͳ͜ͱΛͬͨ DDD@F
य़ ‣++6($$$ॳࢀՃ ‣+BWB4&ϦϦʔε ‣Ͳ͏Β+BWB͍ʹͱͬͯخ͍͜͠ͱΈ͍ͨͩ ‣ʮ+BWB+BWBʯͱࢥ͍͚ͬͯͨͲҧ͏Β͍͠ ‣+BWBࣗମਐԽ͢Δ͔Β͍ଓ͚Δඞཁ͕͋Δ ɾɾɾͳͲͳͲɺ৭ʑͳ͜ͱΛͬͨ ͬͨ DDD@F
ͬͨ DDD@F
ίϛϡχςΟ͕ ఏڙͯ͘͠ΕΔՁͷͻͱͭ Δ DDD@F
৭ʑͳ ʮΔʯ Λߟ͑ͯΈΑ͏ DDD@F
ٕज़ΛΔ DDD@F
++6($$$'BMM ηογϣϯ ॳڃ தڃ ্ڃ DDD@F
ٕज़ίϛϡχςΟͰ ٕज़ΛΔ DDD@F
࠷ॳඇޮͰΑ͍ ‣ηογϣϯ ‣͍ͬͯΔΩʔϫʔυͰબͿΑ͠ ‣қͰબͿΑ͠ ‣༑ୡʹྲྀ͞ΕΔΑ͠ ‣ਓ͕ଟ͍ͱ͜ΖʹฆΕࠐΉΑ͠ DDD@F
࠷ॳඇޮͰΑ͍ ‣ͦͷ͔࣌Βͳͯ͘ɺԿΒ͔ͷܗͰهԱʹͬ ͍ͯΔͣ ‣ฉ͍ͨ͜ͱ͋Δͷͱͳ͍ͷͱͰ݁ߏҧ͏ ‣ԿࢀՃ͢Δ͏ͪʹઈରΠϕϯτࢀՃͷίπ ͕͔ΔͷͰɺ͋·Γؾʹ͠ͳ͍ DDD@F
ΧϯϑΝϨϯεॳ৺ऀͷ͏ͪ ͋·Γؾෛ͍ͤͣ ৭ʑࢀՃͯ͠ΈΔͷ͕Φεεϝ DDD@F
ͨͩ͠ ͓͍֮͑ͯͯཉ͍͠ DDD@F
ฉ͘ɾݟΔ͚͕ͩ ʮΔʯͰͳ͍ DDD@F
࣭͠Α͏ ‣ηογϣϯޙͷ࣭ٙԠΛੵۃతʹ͓͏ ‣ݸผͰొஃऀΛั·͑ͯ๚ͶͯΈΑ͏ DDD@F
࠙ձʹग़Α͏ ‣͍ΖΜͳͻͱͱͯ͠ΈΑ͏ ‣͍ΖΜͳ͜ͱΛͯ͠ΈΑ͏ ‣͔͚͠Δͷ͕ۤखͩͬͨΒ*DBOIFMQZPV DDD@F
ొஃͯ͠ΈΑ͏ ‣ֶΜͩ͜ͱΛཧͯ͑͠Α͏ ‣ߟ͑ͨ͜ͱΛൃද͠Α͏ ‣࣮ફͨ͠༰ΛօʹͬͯΒ͓͏ ‣ΞϯΧϯϑΝϨϯεʹࢀՃ͠Α͏ DDD@F
͔ͭͯͷࢲ ʮ͍͔ͭొஃͯ͠Έ͍ͨɾɾɾʯ DDD@F
͔ͭͯͷࢲ ʮ͍͔ͭొஃͯ͠Έ͍ͨɾɾɾʯ Α DDD@F
ొஃ͘͢͝ͳ͍ ‣ͲΜͳϨϕϧͷ༰Ͱχʔζଘࡏ͠͏Δ ‣͕ࣗ͘͢͝ͳͯ͘ɺ༗ҙٛͳग़དྷΔ ‣ࣗΑΓ͍͢͝ਓɺ͕ࣗ͘͢͝ͳ͍͜ͱΛ ͔ͬͯ͘Ε͍ͯΔ ‣ొஃΛ͍͢͝ͱࢥ͏ͱɺͦΕͰຬͯ͠͠·͏ ˞ͪΖΜҟৗʹ͍͢͝ొஃऀͨ͘͞Μ͍Βͬ͠Ό͍·͢ɻຊϖʔ δʮޡղΛڪΕͣʹݴ͏ͱʯͱ͍͏ͭͰ͢ɻ DDD@F
ࢲͷ߹ɾɾɾ DDD@F
ͦͷͱ͖ग़དྷΔൣғͰ Ξτϓοτ͖ͯͨ͠ DDD@F
ొஃʹཱͭ ‣ࣗͷࣝΛཧग़དྷΔ ‣ಘҙͳ͜ͱɺۤखͳ͜ͱ͕ݟ͑ͯ͘Δ ‣ௌߨऀͱͷΓͱΓʹΑΓൃݟ͕͋Δ ‣ϨϏϡʔͯ͠Β͏ͱͳ͓Α͠ ‣࠙ձͰΛ͔͚ͯΒ͑Δ ͓·͚ DDD@F
ࣗΛΔ DDD@F
ࣗ ‣Կ͕ग़དྷΔʁग़དྷͳ͍ʁ ‣Կ͕ಘҙʁ ‣Կʹڵຯ͕͋Δʁ DDD@F
ಘҙΛ͕ͤ͞ ‣ΞϓϦʁϛυϧΣΞʁΠϯϑϥʁ ‣ϞόΠϧʁϑϩϯτΤϯυʁόοΫΤϯυʁ DDD@F
ಘҙΛ͕ͤ͞ ‣ΞϓϦΛ։ൃ͢Δ͜ͱʁ ‣σʔλΛੳͨ͠ΓՄࢹԽͨ͠Γ͢Δ͜ͱʁ ‣$*ɾ$%͕ग़དྷΔΑ͏උ͢Δ͜ͱʁ ‣͍͍νʔϜΛ࡞Δ͜ͱʁ ‣ਓͱίϛϡχέʔγϣϯΛͱΔ͜ͱʁ DDD@F
ಘҙΛ͕ͤ͞ ‣#UP$ʁ#UP#ʁ ‣৽ͨͳαʔϏεΛߟ͑Δ͜ͱʁ ‣χʔζΛټΈऔͬͯγεςϜʹө͢Δ͜ͱʁ DDD@F
ಘҙΛ͕ͤ͞ ‣͍ͪ͘৽͍ٕ͠ज़Λࢼ͢͜ͱʁ ‣ࠓඞཁͳใΛऩू͢Δ͜ͱʁ ‣ͬͨ༰Λ୭͔ʹڭ͑Δ͜ͱʁ DDD@F
ࢲͷ߹ɾɾɾ ӳޠ ॳ৺ऀ͚ ϙϯνֆ DDD@F
ͭ·ΓԿͰΑ͍ʂ DDD@F
ࣗΒՁΛ͚ͭΔ͜ͱ͕ ग़དྷΕউͪ DDD@F
͘Γ͔͑͠·͕͢ DDD@F
ฉ͘ɾݟΔ͚͕ͩ ʮΔʯͰͳ͍ DDD@F
͢ɾॻ͘ʹΑΓ ݟ͑ͯ͘Δ͜ͱ͋Δ ͦΕ͕ͦ͜وॏ DDD@F
͜Ε͚ͩͳΒ ਓͰɺՈʹ͍ͯग़དྷΔ Δ DDD@F
ίϛϡχςΟ͔ͩΒͦ͜ ग़དྷΔ͜ͱɺͦΕ͕ ग़͢ DDD@F
ʮग़͢ʯ৽ͨͳʮΔʯʹ ܨ͕Δ DDD@F
Δ ग़͢ ͘Γ͔͑͠ DDD@F
ʮ͜ΕͳΒࢲʹग़དྷΔʯͱ ࢥͬͨ͜ͱΛߦಈʹҠ͢ͷ͕ ϙΠϯτ DDD@F
എ৳ͼ͗͢͠Δඞཁͳ͍ DDD@F
ൃ৴͍Ζ͍Ζ ‣ొஃ ‣5XJUUFS ‣ϒϩά ‣2JJUB ‣(JU)VC ‣ձࣾ࣋ͪؼΓ׆༻ DDD@F
ࢲͷ߹ɾɾɾ ϒϩά5XJUUFS 5XJUUFS ษڧձ DDD@F
ࢲͷ߹ɾɾɾ ‣ձࣾ࣋ͪؼΓಘͨࣝΛϨϏϡʔʹө ‣࢝Ί͍͢ ‣ࣝΛಘΔ׆༻͢Δͱ͍͏ྲྀΕΛ͍ε ύϯͰ܁ΓฦͤΔ DDD@F
ࣗʹ߹ͬͨΓํɺ ָ͍͠ͱࢥ͑Δํ๏Ͱ ͬͨ͜ͱΛग़͍ͯ͜͠͏ DDD@F
͜͏ͯ͠ DDD@F
ίϛϡχςΟʹࢀՃ͠ɺΓɺ ͬͨ͜ͱΛ֎ʹग़͠ɾɾɾ DDD@F
͜ΕΛ͍ͬͯΕ ͍ͭͷؒʹ͔ίϛϡχςΟʹ ׳Ε͍ͯΔͣ DDD@F
ίϛϡχςΟΛΔ DDD@F
ࣗͳΓͷָ͠Έํ ‣໘ന͍ίϛϡχςΟ͕͔Δ ‣ΈͷΠϕϯτใΛΩϟονग़དྷΔ ‣λΠϜςʔϒϧͷΈํ্͕ୡ͢Δ ‣ࢀՃऀΛগ֮ͣͭ͑͠ɺΓ߹͍͕૿͑Δ DDD@F
ଞਓΛΔ DDD@F
ίϛϡχςΟʹ ͍Ζ͍Ζͳਓ͕͍Δ DDD@F
ࣗͱҧ͏ਓ͔ΒֶͿ ‣ಘҙͳٕज़ ‣ࣄ ‣ੜ͖ͨ࣌ ‣ੑ֨ DDD@F
ࣗͱҧ͏ਓٕज़ฤ ‣ΞʔϦʔΞμϓλʔ ‣ྺ࢙ܦҢʹڧ͍ਓ ‣ؾʹͳΔۀքɾձࣾʹ͍Δਓ ‣͖ͳλΠϓͷίʔυΛॻ͘ਓ ‣༗༻ͳຊΛ͓͢͢Ίͯ͘͠ΕΔਓ FUD DDD@F
ࣗͱҧ͏ਓੑ֨ฤ ‣ਖ਼͍͜͠ͱΛॏΜ͡Δਓ ‣ڭ͑Δͷ͕େ͖ͳਓ ‣ޱௐ͕ݫ͍͠ਓ ‣ࣗͷҙݟΛۂ͛ͳ͍ਓ ‣ࠊॊΒ͔ͳਓ FUD DDD@F
ࢲͷ߹ɾɾɾ ͱ͋Δࣄ݅ ձݶఆͱ͍͏͜ͱͰޱ಄Ͱ DDD@F
ࠓͱͳ͍͍ͬͯࢥ͍ग़ DDD@F
ͦΕͲ͜Ζ͔ ࣗͷڧΈʹؾ͍ͨ DDD@F
ࢲͷ߹ɾɾɾ ‣ए͍ɺΒΒɺϑϨϯυϦʔ ҙݟΛݴ͍͍͢ ‣ٙʹ͙͑ͯ͢Β͑Δ ‣ޡΓΛ͙͢గਖ਼ͯ͠Β͑Δ ‣ίϛϡχςΟͷҙݟΛٵ্͍͍͛͢ DDD@F
Կͩͬͯܦݧɾֶͼͩͱࢥͬͯ ڧ͘ੜ͖Δ֮ޛେࣄ DDD@F
݄ฒΈͰ͕͢ DDD@F
ࢦఠϚαΧϦ ࣄ࣮ͷ൱ఆͰ͋ͬͯ ਓ֨൱ఆͰͳ͍ DDD@F
ੵۃతʹΞτϓοτ͠Α͏ DDD@F
͜͜·Ͱ͓͞Β͍ ‣ٕज़ΛΔ ‣ࣗΛΔ ‣ίϛϡχςΟΛΔ ‣ଞਓΛΔ DDD@F
·ͩ·ͩΠέΔ DDD@F
ੈքΛΔ DDD@F
ຊͷ֎ ‣ւ֎ʹΤϯδχΞ͍Δ ‣ւ֎ʹίϛϡχςΟ͋Δ DDD@F
ੵۃతʹަྲྀ͍ͯ͜͠͏ DDD@F
ຊͰւ֎Λײ͡Δ ‣++6($$$ ‣+BWB%BZ5PLZP ‣+0OTFO DDD@F
ւ֎ʹΛ৳͢ ‣+BWB0OF DDD@F
ຊͷίϛϡχςΟڧ͠ ‣+0OTFOɺ+BWB%BZ5PLZPͷΓ্͕Γ ‣+BWB0OFͰຊϑΟʔνϟʔ DDD@F
ݴ༿ͷน ‣ʮ͍ӳޠͰΘΔ͔Βେৎʂʯͱݴ͍ͨ ͍͕ɺۤखҙ͕ࣝ͋ΔͱͬͺΓ͍͠ͷࣄ࣮ ‣·ͣಘҙͳਓ͕த৺ͱͳΓɺॿ͚߹ͬͯԿͱ ͔͠Α͏ ‣++6(ͷαΠτυΩϡϝϯτੵۃతʹӳޠԽ ͍͖͍ͯͨ͠ Ұॹʹͬͯͩ͘͞Δํͥͻ DDD@F
ຊւ֎ ؔΛͬͱڧԽ͢Δʹ ࠜؾͱମྗ͕ඞཁ DDD@F
Ͱ DDD@F
ϑΟʔϧυΛ͛Ε વΔ෯͕Δ DDD@F
ͬͨ΄͏͕ະདྷ໌Δ͍ DDD@F
͖ͬͱָ͍͠ DDD@F
Δ ग़͢ ͘Γ͔͑͠ DDD@F
Δ ग़͢ ͘Γ͔͑͠ ˞Πϝʔδ DDD@F
ͥͻ֎ग़͍ͯ͜͏ DDD@F
ͥΜͿ͓͞Β͍ ‣ٕज़ΛΔ ‣ࣗΛΔ ‣ίϛϡχςΟΛΔ ‣ଞਓΛΔ ‣ੈքΛΔ DDD@F
ϙΠϯτ ࣗͷڧΈΛݟ͚ͭͯ ૣ͍͏͔ͪΒ ग़དྷͦ͏ͳ͜ͱΛΔʂ DDD@F
ߦಈ͢Ε Կ͔͕ಈ͖ग़͢ʂ DDD@F
ࠓ·ͣ++6($$$Ͱ ʮΔʯΛ ָ͠ΜͰ͍͍ͬͯͩ͘͞ʂ DDD@F
Δ DDD@F
ޙ++6($$$ʹ $G1Λ Ԡื͍ͯͩ͘͠͞ʂ DDD@F
ग़͢ DDD@F
͜Ε͔Β ++6(ɺͦͯ͠++6($$$Λ Ӭ͘ΑΖ͓͘͠ئ͍͠·͢ʂ DDD@F
Δ ग़͢ ͘Γ͔͑͠ DDD@F
ͬͨΜউͪͩͥ DDD@F
5IBOLZPV