$30 off During Our Annual Pro Sale. View Details »
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
IntelliJ Plugin開発入門
Search
tommykw
February 18, 2017
Programming
0
270
IntelliJ Plugin開発入門
tommykw
February 18, 2017
Tweet
Share
More Decks by tommykw
See All by tommykw
ポートフォリオを作る
tommykw
0
150
Kotlin Compiler Plugin 入門
tommykw
0
94
Kotlin Compiler Plugin のワークフローを知る
tommykw
1
2.2k
コネヒトの健全性を支えるGithub Actionsの事例紹介
tommykw
0
1.9k
スクラムガイドの理解を深めるためのeduScrumガイド
tommykw
0
1.7k
改めて学ぶContracts
tommykw
10
7k
Kotlinの短絡評価について
tommykw
0
470
初めてのKotlinコントリビュート
tommykw
1
720
Kotlin Issueを投げてみよう!
tommykw
0
3.4k
Other Decks in Programming
See All in Programming
AIエージェントの設計で注意するべきポイント6選
har1101
5
2.3k
從冷知識到漏洞,你不懂的 Web,駭客懂 - Huli @ WebConf Taiwan 2025
aszx87410
2
3k
Context is King? 〜Verifiability時代とコンテキスト設計 / Beyond "Context is King"
rkaga
10
1.4k
GoLab2025 Recap
kuro_kurorrr
0
780
Implementation Patterns
denyspoltorak
0
110
Pythonではじめるオープンデータ分析〜書籍の紹介と書籍で紹介しきれなかった事例の紹介〜
welliving
2
580
AI 駆動開発ライフサイクル(AI-DLC):ソフトウェアエンジニアリングの再構築 / AI-DLC Introduction
kanamasa
11
3.8k
The Past, Present, and Future of Enterprise Java
ivargrimstad
0
320
tparseでgo testの出力を見やすくする
utgwkk
2
280
Graviton と Nitro と私
maroon1st
0
130
公共交通オープンデータ × モバイルUX 複雑な運行情報を 『直感』に変換する技術
tinykitten
PRO
0
160
AIコーディングエージェント(Gemini)
kondai24
0
270
Featured
See All Featured
SEO for Brand Visibility & Recognition
aleyda
0
4.1k
Bioeconomy Workshop: Dr. Julius Ecuru, Opportunities for a Bioeconomy in West Africa
akademiya2063
PRO
0
31
A designer walks into a library…
pauljervisheath
210
24k
CoffeeScript is Beautiful & I Never Want to Write Plain JavaScript Again
sstephenson
162
16k
Building a Scalable Design System with Sketch
lauravandoore
463
34k
A Soul's Torment
seathinner
1
2k
A Guide to Academic Writing Using Generative AI - A Workshop
ks91
PRO
0
170
The Illustrated Children's Guide to Kubernetes
chrisshort
51
51k
The Art of Programming - Codeland 2020
erikaheidi
56
14k
WENDY [Excerpt]
tessaabrams
8
35k
SERP Conf. Vienna - Web Accessibility: Optimizing for Inclusivity and SEO
sarafernandez
1
1.3k
Taking LLMs out of the black box: A practical guide to human-in-the-loop distillation
inesmontani
PRO
3
2k
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։ൃೖ
ՈͷຖΛͬͱসإʹɻ ϚϚϦ ίωώτגࣜձࣾ ͝ਗ਼ௌ͋Γ͕ͱ͏͍͟͝·ͨ͠