mylynとおともだち
DESCRIPTION
200711のEclipSKYで発表したプレゼン資料です。見にくいフォント部分を修正して上げなおしました。TRANSCRIPT
MylynMylynととおともだちおともだちPresentation by Presentation by 近藤寛喜近藤寛喜
AgendaAgenda
MylynMylynとはとは•そもそもそもそもMylynMylynってなんなのさってなんなのさ
MylynMylynを拡張するを拡張する• MylynMylynを拡張するのは簡単です。を拡張するのは簡単です。
PluginPlugin開発者として開発者としてMylynMylynから学ぶ点から学ぶ点•結構ソースが参考になるんですよ。結構ソースが参考になるんですよ。
MylynMylynから着想を得から着想を得
ててプラグインプラグインつくりまつくりま
した。した。
Percs(Percs(開発中開発中))
あらゆるリソースの更新通知するプラグあらゆるリソースの更新通知するプラグインイン
今は今はRSS/AtomRSS/Atomだけですだけですが、が、NNTP/POP3NNTP/POP3とかとかJSONJSONとかとかXML-XML-RPCRPCとかもとかも
更新検知対象はコネクタで追加可能更新検知対象はコネクタで追加可能
更新されると表示
本題本題いきますいきます
MylynMylyn使ってますか使ってますか??
多いようだったらしばらく飛ばし多いようだったらしばらく飛ばします。ます。
参考サイトを見てみてください。参考サイトを見てみてください。
既存の既存のTaskListTaskListで不十分な理由で不十分な理由
ソースコード上のソースコード上のTODOTODOの場所を埋め込の場所を埋め込むむ•関連するソースをまとめておけない関連するソースをまとめておけない
BTSBTSと連携する機能がないと連携する機能がない• BTSBTS側に用意する必要アリ側に用意する必要アリ
•バグ情報は本来ソースコードと別の情報バグ情報は本来ソースコードと別の情報 バグは公開したいけどソースは公開できないバグは公開したいけどソースは公開できない
SCMSCMとの連携ができないとの連携ができない•ソースコードを共有することでソースコードを共有することでTODOTODOを共有を共有という使い方しかないという使い方しかない
そこでそこでMylynMylyn
MylynMylynとはとは
EclipseEclipse上のタスクを管理するためのツー上のタスクを管理するためのツールル•既存の既存のTaskListTaskListでは不十分では不十分
Task Forced UITask Forced UIを提案したツールを提案したツール• EclipseEclipseののUIUIをリファクタリングとまで言わをリファクタリングとまで言われますれます
• Eclipse3.3Eclipse3.3で標準添付されてます。で標準添付されてます。 配布物によっては入ってません配布物によっては入ってません
• Eclipse ClassicEclipse Classic• Eclipse for C or C++ DeveloperEclipse for C or C++ Developer
MylynMylynのうれしさのうれしさ
今やっている作業に集中するための今やっている作業に集中するためのUIUI 突然発生した作業を簡単にメモっておけ突然発生した作業を簡単にメモっておけるる
その他その他• BTSBTSにバグ等を簡単に登録できるにバグ等を簡単に登録できる
• BTSBTSの更新を通知してくれるの更新を通知してくれる
•バグごとにコミットできるバグごとにコミットできる
•コミット時のテンプレートが用意されているコミット時のテンプレートが用意されている
•いろんなプラグインと統合いろんなプラグインと統合
今のタスクに集中する今のタスクに集中する
タスクコンテキストという概念タスクコンテキストという概念•タスクごとに関連するファイル、リソースをタスクごとに関連するファイル、リソースをまとめたものまとめたもの
•このコンテキストはタスクの再開時や引継ぎこのコンテキストはタスクの再開時や引継ぎにタスクへの「復帰」に役立つにタスクへの「復帰」に役立つ
•タスクコンテキストに集中させるタスクコンテキストに集中させるUIUI
このタスクをやってます
タスクの登録タスクの登録
TaskListViewTaskListView上で か上で かInsertInsertキーを押キーを押すす•最初なれるまでこっちがいいかも最初なれるまでこっちがいいかも
BTSBTSからクエリーを使って取得するからクエリーを使って取得する• MylynMylynはバグの修正とかに役立ちますはバグの修正とかに役立ちます
• BTSBTSはタスクリポジトリビューから登録しまはタスクリポジトリビューから登録しますす
BTSBTSを使ってを使ってタスクコンテキストを共有するタスクコンテキストを共有する
MylynMylynにはにはBTSBTSと接続するためのコネクタと接続するためのコネクタがあります。があります。• BugzillaBugzilla• TracTrac• JIRAJIRA
タスクコンテキストをバグへの添付ファタスクコンテキストをバグへの添付ファイルとすることでコンテキストを共有でイルとすることでコンテキストを共有できます。きます。
コンテキスト添付時にコメントをつけらコンテキスト添付時にコメントをつけられます。れます。
BTSBTSの編集できます。の編集できます。 リポジトリのタスクを編集するためのエリポジトリのタスクを編集するためのエディタがついています。ディタがついています。
簡単にデモってみます簡単にデモってみます
そんなそんなMylynMylynに機能追加に機能追加
意外にかんたん意外にかんたん
MylynMylynを使い始めたときを使い始めたとき
誤ってタスクコンテキストを添付したら誤ってタスクコンテキストを添付したら仲間内から変なファイル添付するなと怒仲間内から変なファイル添付するなと怒られるかもしれないられるかもしれない
自分だけタスクコンテキストを使ってみ自分だけタスクコンテキストを使ってみたいたい
TaskListViewTaskListViewにメニューを追加してみるにメニューを追加してみる
プラグインに機能追加するにはプラグインに機能追加するには
拡張ポイントを追加する拡張ポイントを追加する• Eclipse3.3Eclipse3.3の場合の場合org.eclipse.ui.menusorg.eclipse.ui.menusがいい感じがいい感じ
• org.eclipse.ui.menusorg.eclipse.ui.menusを使うと設定が増えるが、一通り同じクを使うと設定が増えるが、一通り同じクラス(ラス(IHandlerIHandler)を使って拡張できる)を使って拡張できる((ショートカットキーもショートカットキーも作りやすい作りやすい))
org.eclipse.ui.menusorg.eclipse.ui.menus• popup:org.eclipse.mylyn.tasks.ui.views.tasks?popup:org.eclipse.mylyn.tasks.ui.views.tasks?
after=additionsafter=additions• scheme + target id + queryscheme + target id + query
schemescheme• menumenuややpopuppopupなど、追加したい「もの」を指定するなど、追加したい「もの」を指定する
target idtarget id• 追加する追加するViewViewややEditorEditorなどのなどのIDIDを指定するを指定する
queryquery• afterafterかかbeforebeforeの後、メニューのどのあたりに追加するかを指定するの後、メニューのどのあたりに追加するかを指定する
TaskListViewTaskListView上のモデルたち上のモデルたち
これの子クラスが各BTSのタスク役
やってみるやってみる• New WizardNew Wizardを使ってプラグインプロジを使ってプラグインプロジェクトを作るェクトを作る
• META-INF/MANIFEST.MFMETA-INF/MANIFEST.MFを選んでを選んでPDEPDEエディタを開くエディタを開く
• ExtendsExtendsタブを選んで拡張ポイントを作タブを選んで拡張ポイントを作っていくっていく
• 拡張ポイントからクラスを作ってみる拡張ポイントからクラスを作ってみる• 起動構成を作って起動する起動構成を作って起動する
• デバッグ起動を使いながら実装デバッグ起動を使いながら実装((ホットデプホットデプロイロイ))
33分間コーディング分間コーディング
((ほぼ出来合いほぼ出来合い))ソースコードは下記にあります。ソースコードは下記にあります。
https://eclipse-study.svn.sourceforge.net/https://eclipse-study.svn.sourceforge.net/
svnroot/eclipse-study/StudySession/200711/ContributeToMylynsvnroot/eclipse-study/StudySession/200711/ContributeToMylyn
参考サイト参考サイト
たけぞうさんの記事たけぞうさんの記事 http://journal.mycom.co.jp/column/ihttp://journal.mycom.co.jp/column/i
de/014/index.htmlde/014/index.html 手前味噌ですが、自分の記事手前味噌ですが、自分の記事
• http://www.thinkit.co.jp/free/article/0709/22/1/http://www.thinkit.co.jp/free/article/0709/22/1/ MylynMylynでググるといろいろ見つかるよでググるといろいろ見つかるよ!!
ご清聴ご清聴ありがとうございまありがとうございま
した。した。