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
280
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
IntelliJ Plugin開発入門
tommykw
February 18, 2017
More Decks by tommykw
See All by tommykw
ポートフォリオを作る
tommykw
0
170
Kotlin Compiler Plugin 入門
tommykw
0
110
Kotlin Compiler Plugin のワークフローを知る
tommykw
1
2.4k
コネヒトの健全性を支えるGithub Actionsの事例紹介
tommykw
0
2k
スクラムガイドの理解を深めるためのeduScrumガイド
tommykw
0
1.8k
改めて学ぶContracts
tommykw
10
7.2k
Kotlinの短絡評価について
tommykw
0
500
初めてのKotlinコントリビュート
tommykw
1
750
Kotlin Issueを投げてみよう!
tommykw
0
3.4k
Other Decks in Programming
See All in Programming
Datadog × OpenTelemetry 入門と実践のあいだ
kn_to_maxpno
1
160
The NotImplementedError Problem in Ruby
koic
1
810
The ROI of Quarkus for Spring Boot Applications
hollycummins
0
120
コンテキストの使い捨てをやめる — ビジネスルール駆動開発と miko —
ioki
0
210
ふつうのFeature Flag実践入門
irof
7
4k
ローカルLLMでどこまでコードが書けるか -拡張版 / How much code can be written on a local LLM Extended
kishida
11
4.2k
AI 時代のソフトウェア設計の学び方
masuda220
PRO
29
13k
TAKTでAI駆動開発の品質を設計する
j5ik2o
7
1.3k
Vite+ Unified Toolchain for the Web
naokihaba
0
310
Mujeres en SEO Summit 2026 - Greatest Disaster Hits en Web Performance
guaca
0
180
Java × distroless で 軽量なコンテナイメージを / Java on Distroless
contour_gara
0
550
Observability in Practice:Grafana 與 Edge Device SRE 的那些事
blueswen
0
170
Featured
See All Featured
Why You Should Never Use an ORM
jnunemaker
PRO
61
9.9k
Java REST API Framework Comparison - PWX 2021
mraible
34
9.4k
AI: The stuff that nobody shows you
jnunemaker
PRO
8
720
Navigating Algorithm Shifts & AI Overviews - #SMXNext
aleyda
1
1.3k
ラッコキーワード サービス紹介資料
rakko
1
3.7M
Conquering PDFs: document understanding beyond plain text
inesmontani
PRO
4
2.8k
Build The Right Thing And Hit Your Dates
maggiecrowley
39
3.2k
SERP Conf. Vienna - Web Accessibility: Optimizing for Inclusivity and SEO
sarafernandez
2
1.5k
The Language of Interfaces
destraynor
162
27k
Building Experiences: Design Systems, User Experience, and Full Site Editing
marktimemedia
0
530
Bootstrapping a Software Product
garrettdimon
PRO
307
120k
A better future with KSS
kneath
240
18k
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։ൃೖ
ՈͷຖΛͬͱসإʹɻ ϚϚϦ ίωώτגࣜձࣾ ͝ਗ਼ௌ͋Γ͕ͱ͏͍͟͝·ͨ͠