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.1k
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.2k
Ionic React でサービス開発したお話
kozake
0
150
ドキッ!失敗だらけのシステム開発
kozake
1
840
やはり俺のWeb APIは間違えている
kozake
0
540
すごい大規模 たのしく作ろう
kozake
4
2.5k
KHipster ~JHipsterで始めるKotlin Web プログラミング~
kozake
0
900
Docker with JHipster
kozake
1
580
実践JHipster #jsug #sf_36
kozake
2
7.7k
Ionicでアプリ作ったよ!開発方法の紹介
kozake
2
1k
Other Decks in Technology
See All in Technology
KotlinConf 2025_イベントレポート
sony
1
140
20250910_障害注入から効率的復旧へ_カオスエンジニアリング_生成AIで考えるAWS障害対応.pdf
sh_fk2
3
280
品質視点から考える組織デザイン/Organizational Design from Quality
mii3king
0
210
サラリーマンの小遣いで作るtoCサービス - Cloudflare Workersでスケールする開発戦略
shinaps
2
470
「何となくテストする」を卒業するためにプロダクトが動く仕組みを理解しよう
kawabeaver
0
440
AI時代を生き抜くエンジニアキャリアの築き方 (AI-Native 時代、エンジニアという道は 「最大の挑戦の場」となる) / Building an Engineering Career to Thrive in the Age of AI (In the AI-Native Era, the Path of Engineering Becomes the Ultimate Arena of Challenge)
jeongjaesoon
0
260
2025/09/16 仕様駆動開発とAI-DLCが導くAI駆動開発の新フェーズ
masahiro_okamura
0
140
Wantedlyの開発組織における生成AIの浸透プロジェクトについて
kotominaga
2
110
まずはマネコンでちゃちゃっと作ってから、それをCDKにしてみよか。
yamada_r
2
120
Rustから学ぶ 非同期処理の仕組み
skanehira
1
150
Codeful Serverless / 一人運用でもやり抜く力
_kensh
7
460
いま注目のAIエージェントを作ってみよう
supermarimobros
0
370
Featured
See All Featured
Practical Tips for Bootstrapping Information Extraction Pipelines
honnibal
PRO
23
1.4k
The Invisible Side of Design
smashingmag
301
51k
Reflections from 52 weeks, 52 projects
jeffersonlam
352
21k
Optimizing for Happiness
mojombo
379
70k
The Illustrated Children's Guide to Kubernetes
chrisshort
48
50k
Navigating Team Friction
lara
189
15k
[Rails World 2023 - Day 1 Closing Keynote] - The Magic of Rails
eileencodes
36
2.5k
The Straight Up "How To Draw Better" Workshop
denniskardys
236
140k
How To Stay Up To Date on Web Technology
chriscoyier
790
250k
Context Engineering - Making Every Token Count
addyosmani
3
63
A Modern Web Designer's Workflow
chriscoyier
696
190k
GitHub's CSS Performance
jonrohan
1032
460k
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鰑猳 ࣄؙ͛ͩ͡ΐʂ