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
IntelliJ Plugin開発入門
Search
tommykw
February 18, 2017
Programming
0
220
IntelliJ Plugin開発入門
tommykw
February 18, 2017
Tweet
Share
More Decks by tommykw
See All by tommykw
ポートフォリオを作る
tommykw
0
120
Kotlin Compiler Plugin 入門
tommykw
0
66
Kotlin Compiler Plugin のワークフローを知る
tommykw
1
1.9k
コネヒトの健全性を支えるGithub Actionsの事例紹介
tommykw
0
1.7k
スクラムガイドの理解を深めるためのeduScrumガイド
tommykw
0
1.4k
改めて学ぶContracts
tommykw
10
6.5k
Kotlinの短絡評価について
tommykw
0
330
初めてのKotlinコントリビュート
tommykw
1
630
Kotlin Issueを投げてみよう!
tommykw
0
3.2k
Other Decks in Programming
See All in Programming
コード生成を伴うLLMエージェント - 2024.07.18 Tokyo AI
smiyawaki0820
11
4.1k
12年前の『型システム入門』翻訳の思い出話
mame
11
1.2k
OpenAI/Gemini APIを使って EPUBを翻訳するCLIツールをつくってみた
tomiyan
0
790
Polarsの成長: v0.14からv1.0までの変遷と今後の展望
zerebom
1
350
iOSアプリでクリップボードにコピーしたことをユーザーに伝えるちょうど良いフィードバックを探す
ski
0
100
日付と正規化
megmogmog1965
0
140
유연한 Composable 설계
l2hyunwoo
0
380
Architectures with Lightweight Stores: New Rules and Options
manfredsteyer
PRO
0
100
GraphQL はいいぞ! ~Laravel で学ぶ GraphQL 入門~
azuki
1
160
Introduction to GitOps
hwchiu
0
110
はしめてのプログラミングとロボット制御
watawatavoltage
0
290
Advanced App Shrinking Techniques
cbeyls
2
150
Featured
See All Featured
CSS Pre-Processors: Stylus, Less & Sass
bermonpainter
353
29k
Faster Mobile Websites
deanohume
303
30k
From Idea to $5000 a Month in 5 Months
shpigford
377
46k
The Invisible Customer
myddelton
117
13k
The Art of Programming - Codeland 2020
erikaheidi
48
13k
Web Components: a chance to create the future
zenorocha
307
41k
Designing with Data
zakiwarfel
96
5k
Cheating the UX When There Is Nothing More to Optimize - PixelPioneers
stephaniewalter
277
13k
Fontdeck: Realign not Redesign
paulrobertlloyd
79
5.1k
What's in a price? How to price your products and services
michaelherold
239
11k
Visualization
eitanlees
139
14k
jQuery: Nuts, Bolts and Bling
dougneiner
61
7.4k
Transcript
ՈͷຖΛͬͱসإʹɻ ϚϚϦ ίωώτגࣜձࣾ *OUFMMJ+1MVHJO։ൃೖ
ϚϚϦ ϓϩϑΟʔϧ ా݈ೋ !UPNNZLX !UPNNZLX $POOFIJUP JOD"OESPJE&OHJOFFS
ϚϚϦ ΞδΣϯμ w *OUFMMJ+1MVHJOʹ͍ͭͯ w 0QUJNJ[F*NQPSUTʹ͍ͭͯ w 0QUJNJ[F3FTPVSDFTʹ͍ͭͯ
ՈͷຖΛͬͱসإʹɻ ϚϚϦ ίωώτגࣜձࣾ *OUFMMJ+1MVHJOʹ͍ͭͯ
ϚϚϦ *OUFMMJ+1MVHJOʹ͍ͭͯ w *OUFMMJ+1MVHJOʹ͍ͭͯ w 0QUJNJ[F*NQPSUTʹ͍ͭͯ w 0QUJNJ[F3FTPVSDFTʹ͍ͭͯ
ϚϚϦ *OUFMMJ+1MVHJOʹ͍ͭͯ ίʔυิɺݕࠪɺϦϑΝΫλϦϯάɺϦιʔε ͷ࠷దԽͳͲɺଟ͘ͷػೳ͕͋ΓɺݴޠʹಛԽ͠ ͨ*%&ɺྫ͑3VCZ.JOFɺ1IQ4UPSNɺ "OESPJE4UVEJPͳͲ༷ʑͳ1MVHJO͕͋Γ·͢ɻ *OUFMMJ+1MVHJOʹ͍ͭͯ
ϚϚϦ *OUFMMJ+1MVHJOػೳҰཡ ػೳҰཡ w *OUFOUJPO"DUJPOT w $PEF*OTQFDUJPO w "DUJPO4ZTUFN
ϚϚϦ *OUFMMJ+1MVHJOػೳҰཡ ػೳҰཡ w *OUFOUJPO"DUJPOT w $PEF*OTQFDUJPO w "DUJPO4ZTUFN
ϚϚϦ *OUFOUJPO"DUJPOT *OUFOUJPO"DUJPOT ߏจ্ͷΛվળɺ·ͨ࠷దԽ͢ΔͨΊͷ దͳҙਤಈ࡞ΛఏҊ͠·͢ɻ"MU &OUFSγϣʔ τΧοτΛ༻͍ͯૢ࡞͢Δ͜ͱ͕Ͱ͖·͢ɻ
ϚϚϦ *OUFOUJPO"DUJPOT *OUFOUJPO"DUJPOT
ϚϚϦ *OUFOUJPO"DUJPOT *OUFOUJPO"DUJPOT
ϚϚϦ *OUFOUJPO"DUJPOT *OUFOUJPO"DUJPOT
ϚϚϦ $PEF*OTQFDUJPO ػೳҰཡ w *OUFOUJPO"DUJPOT w $PEF*OTQFDUJPO w "DUJPO4ZTUFN
ϚϚϦ $PEF*OTQFDUJPO $PEF*OTQFDUJPO ίϯύΠϧΛ͢ΔલʹಛఆͷίʔυͷݕࠪΛߦ͍ɺ ΤϥʔɺܯࠂɺϓϩδΣΫτݻ༗ͷنҧͳͲ Λࢦఠ͠·͢ɻ*OUFOUJPO"DUJPOT "MU &OUFS Ͱ ࢦఠ͞Εͨίʔυͷमਖ਼Λߦ͏͜ͱ͕Ͱ͖·͢ɻ
ϚϚϦ $PEF*OTQFDUJPO $PEF*OTQFDUJPO
ϚϚϦ $PEF*OTQFDUJPO $PEF*OTQFDUJPO
ϚϚϦ $PEF*OTQFDUJPO $PEF*OTQFDUJPO
ϚϚϦ $PEF*OTQFDUJPO $PEF*OTQFDUJPO
ϚϚϦ "DUJPO4ZTUFN ػೳҰཡ w *OUFOUJPO"DUJPOT w $PEF*OTQFDUJPO w "DUJPO4ZTUFN
ϚϚϦ "DUJPO4ZTUFN *%&"ͷϝχϡʔπʔϧόʔʹΧελϜΞΠς ϜΛՃ͢Δ͜ͱ͕Ͱ͖·͢ɻ"O"DUJPOΫϥε Λੜͨ͠ͷͰɺϝχϡʔ߲·ͨπʔϧόʔ Ϙλϯ͕બ͞Εͨͱ͖ʹ࣮ߦϝιου͕ݺͼ ग़͞Ε·͢ɻ "DUJPO4ZTUFN
ϚϚϦ "DUJPO4ZTUFN "DUJPO4ZTUFN
ՈͷຖΛͬͱসإʹɻ ϚϚϦ ίωώτגࣜձࣾ 0QUJNJ[F*NQPSUTʹ͍ͭͯ
ϚϚϦ 0QUJNJ[F*NQPSUTʹ͍ͭͯ w *OUFMMJ+1MVHJOʹ͍ͭͯ w 0QUJNJ[F*NQPSUTʹ͍ͭͯ w 0QUJNJ[F3FTPVSDFTʹ͍ͭͯ
ϚϚϦ 0QUJNJ[F*NQPSUTʹ͍ͭͯ +BWBɺ,PUMJOͷJNQPSUΩʔϫʔυʹಛԽͨ͠ "DUJPO1MVHJOͰɺॏෳͨ͠JNQPSUະ༻ͷ JNQPSUΛҰׅͰૢ࡞͢Δ͜ͱ͕Ͱ͖·͢ɻ·ͨ JNQPSUͷॱংͷཧΛߦ͍·͢ɻ 0QUJNJ[F*NQPSUTʹ͍ͭͯ
ϚϚϦ 0QUJNJ[F*NQPSUT 0QUJNJ[F*NQPSUT
ϚϚϦ 0QUJNJ[F*NQPSUT 0QUJNJ[F*NQPSUT
ϚϚϦ 0QUJNJ[F*NQPSUT 0QUJNJ[F*NQPSUT
ϚϚϦ "OESPJEͷϦιʔεཧ "OESPJEʹ͓͚ΔϦιʔεཧ
ϚϚϦ "OESPJEͷϦιʔεཧ ϦιʔεཧΛ؆୯ʹ͍ͨ͠ ઌ΄ͲͷϦιʔείʔυͷBUUSJCVUFɺίʔυ ͱҟͳΓɺະ༻࣌ʹ৭͕มΘΓ·ͤΜɻͲͷ Ϧιʔε͕ະ༻Ͱ͋Δͷ͔ௐΔͷׂ͕ͱ໘ ͍͘͞Ͱ͢ɻग़དྷΕॱংἧ͍͑ͨ
ϚϚϦ "OESPJEͷϦιʔεཧ 0QUJNJ[F*NQPSUTͷϦιʔε൛͕͋Δͱ ͍͍Ͷʂʂ
ՈͷຖΛͬͱসإʹɻ ϚϚϦ ίωώτגࣜձࣾ 0QUJNJ[F3FTPVSDFTʹ͍ͭͯ
ϚϚϦ 0QUJNJ[F3FTPVSDFTʹ͍ͭͯ w *%&"1MVHJOʹ͍ͭͯ w 0QUJNJ[F*NQPSUTʹ͍ͭͯ w 0QUJNJ[F3FTPVSDFTʹ͍ͭͯ
ϚϚϦ 0QUJNJ[F3FTPVSDFT1MVHJO ػೳͱͯ͠ɺະ༻ͷϦιʔεͷআ͕ϝΠϯ ͷػೳͰ͢ɻকདྷతʹ0QUJNJ[FJNQPSUTͷΑ ͏ͳॱংௐະ༻ϦιʔεͷΧϥʔΛάϨʔ ʹͨ͠ΓɺϓϨϏϡʔը໘Λग़͍ͨ͠ͱࢥͬͯ ͍·͢ɻ͜ΕΛ࡞Γ͍ͨʂ 0QUJNJ[F3FTPVSDFT1MVHJO
ϚϚϦ 3FNPWF6OVTFE3FTPVSDFT ࣮ʮ3FNPWF6OVTFE3FTPVSDFTʯͱ ͍͏ػೳ͕͢Ͱʹ͋ͬͨʂ
ϚϚϦ 3FNPWF6OVTFE3FTPVSDFT 3FNPWF6OVTFE3FTPVSDFT
ϚϚϦ 3FNPWF6OVTFE3FTPVSDFT ෆཁͳϦιʔεͷআΛߦ͏"DUJPO1MVHJOɻ ෆཁͳQOHYNMͷBUUSJCVUFͷআ͕Ͱ͖ɺ "OESPJE4UVEJPʹಋೖ͞Ε͍ͯͨɻ 3FNPWF6OVTFE3FTPVSDFT
ϚϚϦ 3FNPWF6OVTFE3FTPVSDFT ϓϩμΫτͰ࣮ࡍʹࢼ͕ͨ͠ಈ͔ͳ͍ɻ খ͍͞αϯϓϧͩͱͪΌΜͱಈ͘ͷͰɺ Կ͔όά͕͋ΔΜͰ͠ΐ͏͔ʼʻ 3FNPWF6OVTFE3FTPVSDFT
ϚϚϦ *OUFMMJ+1MVHJO࡞ *OUFMMJ+1MVHJOΛ࡞ͬͯΈͨʂ
ϚϚϦ 0QUJNJ[F3FTPVSDFTͷίʔυ 3FTPVSDF0QUJNJ[F"DUJPO
ϚϚϦ 0QUJNJ[F3FTPVSDFTͷಈ࡞ ͜Μͳײ͡ͷಈ࡞Ͱ͢ʂ
ϚϚϦ 0QUJNJ[F3FTPVSDFTͷಈ࡞ 0QUJNJ[F3FTPVSDFT
ϚϚϦ 0QUJNJ[F3FTPVSDFTͷಈ࡞ 0QUJNJ[F3FTPVSDFT
ϚϚϦ 0QUJNJ[F3FTPVSDFTͷಈ࡞ 0QUJNJ[F3FTPVSDFT
ϚϚϦ 0QUJNJ[F3FTPVSDFT YNMɺLUϑΝΠϧɺKBWBϑΝΠϧΛૢ࡞͢Δʹ͋ ͨΓɺ7JSUVBM'JMFͱ1TJ'JMFΛͬͯૢ࡞͍ͯ͠ ·ͨ͠ɻͦΕͧΕͷػೳ͍ͭͯ֬ೝ͠·͢ɻ
ϚϚϦ 7JSUVBM'JMF 7JSUVBM'JMF ԾϑΝΠϧγεςϜͰɺ*OUFMMJ+ϓϥοτϑΥʔ ϜͷίϯϙʔωϯτͰϑΝΠϧΛॲཧ͢ΔͨΊʹ ར༻͠·͢ɻ
ϚϚϦ 14*'JMFT 14*'JMFT 1SPHSBN4USVDUVSF*OUFSGBDFͰɺݴޠϑΝΠ ϧͷFMFNFOUΛද͠ɺ9NM'JMFɺ1TJ+BWB'JMFɺ ,U'JMFͳͲ͕͋Γ·͢ɻϑΝΠϧͷಡΈࠐΈղ ੳΛߦ͏͜ͱ͕Ͱ͖·͢ɻ
ϚϚϦ ࡶײ ࡶײ w ͦ͜·Ͱ։ൃϋʔυϧߴ͘ͳ͍ w αϯϓϧ͕গͳ͍ͷͰগ͠େม͔͠Εͳ͍ w ίʔυΛಡΉ͜ͱଟͦ͏ w
υΩϡϝϯτ͕ॆ࣮͍ͯ͠ͳ͍ w νϟϯε͋Γͦ͏ w ,PUMJOʹίϯτϦϏϡʔτνϟϯε w ϥΠϒϥϦͷ1MVHJOΛ࡞Δ
ՈͷຖΛͬͱসإʹɻ ϚϚϦ ίωώτגࣜձࣾ *OUFMMJ+1MVHJO։ൃೖ
ՈͷຖΛͬͱসإʹɻ ϚϚϦ ίωώτגࣜձࣾ ͝ਗ਼ௌ͋Γ͕ͱ͏͍͟͝·ͨ͠