2010-01-01から1年間の記事一覧

OSGiについての最初の一歩のドキュメントを書き始めました。

GW中にOSGiのチュートリアルというか、最初の一歩を書き始めました。 http://kompiro.org/osgi/ そのうち、もう少し踏み込んだ概略を書くつもりです。

Gitを使っているEclipseユーザが設定しておくと便利な1つの事

EGitなんていうすばらしいプラグインが現在Eclipse.orgで絶賛開発中ですが、残念な事にまだpullやfetchをサポートしてません。なので、他のGitクライアントを併用しながらの開発となると思います。そういうときは下記の設定をしておいた方がいいでしょう。 ……

MacOSX上でQuick JUnitをお使いの皆様へ。日本語クラス名、メソッド名の対応方法

毎年4月25日はQuick JUnitにとって大切な日です。毎年β版をリリースし続けているのもあれなので、リリース版とするために懸案だったMacOSX上でテストメソッド名が日本語メソッド名だと起動しない問題に挑戦しました。調べてみると、その原因はQuick JUnit…

QConTokyo 2010に登壇させていただきました。

QConTokyo 2010に登壇させていただきました。InfoQの翻訳業をする傍ら、このネタがQConにないのはもったいない、と直談判してお話させていただいたのが真相なので、他のスピーカーとは毛色が違います。でなければ、自分が登壇できるはずもないイベントですか…

モジュール化によるコラボレーション

先日翻訳した、Jeff氏のインタビューの中では、モジュール化によるコラボレーションについて軽く触れられています。広い意味でとらえれば、SOAなど、分散システムも大きなモジュールと言うこともできるでしょう。しかし、OSGiのように、一つの環境の中に閉じ…

OSGiとEquinoxを効果的に使う - Jeff McAffer氏とのインタビュー

少し前になりますが、EquinoxのプロジェクトリーダのJeff McAffer氏にJames Sugrue氏がインタビューした記事が、DZoneに上がってました。で、内容があまりに面白かったので、こそっと翻訳しました。DIを考慮したプログラミングモデルがbundle開発にとてもマ…

QCon Tokyo 2010

昨年Spring Frameworkの開発者である、Rod Johnson氏やMartin Fowler氏も講演されたQCon Tokyo。今年も来る4/19、20に開催されることになりました。 参加費が2万円となる早期割引は**3月31日**までです。 これだけのスピーカーが集まるイベント自体そうそう…

Mockitoノススメ テストスタイルの変化

Mockitoを使うようになってから、僕はテストコードへの取り組みが変わりました。Mockitoを使うまで僕がUnit Testと思っていたものは、厳密にはUnit Testじゃないんじゃないか、と思うようになりました。なぜかというと、実装コードを書いていくと、たくさん…

Mockitoノススメ

モックライブラリ使ってますか? 僕はJavaの人なので、主にJUnitを使ってテストコードを書いています。テストコードを書いている最中、「もしこのオブジェクトから例外が帰ってきたら、ちゃんと例外のハンドリングができてんの?」等々、既存のオブジェクトの…

デブサミ2010で登壇させていただきました。

デブサミ2010で発表した資料を公開しました。OSGiのようなモジュールの基盤が、どうして必要で、Javaの世界ではOSGiがモジュール型のアーキテクチャとして現時点で最適な理由が理解していただけたのではないかと思います。「現時点」と書いたのは、実はJava7…

再利用の二つの軸

ゆうすけさんから聞いた、モジュール指向開発の「再利用の二つの軸」が素晴らしかったのでまとめます。ただ、ブログに書いている時点で、自分がモジュール指向開発を進めている経験もあって、その考えも練り込まれてしまっているので、その辺りはご了承を。…

DynamicImport-PackageディレクティブとEquinoxのBuddy Class Loading

GroovyのBundleを見て驚いたのが、MANIFEST.MFに DynamicImport-Package: *と書かれていたこと。これを見て頭がクラクラした。 何が問題? こう書かれてしまうと、OSGi実行環境上で動いているBundleがExport-Packageで宣言しているパッケージのクラスに全てア…

OSGiがエンタープライズアプリケーションに与えるインパクト

Eclipseベースのツールを開発し始めてから3年近く立ちました。1年半くらい前に、SeasarプロジェクトでOSGiサポートをしないのはなぜだろうと、はてダに書いたところ、OSGiはプラットフォームを構成するにはとてもよい仕様だけれど、Webアプリケーションには…

Declarative Serviceとは?

OSGiのサービス連携にはいくつかの方法がありますが、今日はDeclarative Service(通称DS)を見ていきます。 Declarative Serviceとは Declarative Serviceとは、端的にいうと、そのBundleが提供するサービス/利用するサービスをXMLに記述するBundle間のサービ…

Pax Constructを使って、Web Consoleを立ち上げてみる(その2)

HTTP Serviceが立ち上がった事を確認した後は、Web Consoleを入れてみましょう。下記の二つのBundleを、pax-import-bundleを使って追加してみてくだし。 <dependency> <groupId>org.apache.felix</groupId> <artifactId>org.osgi.compendium</artifactId> <version>1.4.0</version> </dependency> <dependency> <groupId>org.apache.felix</groupId> <artifactId>org.apache.…</artifactid></dependency>

Pax Constructを使って、Web Consoleを立ち上げてみる(その1)

今度はPax Constructを使ってFelix Web Consoleを起動するところまでやってみた。Felix Web Consoleについて触れると、稼働中のOSGiコンテナの状況をブラウザを使ってみることができます。 例えばServiceの稼働状況、参照関係、とかもみられます。Felixを起…

Pax Examの使い方

Pax Constructの次はPax Exam、ということで試してみました。今回はを参照しながらやってみました。 Pax Examの目的 Pax ExamはOSGi環境における試験用の環境を構築してくれるものです。*1例えばPax Examを用いてベースとなるOSGiコンテナを切り替えてもBund…

Pax Constructの使い方

Pax ConstructはOSGi bundleの作成や、ビルド等々を助けてくれるスイスアーミーナイフと紹介されています。これからOSGi Bundleを作成するのに便利そうですね!ということで、試してみました。Pax系のツールはMaven2と組み合わせる事で有効にプロジェクトの…

Twitterにテスト結果をつぶやくtwJUnitリリース

TDD Boot Campで作ったtwJUnitですが、bot以外のアカウントでもつぶやけるようにアカウントの設定と、テスト結果をテンプレート形式で指定出来るようにしました。 実行した結果は指定したアカウントに TemplateParserTest OK 12/12 みたいにつぶやきます。更…

Quick JUnit 0.5.0 beta3リリース

2010年元旦にリリースしました。ブログに書くのは2日ですが・・・。 テストコードとプロダクトコードを切り替えたときにカーソルキーが保存されない問題に対応しました。 PDEの起動は別フィーチャに分けました。 最近一押しなMockitoとの連携をする実験的フ…