MacでFF11時間!? 第4回 こりゃーJava勉強しなおしだ。

開発環境をテキストエディタからEclipseに変更してみました。すると・・・ 第3回までのコード、コンパイルできねぇ。

あーこりゃ、またJavaちょっと勉強しないとな。昔、Java勉強したことありましたけど、そのときってそもそもオブジェクト指向プログラミングの知識がアヤシカッタみたい。で、Javaのオブジェクト指向の部分の本を買って読んでみる。

ふむふむ。あ、普通に読めるぞ・・・ 書いてることがちゃんと理解できる。

どうやら昔よりもオブジェクト指向のなんとやらが、多少なりとも理解できてるようだ。クラス、インスタンス。この辺は大丈夫。スタティック (static) これがいまいちわからんかった。Delphiにはstaticって・・・ ナイデスヨネ? 本を読んで初めて理解... というと語弊があるか。だいたいわかった。

コンストラクタ... DelphiのコンストラクタはCreateか。ふーん、Javaのコンストラクタって引数を変えて複数作れるのか。Delphiだとこれどーなるんだろう。クラス継承して新しいクラス作ってそのCreateを変更するしかない? まぁ、この辺の理解は基本的にテキトーだ。

とりあえずJava思い出した&理解できてきた。そこでソースをいろいろ変更。 VanaDateTimeクラスをしっかりクラスとして実装してあげよう。Javaには構造体がない。クラスを構造体チックに使うとかするより、ちゃんとクラスとして使ってあげたほうが良さそうだ。

そこで今日のダウンロードファイル。

「fftj20050313.zip」をダウンロード

Java使いの人から見てもJavaっぽいコードになってますか? Java勉強中なので、突っ込みは大歓迎です。あ、ちなみにヴァナ時間と地球時間をちゃんと表示させる部分にも手を加えています。ちゃんと0詰でヴァナ時間が表示されるようになってるでしょう? あ、地球時間もDateクラスをそのままprintlnに渡すんではなく、SimpleDateFormatクラス使ってフォーマットしてあげてます。

え?GUI? ンー。GUIに手を出す前に、もうちょっとコンソール版で機能作ってみることにします。なんか、Javaおもしろくなってきた! もうちょっときっちりしっかりJava勉強することにします。

次回予告
GUIはとりあえず置いておく。次は各ギルドの営業時間をコンソールで表示出来るようにする予定です。

| | コメント (2) | トラックバック (0)

MacでFF11時間!? 第3回 ヴァナ時間→地球時間、地球時間→ヴァナ時間

とりあえず・・・ ヴァナ時間から地球時間を求める。地球時間からヴァナ時間を求める。が、できるようになりました。今日のダウンロードファイルはこれ!

「fftj20050309.zip」をダウンロード

jarファイルまで入っています。もちろん全ソース付き。あ、ソースコードはUTF8でエンコードされているのでキヲツケテ。

今回はコンソールでヴァナ時間を地球時間に変換したりその逆をしたりをするので、コマンドラインオプションが用意されています。

使い方:

こんな感じ。 java ffxitime -help で表示される説明のまんまですが。

あ、java ffxitime としても実行できない場合、なんかエラーが出る場合は、java -classpath . ffxitime とかってやると起動できると思います。(たぶん)

とりあえず、コンソール版ですが基本はできた。ここまでできると、VanaToEarth、EarthToVanaメソッドを使って飛空艇の発着やらギルド開店時間やらなどは計算することができる。

が!コンソールでそれらを作っても面白くないので、次からはGUIを作っていくことにしましょうか。JavaでGUI・・・ いちども作ったことないぞー! ちなみに、Macで開発するならGUIはcocoaを使った方がいいのでしょうが・・・ MacもってないのでSWTかSwingで行く予定!

個人的に興味があるのはSWTですが・・・ SWTはソースコードはOS非依存でも、ライブラリがOS依存なんでしたっけか。でも高速。SwingはPureJavaだけどー重い。でも、ちらっと検索するとSWTとMacの情報スクネー。Mac持ってないのでテストできないし・・・ PureJavaなSwingのがいんだろうか。ンー ドッチニシヨウ。

まーぶっちゃけ、GUIはSWTで作ってもSwingで作っても、本当にMacを買ったらcocoaで作り出すと思うので今作っても無駄になるのです! ( ´△`)アァ- どうしよ。

次回予告
基本機能ができたものの、それを包み込む器を作るのに使用するライブラリが決まらない! 次回はSWTとSwingでGUIを作ってみて、どっちがいいのか検証しようと思いマスです。

| | コメント (0) | トラックバック (0)

MacでFF11時間!? 第2回 日本以外でもヴァナ時間を表示

とりあえず地域設定が日本以外でもヴァナ時間が表示できるようにしました。世界中、どこからでもヴァナ時間がわかりますが、表示に思いっきり日本語を使ってるので日本以外では使えません!

今回のダウンロードファイルはこれ。

「fftj20050228.zip」をダウンロード

ダウンロードしたzipファイルにソースコードとクラスファイルがはいってます。ソースコードはやっぱりUTF8でエンコードしてますので、コンパイルは javac ffxitime.java -encoding UTF8 ですよ。

次回予告
引き続き下地作り。今のコードは「現在の地球時間からヴァナ時間を得る」しかできませんが、「任意の地球時間からヴァナ時間を得る」と「任意のヴァナ時間から地球時間を得る」ってのを実装する感じでしょうか。これができるとFF11時間の基本的な下地はできたことに。

| | コメント (0) | トラックバック (0)

MacでFF11時間!? 第1回 とりあえずサンプルを作ってみた

MacでFF11時間を使いたいと思ったりする人はいませんか?

最近、ネット専用の端末としてMac miniが欲しくて欲しくてたまらないところを我慢しているのですが・・・ まぁその我慢のついでといいますかなんと言うか。

Mac miniもそうですけど、iBookとかって値段が手ごろだったりしますし、FF11やってる人の中でもサブPCはMacって人意外といるのかな? とか思ったりするワケです。PS2でFF11やっててPCはMacとかの場合もあるでしょうし。

で、そんな人のため、もしくはMac miniを買っちゃいそうな自分のために、FF11時間のMac版を作ってしまおうという企画です。とりあえず開発はJava。Javaの勉強もかねようという魂胆です。

ただし! この企画、途中で挫折する可能性が巨大 なので、最初からオープンソースで。koji27.comに新しいページを作るのも面倒なので、このココログ上で発表していくことニシマス。

ってことでヴァナ時間を表示するサンプルを作ってみました。

「fftj20050219.zip」をダウンロード

↑これです。classファイルとjavaのソースコード、全部入ってます。ソースコードはUTF8でエンコードしてますので注意してください。
#コンパイルするときは javac ffxitime.java -encoding UTF8 って感じですね。

コンソールで java ffxitime (enter) としてあげればヴァナ時間が表示されます。今はまだこれだけ。先は途方もなく長いワケです。

「次回予定」
20050219版はJavaScript版といっしょでOSの地域設定が日本じゃないと正しいヴァナ時間の取得はできません。次回は、この部分に手を加えてみようと思ってますがどうなるでしょうか(笑)

| | コメント (0) | トラックバック (0)