DATE : 2006/06/30 (Fri)
、> .|
>________ .|
 ̄ .|./_ _\ | | ____________
| / ヽ/ ヽ | | /
. | | ・ | ・ | V⌒i | 6がつのくせに
_ |.\ 人__ノ 6 | <
\ ̄ ○ / | あつすぎだぞ
. \ 厂 \
/ _____/  ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄
 ̄ ̄, -/へ/\/`- 、
/./ ./o i. \
(;´Д`)本当に暑い6月でした。
ただでさえ湿度が高くてムシムシする月にもかかわらずこの暑さ、不快度指数が振り切れそうでした。
なので、どうもだらだらとした日々が続きがちだったのは反省点です orz
(;´Д`)この調子で夏に突入すると、一体どうなることやら……
( ´ー`)まあ、毎年のことですけどね
DATE : 2006/06/29 (Thu)
今日も Java の記事を書こうと、Java の総本山である「Java.sun.com」を開きました。記事中に Java Platform API が出てくる場合は、そのドキュメントの日本語訳にリンクを張るのが常なので、いつも Java.sun.com を開いているわけです。
しかし、開いてみると、前回の記事を書いた時とは少し様子が異なっていました。いつもはトップページの右に JDK へのリンクが張ってあるはずなのですが、ありません。あるのは、「Get Java Softwere」と書かれたバナーで、そのリンクを辿ると JRE のダウンロードページになります。しかも、利用者向けサイトである「Java.com」に飛ばされます。
少し迷ったあげく、トップページ上部にある「Downloads」から「Java SE」を辿ります。そこには、JDK や JRE の見慣れたダウンロードページが……と思いきや、何かカッコよくなっています。前に「Java EE」のダウンロードページを見たことがあるのですが、どうもそちらにウェブページの格好を合わせたようです。
しばらくカッコよくなったダウンロードページを眺めていたのですが、とんでもないことに気が付きました。日本語版のリンクがありません(;゚Д゚)。
英語だけの Java.sun.com でも、ダウンロードページなどの一部のページは日本語化されていました。しかし、いま見た限りでは、日本語版へのリンクが見当たりませんでしたヽ(д`ヽ)。。オロオロ。。(ノ´д)ノ。
JDK 5.0 のドキュメントへのリンクを辿っても、英語版のみ。日本語版へのリンクはありません。
( ゚д゚)まさか、ドキュメント日本語版消滅か! と思ったのですが、ドキュメントのダウンロードページへいくと、日本語のドキュメントがダウンロードできるようにはなっていましたε-(´∀`*)ホッ。ただ、 ZIP 形式で圧縮されているので、API にリンクは張れません。このままでは、 API にリンクを張るときには英語版へリンクを張るしかありません。
しばらくどうしたものかと悩んだのですが、最後の手段として、日本のサン・マイクロシステムズのウェブサイトを見てみました。以前、わずかながら Java の日本語ドキュメントが掲載されていたので、 API ドキュメントもあるかもしれないと思ったからです。
いろいろとリンクがごちゃごちゃしていて迷ったのですが、結果、なんとか見つけることができました。
( ´∀`)つ JDK 5.0 の日本語版ドキュメント(「Sun Developer Connection - 技術情報ポータル」から)
(;゚Д゚)……って、 URL は以前と変わらない罠 orz
DATE : 2006/06/28 (Wed)
javax.swing.JFileChooser を使うと、ファイルを選択するダイアログを開くことができます。
また、JFileChooser に javax.swing.filechooser.FileFilter を登録すると、ダイアログに表示するファイルに制限を加えることができます。例えば、JPEG ファイルのみを選択できるようにするといった具合です。
FileFilter は抽象クラスなので、利用するにはサブクラスを作らなければなりません。
FileFilter には、 FileFilter#accept(java.io.File) と FileFilter#getDescription() と、抽象メソッドが2つ定義されています。前者が引数に渡された File を表示するかどうか真偽値で返し、後者が FileFileter の説明(Windows のファイル選択ダイアログで言うと、「ファイルの種類」の欄に出てくる説明)を文字列で返します。
ここで、先程のように JPEG ファイルのみを表示する FileFilter を作成してみます。ただし、ここでは簡単のため、拡張子が「.jpg」のファイルのみを表示可能にします。
以下に、FileFilter#accept(java.io.File) のコードを示します。
(import 文などは省略)
public boolean accept(File file) {
// ファイル名(全て小文字に変換)
String name = file.getName().toLowerCase();
// 拡張子「.jpg」のファイルなら表示
return name.endsWith(".jpg");
}
しかし、このコードは間違いです。
実際にこの FileFilter を JFileChooser に設定すると、選択欄にほとんど何も表示されず、面食らうことになります。
実は、 FileFilter#accept(java.io.File) にはディレクトリも渡されることになっています。もともと java.io.File は、あくまでもファイルパスの表現でしかないため、中身がファイルを示すことがあれば、ディレクトリを示すこともあります。
つまり上のコードでは、ファイルもディレクトリも「.jpg」で終わっているものでなければ表示しないフィルタになっているのです。
そこで、渡された File がディレクトリの場合はダイアログに表示するように、上のコードを書き換えます。
(import 文などは省略)
public boolean accept(File file) {
// ディレクトリであればダイアログに表示
if (file.isDirectory()) {
return true;
}
// ファイル名(全て小文字に変換)
String name = file.getName().toLowerCase();
// 拡張子「.jpg」のファイルなら表示
return name.endsWith(".jpg");
}
参考文献
DATE : 2006/06/26 (Mon)
「Maven Eclipse Plugin Multiple Module Project with Eclipse」から、 Eclipse でマルチモジュールの Maven プロジェクトを作成する方法をメモします。
Maven プロジェクトの作成
まず、Maven プロジェクトを作成します。
Maven プロジェクトを作成するには、プロジェクトを作成するディレクトリ(例えば、Eclipse のワークスペースに該当するディレクトリ内など)で以下のコマンドを実行します。
mvn archetype:create -DgroupId=<groupId> -DartifactId=<artifactId>
すると、artifactId と同名のディレクトリが生成されます。
ディレクトリの中ある pom.xml を次のように書き換えます。
なお、「...」は中略を表します。
<project ...> ... <packaging>pom</packaging> ... </project>
ここで、この Maven プロジェクトの artifactId を「application」、groupId を「app」と仮定しておきます。
次に、application と同じディレクトリで application のサブプロジェクトを生成します。サブプロジェクトを生成するコマンドは、先程のコマンドと同じです。
ここでは、artifactId が「application-core」と「application-ui」のサブプロジェクトを生成したとします。groupId は、両者とも同じ「app」です。
サブプロジェクトに親プロジェクトを設定
先程生成した application-core と application-ui に、application が親プロジェクトであるという旨を設定します。
ここでは、application-core と application-ui の pom.xml に、次の設定を追加します。
<project ...> ... <parent> <groupId>app</groupId> <artifactId>application</artifactId> <version>1.0-SNAPSHOT</version> </parent> ... </project>
親プロジェクトにサブプロジェクトを設定
application に application-core と application-ui がサブプロジェクトであるという旨を設定します。
application の pom.xml に次の設定を追加します。
<project ...> ... <modules> <module>../application-core</module> <module>../application-ui</module> </modules> ... </project>
本来の Maven では、親プロジェクトのディレクトリ内にサブプロジェクトが配置されるという形がとられています。そのため、親プロジェクトのあるディレクトリにサブプロジェクトを配置する場合は、module 要素の内容として1つ上のディレクトリを指さなければなりません。
プロジェクト間に依存関係がある場合
例えば、application-ui が application-core 内のクラスを使用する場合には、次のように、 application-ui の pom.xml に依存関係の設定を追加します。
<project ...> ... <dependencies> ... <dependency> <groupId>app</groupId> <artifactId>application-core</artifactId> <version>1.0-SNAPSHOT</version> </dependency> ... </dependencies> ... </project>
Eclipse のプロジェクトファイルの生成
以上の設定が完了したら、application のディレクトリ内で次のコマンドを実行します。
mvn install
mvn eclipse:eclipse
これで、application-core と application-core のディレクトリ内に、Eclipse のプロジェクトファイルが生成されます(application のディレクトリ内には何も生成されません)。
あとは、Eclipse から「インポート」で既存のプロジェクトとして application-core と application-ui をインポートすれば作業は終了です。ついでに、 application も新規プロジェクトとして Eclipse に登録しておくと締まりが良いかもしれません。
参考文献
- Maven Eclipse Plugin Multiple Module Project with Eclipse 今回の記事は、このページをまとめたようなものです。
- いつかMavenと呼ばれたい@Wiki
DATE : 2006/06/25 (Sun)
久々に、「大合奏! バンドブラザーズ」(以下、バンブラ)を取り出して遊んでみました。
程よい感じに内容を忘れていて、なかなか楽しめました( ´∀`)
ただ、このゲーム、最近の音ゲー(例えば、太鼓の達人など)と比べると、結構ストイックな点が多かったりします(ただ、それが逆に魅力になっていますが)。
他の音ゲーでは、プレイヤーは音楽の一部(例えばリズムパートなど)だけを演奏し、バックは元から録音された曲が流れるという形になっています。
しかし、バンブラでは、全パートの演奏が可能になっています。1つの曲につき最大8パートで、1人用モードでは特定のパートを選択後、コンピュータが他のパートを自動演奏する形になっています。多人数モードでは、それぞれが別々のパートを選択し、余ったパートをコンピュータが演奏する形になります。
また、各ボタンが音階に対応し、ドラムなど一部の楽器を除いて、ボタンを押しているあいだ音が出続けます。そのため、ゲーム内でも、要求された時間だけボタンを押し続けなければいけません。このあたりが結構やっかいで、要求された時間よりも前にボタンを離してしまったがためにミスになったりします。
ただ、逆に言えば、バンブラはまさに1種の電子楽器と言えるかもしれません。ボタンの組み合わせ上、2オクターブという制限はありますが、これだけでも様々な曲を演奏できるのが驚きです。
このように、楽器に近い操作方法がとられているため、非常に操作しづらい楽譜があります(難易度の高い曲に多いです)。「オーケストラを作曲するときには、運指法に制限がある」と聞いたことがありますが、それに近いことを体験できます。
ちなみに、作曲モードも付いています。五線譜に打ち込むモードもあり、タッチペンを使いながら音符を配置していく作業はとても本格的なものです。もっとも、拍子が固定されていたり、テンポが曲ごとに固定だったりするので、多少の制限はあります。ちなみに私の場合、いろいろと打ち込んでみようと思いましたが、挫折しました orz (;´Д`)どうも、リズム感や音感というものがないようです
なお、追加曲カードリッジも発売されました。このカートリッジは GBA カートリッジの形をしており、バンブラの DS カードと追加曲カートリッジとを DS に差し込むことで、追加曲カートリッジの曲を遊ぶことができるようになります。初めて差し込むときには、N64時代の様々な拡張機能を思い浮かべたものでした。
追加曲カートリッジの収録曲は、ネットで募集したためか濃い選曲が少し混ざっています。だいたい、このあたりが濃い選曲といえるのではないでしょうか。
- ハッピー☆マテリアル
- 日本ブレイク工業社歌
(;^ω^)まあ、バンブラそのものにも、「暴れん坊将軍のテーマ」があったりしましたが……
ただ、肝心の中身についてはちょっと(´・ω・`)な出来でした。上の2曲はかなり良い出来だったのですが、他の曲については、テンポが原曲よりも遅すぎたり、ワンコーラスしかなかったり、演奏が単調だったりと、プレイしていて不満に感じてしまう楽譜が少なくありませんでした。
そこから考えると、バンブラそのものに収録された楽譜はプレイしていて面白いものが選ばれていることが分かります。
ところで、バンブラの主人公ともいえるバーバラ様は、「英語が苦手な大人の DS トレーニング えいご漬け」にも出演しています。本人は不満のようですが……。
ちなみに、公式ページのマンガ・バンブラ入門にはまだ未公開の部分があります。
(;・∀・)発売から1年半ほど経ちましたが、まだ何かあるのでしょうか……