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の冗長な構文を愛でてみる / java-redundant-syntax
Search
irof
October 04, 2020
Technology
3
810
Javaの冗長な構文を愛でてみる / java-redundant-syntax
2020-10-04
J Lang Fest Kansai Online #1
https://kansai-jvm-langs-fest.connpass.com/event/188249/
irof
October 04, 2020
Tweet
Share
More Decks by irof
See All by irof
技術的負債の正体を知って向き合う / Facing Technical Debt
irof
0
40
関ジャバと言う場
irof
0
73
型で語るカタ
irof
2
1.4k
つよそうにふるまい、つよい成果を出すのなら、つよいのかもしれない
irof
1
360
複数アプリケーションを育てていくための共通化戦略
irof
9
4.9k
SpringBootにおけるオブザーバビリティのなにか
irof
1
1.1k
Javaアプリケーションモニタリングの基本
irof
7
2.7k
Webアプリケーションを作りましょう
irof
0
190
Javaの新しめの機能を知ったかぶれるようになる話 #kanjava
irof
3
6.6k
Other Decks in Technology
See All in Technology
多野優介
tanoyusuke
1
450
o11yで育てる、強い内製開発組織
_awache
3
120
Exadata Database Service on Dedicated Infrastructure(ExaDB-D) UI スクリーン・キャプチャ集
oracle4engineer
PRO
2
5.4k
Access-what? why and how, A11Y for All - Nordic.js 2025
gdomiciano
1
110
GC25 Recap+: Advancing Go Garbage Collection with Green Tea
logica0419
1
420
神回のメカニズムと再現方法/Mechanisms and Playbook for Kamikai scrumat2025
moriyuya
4
570
ユニットテストに対する考え方の変遷 / Everyone should watch his live coding
mdstoy
0
130
「Verify with Wallet API」を アプリに導入するために
hinakko
1
240
生成AIで「お客様の声」を ストーリーに変える 新潮流「Generative ETL」
ishikawa_satoru
1
320
Goにおける 生成AIによるコード生成の ベンチマーク評価入門
daisuketakeda
2
110
10年の共創が示す、これからの開発者と企業の関係 ~ Crossroad
soracom
PRO
1
360
E2Eテスト設計_自動化のリアル___Playwrightでの実践とMCPの試み__AIによるテスト観点作成_.pdf
findy_eventslides
1
420
Featured
See All Featured
For a Future-Friendly Web
brad_frost
180
9.9k
Making Projects Easy
brettharned
119
6.4k
実際に使うSQLの書き方 徹底解説 / pgcon21j-tutorial
soudai
PRO
188
55k
Sharpening the Axe: The Primacy of Toolmaking
bcantrill
45
2.5k
GitHub's CSS Performance
jonrohan
1032
460k
Bash Introduction
62gerente
615
210k
Visualizing Your Data: Incorporating Mongo into Loggly Infrastructure
mongodb
48
9.7k
CoffeeScript is Beautiful & I Never Want to Write Plain JavaScript Again
sstephenson
162
15k
Building a Scalable Design System with Sketch
lauravandoore
462
33k
Easily Structure & Communicate Ideas using Wireframe
afnizarnur
194
16k
Optimising Largest Contentful Paint
csswizardry
37
3.4k
Why Our Code Smells
bkeepers
PRO
339
57k
Transcript
+BWBͷͳߏจΛ ѪͰͯΈΔ +-BOH'FTU,BOTBJ0OMJOF 5 !JSPG
ओʹ+BWBΛ͍ͬͯΔ;ͭ͏ͷϓϩάϥϚ ;ͭ͏ಛผͳ͜ͱͤͣɺ;ͭ͏ͷ͜ͱΛ;ͭ͏ ʹ͢ΔɻͦΜͳҙਤͰ໊ͬͯ·͢ɻ ؔ+BWBΤϯδχΞͷձʢؔδϟόʣ͔Β͖·ͨ͠ ݸਓࣄۀओੜ ͓ࣄ֬ͷࡶஊ͔ΒͰ͓͍ͯ͠·͢ ࣄ+BWBͰͷ։ൃʹݶΒ͍ͣΖ͍ΖͰ͢
ͳ͢͜ͱ ࢲͱ+"7" +7.ͱ+BWBͷؔ +BWBʁ ࢲ͕ࠓճ͔ͨͬͨ͜͠ͱ
ࢲͱ+"7"
ࢲͱ+"7" ݱࡏ鱳KBWBDPN鱴鲿鲮鲜鳫鱑่鲑鱫鱉鲐ɻ 鱭鱫鲇൵鱜 鱉
ࢲʹͱͬͯͷ+BWB Ҏ্ࠃޠͱͯ͠༻ ຊޠΑΓॻ͚Δͱࢥ͏ ͭ·Γຊޠྗ͕ʢলུ͞Ε·ͨ͠ʣ ࣄͰͷϛχϚϜ+BWB ࠷৽ͱൺΔͱະຬɻ
ࢲʹͱͬͯͷ+BWB ԿΛ͢Δʹͯ͠ʮ࠷Ͱ࣮֬ʹ ࣮Ͱ͖Δͷʯ+BWB ଞͷݴޠͦΕͳΓʹͬͯΔ͚Ͳ ͳͷͰࢥߟ+BWBʹدͬͯΔ ࢥߟݴޠͷ੍Λड͚Δ͔Βํͳ͍
࠷ॳͷݴޠͷհ Ұͭͷݴޠʹʮਫ਼௨ʯ͠· ͠ΐ͏ɻŧŔŕŪũƄŝſɻ ʮ+BWBŧŔŕŪũƄŝſʁʯͱฉ͔ΕΔͱ ࢲएׯ͍᪳͋Δ͚Ͳ ͲͷݴޠͰ͋Δ͔ॏཁͰ ͋Γ·ͤΜ ͕ɺͦͷݴޠͱ͖͘߹͏ͭ ΓͰ͖߹͍·͠ΐ͏
+7.ͱ+BWB
+7. +-BOH'FTU,BOTBJͱ͍͏͜ͱ Ͱɺ+7.ΛΒͳ͍ਓډͳ͍ͱ ࢥ͍·͢ ʮͬͯΔʯͷ߹͍·ͪ·ͪ Ͱ͠ΐ͏͚Ͳ KZVLVUZPͷͷԠͬͯͲ͏ͳΜͩΖ
+7.ͱ+BWB +BWBͷେ͖ͳޭͷҰͭ+7. Λҭ͖ͯͯͨ͜ͱ গ͠લ͔Βଞͷ+7.ݴޠ͕+7.Λҭͯ ͯɺͦΕΛ+BWB͕͏͖ͬͯͰ͖ ͖͚ͯͨͲɻ
+BWBͷཱͪҐஔ +7.͕࣮ߦ͢ΔόΠφϦΛ࠷ૉ ʹදݱͰ͖Δݴޠ Ұ෦ͷߏจҎ֎KBWBQͨ͠ΒͲ͏ͳΔ͔ ૾ͭ͘ɻଞݴޠΑΓڑ͕͍ۙɻ ͳͷͰίʔυͷՄࢹԽ $MBTTΛରʹͯ͠Δˠ ଞݴޠͰ͑Δ͚Ͳɺ༧ଌͰ͖ͳ͍ϊΠζ͕ʜʜ IUUQTHJUIVCDPNEEEKBWBKJH
+BWB͔
͍ΖΜͳจ຺Ͱʮ+BWBʯ ͱݴΘΕ·͢ɻ ͚Ͳ࣮ମ͋·ΓΈ͑·ͤΜɻ จ຺͕·ͪ·ͪա͗ͯΧΦε ʮʯͬͯͳΜͩΖ͏ͬͯɻ
ͩͱ·͍ͣ͜ͱ ॻ͖ͮΒ͍ ಡΈͮΒ͍
ͳͷͰॻ͖ͮΒ͍ ͔ͩΒॻ͘ͷʹ͕͔͔࣌ؒ Δͷେ ͰଟͦΕɺ+BWBͷ͍ͤ͡Ό ͳ͍ͱࢥ͏ΜͰ͢
ͳͷͰॻ͖ͮΒ͍ ΄ͱΜͲ શ෦͡Όͳ͍ *%&͕ղܾࡁΈ ࠓ࣌*%&ΛΘͳ͍ͷߟ͑ͮΒ͍ ·͔͞શจࣈλΠϐϯάͳΜͯ͠ ͯ·ͤΜΑͶʁ ͜Εۃ͚ͩͲʮ·͔͞˓˓·ͤΜ ΑͶʁʯ͍͘ΒͰ͋Δ
·͔͞˓˓·ͤΜΑͶʁ ·͔͞JNQPSUจΛखͰॻ͍ͯ·ͤΜΑͶʁ ·͔͞GPSจΛશ෦ॻ͍ͯ·ͤΜΑͶʁ ·͔͞JGจΛશ෦ॻ͍ͯ·ͤΜΑͶʁ ·͔͞ϑΟʔϧυΛ࡞ͬͯίϯετϥΫλ Ͱೖͱ͔શ෦ॻ͍ͯ·ͤΜΑͶʁ Ұྫʹ͗͢ͳ͍ɻ
ͩͱ·͍ͣ͜ͱ ॻ͖ͮΒ͍ ಡΈͮΒ͍ จ຺Ͱ͜ΕΛڍ͛Δͷ ʮࢲ*%&Λ͍ͬͯ·ͤΜʯʹ͍ۙ
ͳͷͰಡΈͮΒ͍ ͕ͬͪͣ͜ΔՁͷ͋Δ ʮ+BWBʯͱݴ͏ͳΒ͜͜ ͔Β߈ΊΑ͏ ߈ΊͯͲ͏͢Δ
ಡΈʹӨڹ͢Δ ಡΜͰใྔ͕૿͑ͳ͍ ใ͕૿͑ΔͳΒͱݴ͑ͳ͍ ΑΓ؆ܿͳදݱ͕͋Δ ಉ͡ใྔͰͦΕͳΒͱݴ͑Δ ݴޠʗඪ४ϥΠϒϥϦͷදݱྗ͕ऑ͍
େࣄͳͷՄಡੑ ՄಡੑΛଛͶΔ͔Β ʮಡΈʹ͍͘ʯͷҰҼʹͳΓ͑Δ Մಡੑ্͕͕Δͳ͍ ʢ͋ΓಘΔ͔ผͱͯ͠ʣ
ݴޠͷදݱྗʹ͍ͭͯ ࠓճѻ͍·ͤΜ ͰೖΒͳ͍ʜʜ ݴޠඪ४ϥΠϒϥϦͷڧྗ͞ ઃܭͷ͞Λ෴͍Ӆ͢͜ͱ͋Γ· ͢ɻରশੑΛଛͶͯΔͷʹؾ͚ͮ ͳ͍ͱ͔ɻ
ίʔυಡΈͰ͢ 鱺鱩鱋鱳+BWB鲫鱅鲿鲛鳫鲨++6($$$4QSJOH IUUQTTQFBLFSEFDLDPNJSPGIVUVVGBMTFKBWBLPEFJOHVOVNCFSDDDF 鲫鱅鳁鲗鱮鲃鲘鱯鱐鱰%FW-07&ؔDPNNJUNFOU IUUQTTQFBLFSEFDLDPNJSPGLPEPXPEPNBOOBLBOJ
ͳ+BWBίʔυ
ϘΠϥʔϓϨʔτίʔυ ग़య8JLJQFEJBʢ͖Γͬ ʮݴޠ্༷লུෆೳʯ ͑ɺHFUUFSTFUUFSͬͯผʹݴޠ༷Ͱͳͯͩ͘ͳʜʜ ·͊ଟ͘ͷϥΠϒϥϦ͕ཁٻ͢ΔͷͰ͋ΔͷͰ࣮࣭తʹ ͬͯײ͡ͷؚΊΕ͍͍ΜͩΖ͏͚Ͳɻ
ଟ͘ͷʮϘΠϥʔϓϨʔτίʔ υʯͱݴΘΕΔͷʮͦ͏ݴ ͏͍ํͨ͠ΒཁΔΑͳ͊ʯͬ ͯͷ͕ਖ਼ͳͱͩͬͨ͜Γ͢Δ ʢͨͩͷײ
ݴޠ্༷ͷվળྫ USZXJUISFTPVSDFT μΠΞϞϯυΦϖϨʔλʔ WBS 鱘鲑鲎鱴鱳ղফ鱯鱳鱐ʁ
USZXJUISFTPVSDFT ΛѪͰΔ Ѫ鱬鲐ʹஸೡ鱰ݟ鲐鱔鲎鱉鱳ײ鱝鱬鱨鱫鲃鱞
USZXJUISFTPVSDFT ϦιʔεͷࣗಈDMPTFͱͯ͠ೝࣝ͞Ε Δͷ ଞݴޠͬͯͯʮཉ͍͠ͳʔʯͱ ࢥͬͯͨච಄ ͪͳΈʹՃ͞Εͨͷେੲ ʢόʔδϣϯ൪߸͕ҎԼʣ
None
͔ͷఆ ίʔυ্ใྔ͕ݮ͍ͬͯΔ DMPTF͕ݺΕΔ͜ͱͦͷ݅ ಡΈऔΔͷʹ͕ࣝ૿͍͑ͯΔ ͕ࣝ͋ΕಡΈऔΔ্͕Δ Մಡੑࣝͱηοτ
͞վળ͞Ε͔ͨ :&4 ࣗͰ࣮͢Δʹ͔ͬͨΔͯ͘ खΛൈ͍ͯͨͱ͜Ζͱ͔͕͖ͬͪ ΓରԠ͞ΕΔΑ͏ʹͳͬͯΔɻ TVQQSFTT͕ྫ֎Ͱѻ͑ͯɺෳϦιʔε ѻ͏࣌ʹ͍͍ײ͡ʹͯ͘͠ΕͯɺӠʑɻ
ʮ͔ͬͨΔ͍ʯͷ ෳͷϦιʔεͷղ์Λਖ਼࣮͘͠ ͢Δͷࠔͩ͠ɺ௨ৗෆཁͳ࣮ Ͱ͋Δɻ ڵຯ͋Ε ϒϩάݟͯˠ
Ͱͳ͘ͳ͔ͬͨ ΞϓϦέʔγϣϯϨϕϧͩͱʮUSZʯͬͯͳ ΜͩΑײ͋Δ ʮྫ֎ॲཧʯͱݴ͏ใͳΜͩΑͶ͐ʜʜ ͔֬ʹྫ֎ॲཧͱηοτͳ͜ͱଟ͍Μ͚ͩͲɺผ ʹྫ֎ॲཧͨ͘͠ͳͯ͘DMPTF͚͍ͩͨ͠ͷʹ USZͬͯͳΜͶΜͬͯʜʜ
ଞݴޠΛݟͯΈΔ ʢશʹΠίʔϧ͡Όͳ͍͚Ͳʣ +BWB͚ͩྫ֎ॲཧʹࠞͬͯ͟Δɻ ʮྫ֎ॲཧͰDMPTF͞ΕΔͱ͔͔Δ͔ʂʯΜͯ͡ड͚Δɻ Ͱൺֱͯ͠ʮʯͱݴ͍ͮΒ͍ɻ ݴޠ هड़ +BWB USZ 999
4DBMB 6TJOH 999 ,PUMJO 999VTF (SPPWZ 999XJUI$MPTFBCMF $ VTJOH 999
μΠΞϞϯυΦϖϨʔλʔ ΛѪͰΔ
͜Εଠݹͷߋ৽ ໌֬ͳͷղফ ใྔҰݮΒͣಡΈ͘͢ͳͬͨ
WBS ΛѪͰΔ
࠷ۙೖͬͨ ࠷ۙʹόʔδϣϯ͕࠷৽ΑΓେ͖͍ ͱ͍ͬͯ͏ܦͬͯΔ ଞݴޠͩͱͨ͘͝Γલʹ͋ͬͨͭ
͜Εͷղফ͔ʁ ʮ4PNF5ZQF͕ͭ͋Δ͔Β ʯͪΐͬͱҧ͏ɻ
ίʔυࠨ͔ΒಡΉ ࠨίʔυͷҰ ͔ͩΒࠨʹॏཁͳ͜ͱΛॻ͖͍ͨ ࠷ॏཁͳͷܕͷͣʜʜ
Ή͠ΖʮมͰ͋ΔʯͳΜͯ໌ Β͔ͳ͜ͱΛΘ͟Θ͟ॻ͍ͯɺ ͕͞૿͑ͯͨΓɻ
WBS͕ղফͨ͠ͷ ॻ͘ͷָʹͳͬͯΔ ͚Ͳ·͔͞มͷܕͱ͔खͰॻ ͍ͯ·ͤΜΑͶʁ ͋ɺKTIFMMͰศརɻ
ࢲ͕ࠓճ͔ͨͬ͠ ͨ͜ͱ
Մಡੑ͕ॏཁ ʮ͞ʯՄಡੑʹӨڹΛ༩͑ΔҰ Ҽʹա͗ͳ͍ ͰՄಡੑ্͕͕ΔͳΒ܁Γฦ͠ ॻ͍͍͍ͯ هड़ੑͳΜͱ͔ͳΔɻอकੑʢมߋ࿙Ε ͷϦεΫͱ͔ʣͳΜͱ͔ͳΔɻʮͳΜͱ ͔ͳΔʯΛ;ͭ͏ʹ͍ͨ͠ɻ
ܕΛॏࢹ͍ͨ͠ ʮมͰ͋ΔʯʮϝιουͰ͋Δʯʹίʔ υͷҰͨΔࠨΛৡΓͨ͘ͳ͍ ͔ͩΒWBSͱ͔GVOͱ͔EFGͱ͔ʹࠨΛ͋͛ͨ ͘ͳ͍ ͱݴ͍ͭͭम০ࢠʹୣΘΕΔ൵͠Έ म০ࢠͳ͠Ͱશ෦Γ͍ͨ ݅͑ͯ֎ͨ͠Γ͢Δˠ
ݴޠͷΛޠΔͳΒ ͦͷʮʯ͕Կͳͷ͔ɺ͏গ͠ߟ͑ͯ ΈΔͱؾ͖͕ͮ͋Δ͔͠Εͳ͍ɻ ෳͷݴޠʹڵຯΛ࣋ͬͨͷͳΒɺͦΕͧ ΕͷΞϓϩʔνΛݟൺͯɺղܾͷํͷ ͠ʹ͠Α͏ɻ ଟ͘ͷʮʯݴޠ͡Όͳ͘ɺઃܭͷෆ ٢ͳʹ͓͍Ͱ͢ɻ͖߹͍·͠ΐ͏ɻ
͖ͳݴޠμϝͩ͠ ͯ͠ͳΜ΅ͩͱࢥ͏ ݴޠEJTฉ鱉鱫鲇ʮ鱉鱯鱅EJT鲐鱯鲎鱘鱘鱥 鲒鱅ʯ鲄鱤鱉鱰ࢥ鱍鲐鱭৺Ժ鲉鱐鱰鱯鲑鲐