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
KanColleViewer プラグインの作り方 入門編
Search
veigr
August 22, 2015
Programming
1
8.7k
KanColleViewer プラグインの作り方 入門編
KanColleViewer プラグイン作成のチュートリアル。
veigr
August 22, 2015
Tweet
Share
More Decks by veigr
See All by veigr
HTTP/2 をなんとなく理解した気になれる話 / Understanding HTTP2
veigr
5
2.6k
KanColleViewer PluginAnalyzer の実装
veigr
0
1.7k
カラーマネジメントシステムの概要 と カラマネプログラミング初歩
veigr
1
3.3k
Other Decks in Programming
See All in Programming
WebエンジニアがSwiftをブラウザで動かすプレイグラウンドを作ってみた
ohmori_yusuke
0
170
AI Coding Meetup #3 - 導入セッション / ai-coding-meetup-3
izumin5210
0
270
なぜあの開発者はDevRelに伴走し続けるのか / Why Does That Developer Keep Running Alongside DevRel?
nrslib
2
350
メモリ不足との戦い〜大量データを扱うアプリでの実践例〜
kwzr
1
740
SpecKitでどこまでできる? コストはどれくらい?
leveragestech
0
440
Playwrightはどのようにクロスブラウザをサポートしているのか
yotahada3
7
2.2k
NetworkXとGNNで学ぶグラフデータ分析入門〜複雑な関係性を解き明かすPythonの力〜
mhrtech
3
950
CSC305 Lecture 01
javiergs
PRO
1
380
育てるアーキテクチャ:戦い抜くPythonマイクロサービスの設計と進化戦略
fujidomoe
1
150
ABEMAモバイルアプリが Kotlin Multiplatformと歩んだ5年 ─ 導入と運用、成功と課題 / iOSDC 2025
akkyie
0
310
AIで開発生産性を上げる個人とチームの取り組み
taniigo
0
130
プロダクト開発をAI 1stに変革する〜SaaS is dead時代で生き残るために〜 / AI 1st Product Development
kobakei
0
440
Featured
See All Featured
JavaScript: Past, Present, and Future - NDC Porto 2020
reverentgeek
52
5.6k
Stop Working from a Prison Cell
hatefulcrawdad
271
21k
Writing Fast Ruby
sferik
629
62k
Automating Front-end Workflow
addyosmani
1371
200k
10 Git Anti Patterns You Should be Aware of
lemiorhan
PRO
657
61k
A Tale of Four Properties
chriscoyier
160
23k
The Success of Rails: Ensuring Growth for the Next 100 Years
eileencodes
46
7.6k
XXLCSS - How to scale CSS and keep your sanity
sugarenia
248
1.3M
4 Signs Your Business is Dying
shpigford
185
22k
Fashionably flexible responsive web design (full day workshop)
malarkey
407
66k
CoffeeScript is Beautiful & I Never Want to Write Plain JavaScript Again
sstephenson
162
15k
Creating an realtime collaboration tool: Agile Flush - .NET Oxford
marcduiker
32
2.2k
Transcript
KanColleViewer プラグイン の作り方 入門編 1
自己紹介とか ゔぇい • 小さいSIerでWPF+ASP.NET WebAPIな小さい業務アプリとか作ってます • VS2002の頃からずっと .NET メイン (たまにJavaとかFlexとか)
• KanColleViewer プラグインもいくつか作ってます • 最近は KanColleViewer 本体の開発も少し • Twitter : @veigr • Blog : http://www.cat-ears.net/ 2
KanColleViewer とは 3
KanColleViewer とは 4 a.k.a. 「提督業も忙しい!」 ぐらばく (@Grabacr07) さん作
「提督業も忙しい! (KanColleViewer) は、 DMM.com が配信しているブラウザゲーム『艦隊これ くしょん ~艦これ~』をより遊びやすくするための ツールです。」 引用元 : http://grabacr.net/kancolleviewer
KanColleViewer プラグイン 5
KanColleViewer プラグイン 6 KanColleViewer はプラグインによる機能拡張が可能 MEF (Managed Extensibility
Framework) を利用している KanColleViewer 4.0 以降、作成が比較的簡単になった
KanColleViewer プラグイン 作例 7
KanColleViewer プラグイン 作例 8 MapHP プラグイン (攻略海域情報表示)
KanColleViewer プラグイン作例 9 LvChart プラグイン (艦娘Lvチャート)
KanColleViewer プラグイン作例 10 BattleInfo プラグイン (戦闘情報表示)
KanColleViewer プラグインを作ってみる 11
艦隊司令部のコメントを表示するだけのやつ 12
その1 13
「WPF ユーザー コントロール ライブラリ」 プロジェクトを作る 14
その2 15
NuGet パッケージをインストール 16 KanColleViewer.Composition • プラグイン インターフェイス群 KanColleViewer.PluginAnalyzer
• プラグイン開発用 Roslyn Code Analyzer KanColleWrapper • 艦これデータ・通信部 KanColleViewer.Controls • Controls, Converters, Styles
その3 17
「IPlugin」インターフェイスを実装 18 Analyzer に怒られるので実装
その4 19
「Export」「ExportMetadata」属性を追加 20 Analyzer に言われるがまま足して編集
「Export」「ExportMetadata」属性を追加 21 ExportMetadata は 設定 > プラグイン タブに表示 される内容
その5 22
「ITool」インターフェイスも実装 23 ここに画面が 出せるようになる
その6 24
画面を作る 25 とりあえず艦隊司令部のコメントを出すだけのやつ
その7 26
ビルドして Plugins フォルダに DLL コピペ 27
その8 28
起動して確認 29
ね、簡単でしょ? 30
まとめ 1. 「WPF ユーザー コントロール ライブラリ」プロジェクトを作る 2. NuGet パッケージをインストール 3.
「IPlugin」インターフェイスを実装 4. 「Export」、「ExportMetadata」属性を追加 5. 「ITool」インターフェイスを実装 6. 画面を作る 7. ビルドして Plugins フォルダに DLL をコピペ 8. 起動して確認 31