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
KotlinでDelegation #kansaikt
Search
Shinichi Kozake
July 09, 2016
Technology
2
1.2k
KotlinでDelegation #kansaikt
kansai.kt #1
Shinichi Kozake
July 09, 2016
Tweet
Share
More Decks by Shinichi Kozake
See All by Shinichi Kozake
アーキテクトとは
kozake
0
2.3k
Ionic React でサービス開発したお話
kozake
0
150
ドキッ!失敗だらけのシステム開発
kozake
1
840
やはり俺のWeb APIは間違えている
kozake
0
540
すごい大規模 たのしく作ろう
kozake
4
2.5k
KHipster ~JHipsterで始めるKotlin Web プログラミング~
kozake
0
910
Docker with JHipster
kozake
1
580
実践JHipster #jsug #sf_36
kozake
2
7.8k
Ionicでアプリ作ったよ!開発方法の紹介
kozake
2
1k
Other Decks in Technology
See All in Technology
CloudComposerによる大規模ETL 「制御と実行の分離」の実践
leveragestech
0
180
InsightX 会社説明資料/ Company deck
insightx
0
200
サブドメインテイクオーバー事例紹介と対策について
mikit
15
7.3k
Databricks Free Editionで始めるMLflow
taka_aki
0
790
Playwrightで始めるUI自動テスト入門
devops_vtj
0
140
DSPy入門
tomehirata
6
900
設計に疎いエンジニアでも始めやすいアーキテクチャドキュメント
phaya72
27
18k
dbtとAIエージェントを組み合わせて見えたデータ調査の新しい形
10xinc
7
1.8k
現場の壁を乗り越えて、 「計装注入」が拓く オブザーバビリティ / Beyond the Field Barriers: Instrumentation Injection and the Future of Observability
aoto
PRO
1
940
Boxを“使われる場”にする統制と自動化の仕組み
demaecan
0
200
AWS re:Invent 2025事前勉強会資料 / AWS re:Invent 2025 pre study meetup
kinunori
0
1.1k
Digitization部 紹介資料
sansan33
PRO
1
5.8k
Featured
See All Featured
Creating an realtime collaboration tool: Agile Flush - .NET Oxford
marcduiker
34
2.3k
Distributed Sagas: A Protocol for Coordinating Microservices
caitiem20
333
22k
Helping Users Find Their Own Way: Creating Modern Search Experiences
danielanewman
31
2.9k
Visualizing Your Data: Incorporating Mongo into Loggly Infrastructure
mongodb
48
9.7k
RailsConf 2023
tenderlove
30
1.3k
It's Worth the Effort
3n
187
28k
Scaling GitHub
holman
463
140k
Fireside Chat
paigeccino
41
3.7k
The Pragmatic Product Professional
lauravandoore
36
7k
CoffeeScript is Beautiful & I Never Want to Write Plain JavaScript Again
sstephenson
162
15k
Become a Pro
speakerdeck
PRO
29
5.6k
Refactoring Trust on Your Teams (GOTO; Chicago 2020)
rmw
35
3.2k
Transcript
LBOTBJLU
,PUMJOͰ%FMFHBUJPO ҕৡͩ͡ΐʔ
ͩ͜͡ΐ 䰾 ൃച༧ఆʂʂ
9JQCTG7!
,CXC 5[UVGO#TEJKVGEV 鰄鰇鰂鰈鱄鯵鰒 0COG 鱻鲑鱔鲍鲂ㅕ䃩鰰 #IG 5[UVGO#TEJKVGEV ,QD .KMG 5MKNN
#DQWV+PJGTKVCPEG %NCUU&GNGICVKQP &GNGICVGF2TQRGTVKGU
#DQWV+PJGTKVCPEG %NCUU&GNGICVKQP &GNGICVGF2TQRGTVKGU
&CVC%NCUU #DQWV+PJGTKVCPEG
&CVC%NCUU #DQWV+PJGTKVCPEG ܧঝίʔυͷ࠶ར༻Λߦ͏ ศརͳखஈʂʂ ! ͳΜ͚ͩͲɾɾ
&CVC%NCUU #DQWV+PJGTKVCPEG ʰແͳঢ়ଶͰ༻Ͱ͖ΔϥΠϒϥϦͷ࡞ʹରͯ͠ ܧঝͷ༗༻ੑ͔ͳΓٙΘ͍͠ʱ ! ʰࠐΈೖͬͨTXJUDIจҎ্ͷԿऀͰ͋Γ·ͤΜʱ ! ʰޙํޓΛଛͶΔͨΊ݈શͳ"1*ͷΛ͛Δʱ ʙ"1*σβΠϯͷۃҙΑΓʙ
&CVC%NCUU #DQWV+PJGTKVCPEG ʰਂ͍ܧঝπϦʔΤϥʔͷ্ঢͱ ɹਂ݁͘ͼ͍͍ͭͯΔ͜ͱ͕Θ͔͍ͬͯΔʱ ʙίʔυίϯϓϦʔτΑΓʙ
&CVC%NCUU #DQWV+PJGTKVCPEG ܧঝJTBͷؔͷ͕ͣɾɾ ! ɹجఈΫϥεͷॲཧΛ࠶ར༻͍ͨ͠ ɹ͋ͷॲཧΛϋοΫ͍ͨ͠ ! ͳͲͷཧ༝ʹΑΓෆదͳܧঝ͕ߦΘΕΔ͜ͱଟ͍ 鰜鰴鱄鰙猳獑ฅ ōō
ฅ
&CVC%NCUU #DQWV+PJGTKVCPEG ܧঝศརͳػೳ͕ͩɺෳࡶੑ͕૿͢ةݥੑ͕͋Δʂ
&CVC%NCUU #DQWV+PJGTKVCPEG ɾσϑΥϧτpOBMɻܧঝʹPQFO͕ඞཁ ɾ%FMFHBUFαϙʔτ͕ݴޠػೳͱͯ͠༻ҙ ,PUMJO JT
&CVC%NCUU #DQWV+PJGTKVCPEG ,PUMJO JT ɾσϑΥϧτpOBMɻܧঝʹPQFO͕ඞཁ ɾ%FMFHBUFαϙʔτ͕ݴޠػೳͱͯ͠༻ҙ ࠓ͜ͷΛ͠·͢
#DQWV+PJGTKVCPEG &GNGICVKQP &GNGICVGF2TQRGTVKGU
&CVC%NCUU ,PUMJOͷ$MBTT%FMFHBUJPOΛ༻͍Δ͜ͱͰɺҕৡʹΑΔϘΠϥʔίʔυΛ ͳ͘͢͜ͱ͕Ͱ͖·͢ɻ ! &CVC%NCUU %NCUU&GNGICVKQP $MBTT%FMFHBUJPO JT
&CVC%NCUU %NCUU&GNGICVKQP FGNGICVG
&CVC%NCUU %NCUU&GNGICVKQP CEFMFHBUF
&CVC%NCUU %NCUU&GNGICVKQP CZ۟ʹΑΓɺC%FSJWFEͷ෦ʹ֨ೲ͞Ε ίϯύΠϥʹΑΓCҕৡ͢Δશͯͷϝιου͕ੜ͞ΕΔ CZ۟ʹΑΓCEFMFHBUF
&CVC%NCUU %NCUU&GNGICVKQP
&CVC%NCUU %NCUU&GNGICVKQP
&CVC%NCUU %NCUU&GNGICVKQP FGNGICVG FGNGICVG
#DQWV+PJGTKVCPEG %NCUU&GNGICVKQP &GNGICVGF2TQRGTVKGU
&CVC%NCUU &GNGICVGF2TQRGTVKGU ϓϩύςΟͷΞΫηεʢTFUPSHFU ΛଞͷॲཧҕৡͰ͖Δɻ ͜ΕʹΑΓɺ ! ɹMB[ZQSPQFSUJFT࠷ॳͷΞΫηε࣌ʹΛܭࢉ͢Δ ɹPCTFSWBCMFQSPQFSUJFTϓϩύςΟͷมߋΛ௨͢Δ NBQQSPQFSUJFTϑΟʔϧυͷΛNBQʹ֨ೲ͢Δ !
ͷΑ͏ͳػೳΛ࡞͠ɺ࠶ར༻Ͱ͖ΔΑ͏ʹͳΔ %FMFHBUFE1SPQFSUJFT JT
&CVC%NCUU &GNGICVGF2TQRGTVKGU ʻߏจʼ WBMWBSQSPQFSUZOBNF5ZQFCZFYQSFTTJPO ! CZͷޙΖͷ͕ࣜฦ͢ΠϯεϯεʹEFMFHBUF͢Δɻ
&CVC%NCUU &GNGICVGF2TQRGTVKGU ϓϩύςΟͷ HFUHFU7BMVF TFUTFU7BMVF ͕ରԠɻ ! %FMFHBUFΠϯλϑΣʔεΛܧঝ͢Δඞཁͳ͍͕
HFU7BMVF ϓϩύςΟ͕WBSͷ߹ɺTFU7BMVF Λ࣮ͯ͠Δඞཁ͕͋Δ
&CVC%NCUU &GNGICVGF2TQRGTVKGU ࣮ߦ݁Ռ্هͱ͓Γ
&CVC%NCUU &GNGICVGF2TQRGTVKGU ! QVCMJDDMBTT&YBNQMF\ QSJWBUFpOBM,1SPQFSUZQPQ1 QSJWBUFpOBM%FMFHBUFEFMFHBUFOFX%FMFHBUF QVCMJDpOBM4USJOHHFU1
\ SFUVSOUIJTEFMFHBUFHFU7BMVF UIJT QSPQ1 ^ QVCMJDpOBMWPJETFU1 4USJOHWBMVF \ UIJTEFMFHBUFTFU7BMVF UIJT QSPQ1 WBMVF ^ ^ ! ઌ΄Ͳͷ&YBNQMFΛ+BWBͰ࣮͢Δͱͨ͠Β্هΠϝʔδͱͳΓ·͢ɻ
&CVC%NCUU &GNGICVGF2TQRGTVKGU ಡऔઐ༻ͷϓϩύςΟ WBM ͷ%FMFHBUF࣍ͷύϥϝʔλΛऔΔHFU7BMVFͱ͍͏໊લͷؔΛ ఏڙ͢Δɻ ! SFDFJWFSϓϩύςΟอ࣋ΦϒδΣΫτͱಉ͔͡εʔύʔܕ NFUBEBUB,1SPQFSUZܕ͔ͦͷεʔύʔܕ !
͜ͷؔϓϩύςΟͱಉ͡ܕʢͦ͘͠ͷαϒܕʣΛฦ͢ɻ ! %FMFHBUFE1SPQFSUJFT ཁ݅ᶃ
&CVC%NCUU &GNGICVGF2TQRGTVKGU ॻࠐՄೳͳϓϩύςΟ WBS ͷ߹ɺ%FMFHBUFՃ͑ͯ࣍ͷύϥϝʔλΛऔΔTFU7BMVFͱ͍͏ ໊લͷؔΛఏڙ͢Δɻ ! SFDFJWFSHFU7BMVF ͱಉ͡ NFUBEBUBHFU7BMVF
ͱಉ͡ OFXWBMVFϓϩύςΟͱಉͦ͘͡͠ͷεʔύʔܕ ! HFU7BMVF ͱTFU7BMVF %FMFHBUFΫϥεͷϝϯόؔɺ֦͘͠ுؔͰఏڙͰ͖Δɻ ! ֦ுؔ͜ΕΒͷؔΛఏڙ͍ͯ͠ͳ͍ΦϒδΣΫτʹޙ͔ΒػೳՃ͢Δͷʹศརɻ ؔPQFSBUPSΩʔϫʔυͰϚʔΫ͢Δඞཁ͕͋Δɻ %FMFHBUFE1SPQFSUJFT ཁ݅ᶄ
4UBOEBSE%FMFHBUFT
&CVC%NCUU &GNGICVGF2TQRGTVKGU MB[ZΛ༻͍Δ͜ͱͰɺϓϩύςΟͷॳظԽΛ࠷ॳͷΞΫηε࣌ʹΒͤΔ ͜ͱͰ͖Δɻ ! ·ͨɺͦͷ݁ՌهԱ͞Εɺ࣍ճݺͼग़࣌͠ʹಉ͡Λฦ٫͢Δɻ -B[Z JT
&CVC%NCUU &GNGICVGF2TQRGTVKGU MB[ZॳظΛฦ͢ϥϜμΛύϥϝʔλͰड͚औΓɺ ॳظͷԆ࣮ߦ͢Δ-B[Z5ͷΠϯελϯεΛฦ٫͢Δؔɻ
&CVC%NCUU &GNGICVGF2TQRGTVKGU σϑΥϧτͰϥϜμࣜͷධՁಉظ͞ΕΔɻ ͨͩҰͭͷεϨουͰܭࢉ͞ΕશͯͷεϨου͕ಉ͡Λࢀর͢Δɻ ! ෳͷεϨου͕ಉ࣌ʹܭࢉ͍ͤͨ͞߹ -B[Z5ISFBE4BGFUZ.PEF16#-*$"5*0/ΛMB[Zؔͷύϥϝʔλʹ͢ɻ ! ϥϜμ͕ࣜৗʹγϯάϧεϨουͰܭࢉ͞Ε͍ͯΔ͜ͱ͕อূ͞ΕΔ߹ɺ -B[Z5ISFBE4BGFUZ.PEF/0/&Λ༻͍Δ͜ͱͰ
εϨουηʔϑʹ͢ΔҝͷΦʔόʔϔουΛ͚͞Δ͜ͱ͕Ͱ͖Δɻ -B[Z JT
&CVC%NCUU &GNGICVGF2TQRGTVKGU PCTFSWBCMFΛ༻͍Δ͜ͱͰɺͷมߋΛݕ͢Δ͜ͱ͕Ͱ͖Δɻ PCTFSWBCMF JT
&CVC%NCUU &GNGICVGF2TQRGTVKGU %FMFHBUFTPCTFSWBCMFॳظͱ௨༻ͷϋϯυϥͷͭΛҾͱͯ͠औΔɻ ϋϯυϥϓϩύςΟʹ͕ೖ͞ΕΔͨͼʹݺͼग़͞ΕΔɻ ͕ೖ͞Εͨޙʹݺͼग़͞ΕΔ͜ͱʹҙʂ
&CVC%NCUU &GNGICVGF2TQRGTVKGU ϋϯυϥͷύϥϝʔλϓϩύςΟɾݹ͍ɾ৽͍͠ͷ̏ͭͰ͢ɻ
&CVC%NCUU &GNGICVGF2TQRGTVKGU WFUPBCMF JT WFUPBCMFΛ༻͍Δ͜ͱͰɺͷมߋΛڋ൱͢Δ͜ͱ͕Ͱ͖·͢ɻ
&CVC%NCUU &GNGICVGF2TQRGTVKGU %FMFHBUFTWFUPBCMFͷҾ%FMFHBUFTPCTFSWBCMFͱಉ͡Ͱ͢ɻ %FMFHBUFTPCTFSWBCMFͱҟͳΓ͕ೖ͞ΕΔલʹϋϯυϥ͕ݺͼग़ ͞Ε·͢ɻϋϯυϥͷΓ͕GBMTFͷ߹ɺͷೖΛڋ൱Ͱ͖·͢ɻ
&CVC%NCUU &GNGICVGF2TQRGTVKGU NBQͷதʹϓϩύςΟΛ֨ೲ͢Δ͜ͱΑ͋͘Γ·͢ɻ ! +40/ͷύʔεͰ͋ͬͨΓͦͷଞಈతʹΛऔಘ͢Δ߹Ͱ͢ɻ ! NBQΠϯελϯεΛEFMFHBUFEQSPQFSUZͱͯ͠༻͍Δ͜ͱ͕Ͱ͖·͢ɻ .BQ JT
&CVC%NCUU &GNGICVGF2TQRGTVKGU ϓϩύςΟϓϩύςΟ໊ΛΩʔʹͨ͠NBQͷ͔Βٻ·Γ·͢ɻ .VUBCMF.BQΠϯελϯεΛ༻͍Δ͜ͱͰॻࠐՄೳͳϓϩύςΟ WBS Ͱ༻͍Δ͜ͱͰ͖·͢ɻ
鰯鰙鰲 ·ͱΊͯͳ͍͡ΐ
ֺ-QVNKP鰘鯵鰾鯵鰾&GNGICVG鰑猳 ࣄؙ͛ͩ͡ΐʂ