何か創りたい。
http://toshirr.blog13.fc2.com/
* Toshi's Recess Room - Toshi Creates. - 2009年10月 の記事 /
<< 2009/09 - 2009/10 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 - 2009/11 >>

スポンサーサイト

上記の広告は1ヶ月以上更新のないブログに表示されています。
新しい記事を書く事で広告が消せます。

[ No. ]
[ 日時 : --/--/-- (--.) --:--:-- ]
[ カテゴリ : スポンサー広告 ]


i アプリ開発備忘録 (1)

課題研究の授業で何をしようかということで、過去の先輩方がやってきたことを参考に
次の候補から選ぶことになりました。

・動画撮って編集
・Flash で何か作る
・PowerPoint でプレゼン
・プログラミング

プログラミングで過去の先輩が何をやったかというと、
C++ でオセロしてたり、RPG を簡単に作れるツールでゲームしてたりでした。
ここで自分は、以前担当の先生と話していたときに挙がった「i アプリの開発」というほぼ未知のジャンルへ。
実は 2 年以上前に個人的に首を突っ込もうとしてそれからさっぱりやってませんでしたので、
Java という言語を知る意味でもここで興味が再び湧いたわけです。

以後、備忘録となります。まずは開発環境の構築から。
実際に「どう」操作するかの説明は省いて、「何を」するかの説明だけにしてあります。
長さが倍になっちゃいそうですので。

必要なもの(できれば欲しいものも含む)は、
・Java Runtime Enviroment (JRE)
・Java Development Kit (JDK)
・Eclipse
・Eclipse Language Pack
・iαppli Development Kit (iDK)
・CLDC と iDK のクラスの Javadoc

・JDK のインストール。
JRE のない環境に直で JDK をインストールするときでも、ここでそれを検出してよろしく取り計らってくれます。
本当は後述する iDK が対応しているバージョンを選ぶべきですが、
私は最新のものをインストールしてしまいました。結果的に動いてますが危ういかも。
重要なのは、JDK の bin フォルダにパスを通しておくことです。

・Eclipse のインストール。
ここはちゃんと iDK が対応している 3.1.2 をダウンロードしました。
日本語の Language Pack も上書きしてから起動した方がいいようです。

・iDK のインストール。
DoJa-5.0 なら FOMA 903i シリーズ以降対応なので大丈夫でしょう。
Eclipse プラグインを入れないと意味がないのでそれも。

ここまで来て Eclipse が iDK プラグイン込みで日本語で正常起動されれば大丈夫です。

・プロジェクトの新規作成。
DoJa プロジェクトを新規作成して、パッケージ・エクスプローラーにある

DOJA_CLASS_ZIP
DOJA_DOJACLASS_ZIP

に対して Javadoc を設定しておきます。
これで、エディタ上でキーワードにカーソルを置いて Shift + F2 を押してリファレンスを閲覧できます。

・コンパイラの設定。
この設定も怠るとハマります。
Java コンパイラの設定で、生成される JAR ファイルの互換性を 1.1 にしておきます。

・最低限必要なコード。
プロジェクト上で「クラスを新規作成」することで、お決まりのコードを手打ちせずに済みます。
スーパークラスは IApplication (com.nttdocomo.ui) にします。
start メソッドがオーバーライドされた状態で作成されます。
import を com.nttdocomo.* とかに書き換えておくといいかもしれません。

・実行。
最初は構成を新規作成しないといけませんが、次回以降は Ctrl + F11 で勝手にやってくれます。

・デバッグ。
ここは少々面倒ですが、「デバッグモード起動」にチェックを入れて「実行」しておき、
新たにデバッグ用の構成を新規作成して、リモートでデバッグする形を取ります。

・Web での公開。
Eclipse 上でビルドした JAR はデバッグ情報が入っていますので、
iDK の方のツールで新たにビルドして小さくする必要があります。
ここで元のプロジェクトを iDK で開いても果たしてきちんと動くのか自信がありませんでしたので、
プロジェクトごと iDK の apps フォルダにコピーしてしまって、そのプロジェクトを iDK でビルドしました。
無駄かもしれませんが一応です。
あとは JAR / JAM / HTML をアップロードしましょう。

コーディング上の備忘録もひとつだけ。

・画面の切り替え。
Display.setCurrent メソッドで表示する「画面」を切り替えられます。
画面には Panel と Canvas があり、そこから継承したクラスを引数に渡すわけです。
Panel より Canvas の方が低レベルでの処理が可能です。例えばキー入力を受け取る方法が、
Panel ならリスナの登録、Canvas なら processEvent メソッドのオーバーライドです。
Panel にはボタンとかテキスト ボックスのようなコンポーネントを配置できます。
Canvas は直接グラフィックを描画するためのもので、paint メソッドで Graphics オブジェクトを受け取ります。

ジャンルはゲームと決まってますが、何を作ろうにも学級閉鎖が解かれないと...。
スポンサーサイト

[ No. 866 ]
[ 日時 : 2009/10/31 (Sat.) 12:03:05 ]
[ カテゴリ : プログラミング ]
[ コメント : 0 ]
[ トラック バック : 0 ]


まさかのタイミング

学級閉鎖になりました。

両隣のクラスが立て続けに学級閉鎖になって、復活したと思ったら今度はうちのクラスが。
今までほとんど欠席者がいなかったのですが、新型に 2 人感染したということなので閉鎖に。
山形はクラスに「複数」感染者が出たら閉鎖らしく、
他の都道府県と比べて基準が厳しい(甘い?)みたいです。

以前就職活動がピークだった頃は 1, 2 年生の方で学級閉鎖だったり学年閉鎖だったりしたので、
そのときに 3 年生も来られたら大変だったわけですので、
この時期に来たのはある意味不幸中の幸いかもしれません。。。

ということで「文化の日まで外に出んなよ」宣言されたに等しいです。

[ No. 865 ]
[ 日時 : 2009/10/30 (Fri.) 16:31:24 ]
[ カテゴリ : 学校ライフ ]
[ コメント : 0 ]
[ トラック バック : 0 ]


それでウィンドウとか使用(BlogPet)

きょうOverhandは、ToshiとToshiは基本情報は予定したかもー。
それでウィンドウとか使用ー!
だけど、Toshiは事態は演算するはずだったみたい。
でも、Overhandは、利用する?

*このエントリは、ブログペットの「Overhand」が書きました。

[ No. 864 ]
[ 日時 : 2009/10/28 (Wed.) 07:48:53 ]
[ カテゴリ : BlogPet / 未分類 ]
[ コメント : 0 ]
[ トラック バック : 0 ]


オブジェクトを乗っけていく

「調べ物が多い」と言っていた今回のソフトの開発。
大きな問題にハマることもなくなってきて、ゆっくりですが進んでいます。

ひとつ、このソフトには「完成」は絶対にないと断言します。
ソフトで扱っている概念の進化や変化が終わらないので、おのずとそれを扱っているこのソフトもそうなります。
この概念は何かというと、あまりに広くて大きくて扱いづらいときもあってすごく身近なものです。
身近すぎて「それは何か?」と問題を出そうにもヒントもなにもあったもんじゃないくらいです。

という適当な話はさておき、これ今公開しようと思えばできます。
以前の記事で基盤はほぼ完成で拡張にも対応できると書いてました。実際拡張して複雑さが増しました。
余地があるのでやっぱり完成ではないわけですが、これ以上大幅に手を加えることはないと思います。

※どんどん抽象的な説明に入っていきます。正直分かりづらい。

そうやってできた基盤の上にバンバンオブジェクトを置いていくのがメインの作業になっていきます。
この置かれるオブジェクトがミソです。沢山乗せるほどこのソフトの利用価値が増すといえます。
その中身が先ほどの概念と密接に結びついています。
カッコいい言い方をすると、そのもはや無限ともいえる概念に立ち向かっていくわけです。
これを言いたいがためにこの記事を起こしたように見えてしまいますが、事実そうです。

この沢山のオブジェクトは同じ基底クラスから派生しているクラスが元になっています。

そして今更ですが 6 月ごろに開発していた「新しいソフト」と今開発してるものは別です。
困ったことに、開発してても「これはないか」と一旦思ってしまうと止まってしまうタチです。
このパターン今までも何度もありました。
今のソフトについては思ってないので安心しています。

問題はいつ公開するかですが、気まぐれでこの状態で公開するかもしれませんし、
乗っけてるオブジェクトをもう少し増やしてからにするかもしれません。

[ No. 863 ]
[ 日時 : 2009/10/24 (Sat.) 22:34:30 ]
[ カテゴリ : プログラミング ]
[ コメント : 1 ]
[ トラック バック : 0 ]


計算(BlogPet)

きょうOverhandは計算しなかった。

*このエントリは、ブログペットの「Overhand」が書きました。

[ No. 862 ]
[ 日時 : 2009/10/20 (Tue.) 09:02:55 ]
[ カテゴリ : BlogPet / 未分類 ]
[ コメント : 0 ]
[ トラック バック : 0 ]


基本情報技術者試験

半年前と同じ流れで、基本情報技術者試験を受験してきました。
周りに知らない人がいっぱいいただとか前回と同じような流れでしたが、
今回は前回に比べると高校生らしき姿は多くなかったように思います。

午前問題を終えて外に出てみると、同じクラスで IT パスポートを受験したメンバーが既にいたり後から来たり。
問題を見せてもらったら、高い確率で前回より難易度上がってる気がします。(※勘です)
単純に過去問を解いただけではおそらく足りません。
ていうか過去問といっても 1 回しかないので、似たような問題がたくさん出てくることは考えづらく、
色々ひねってくるのはある意味必然といえるかもしれませんね。

さて自分が受けた基本情報の感想。
まず午前ですが、これも過去問にはないような問題がけっこうあったような印象。
私が過去問を過去数回分しかやっていないからかもしれませんが、
ストラテジ・マネジメント系に初見問題が多く見受けられました。
テクノロジ系であまり悩むことなく進んでいったので、ちょっと壁にぶち当たった感がありましたがやり抜きました。

午後は正直言うと相当頭を使いました。疲れました。シスアドの 1.5 倍(当社比)。
言語は結局表計算にしましたが、なんか前回より難しいらしいです。
前回の問題はよく知りませんでしたが、確かに条件判断や論理演算がバンバン出てきて、
バンバン出てくるだけならまだしもそれが何かとややこしさをかもし出しているわけです。
他のプログラミング言語と遜色ないと思います。まあそうじゃないと意味がないので当たり前ですが...。
じゃあ前回はなんで簡単だったのかというのは分かりませんけど、とにかくナメてかかってはいけない問題でした。

そして IPA から公式解答が既に公開されているわけです。
今回はあまり躊躇せずに見ました。結果、何もなければセーフです。
一旦は落ち着くことができると思います。

[ No. 861 ]
[ 日時 : 2009/10/18 (Sun.) 18:51:46 ]
[ カテゴリ : 学校ライフ ]
[ コメント : 0 ]
[ トラック バック : 0 ]


明日は論理的思考力全開の日

明日は情報処理技術者試験です。基本情報技術者試験を受けます。
過去何回分かの問題を解きましたが、合格点に達していたので、この調子で臨めればなと思います。

と、この前の全商情報処理検定 COBOL 1 級ですが、合格しました。
これで合格した全商一級は、情処(ビジネス情報)・商経・簿記・電卓・英語・情処(プログラミング)の 6 つに。
珠算は流石に無理ですし、今年度新しくできた会計実務検定は「それ何?」なので、残るはワープロ。
これを取れればひとまず検定に関しては何もありません。

脳がよく働くためには起床後ある程度の時間を置くことが必要ですので、今日は早めに寝ます。

[ No. 860 ]
[ 日時 : 2009/10/17 (Sat.) 22:10:05 ]
[ カテゴリ : 学校ライフ ]
[ コメント : 0 ]
[ トラック バック : 0 ]


せっかくの教訓だから(BlogPet)

Toshiの「せっかくの教訓だから」のまねしてかいてみるね

今日はしていたら、デバッガでも間違っていたら、あらかじめバイナリエディタではありがちなようなことをつける度に手をつける度にあるデータを構造体にしないようなことをひねります。
ファイルから読み込んだデータのものですが入っていたところの直後に幾分悩まされましたわけです。
それはそれはそれより重大なそうで見ていた状態で見ていますけど、単純なんでブランクのです。
直後に幾分悩まされました。
コードに頭をひねります。
「以前にも同じようなことを経験して意識していたはずなのに、今回忘れていた」の配列でしたわけです?
それより重大なそうでデータの直後のせいにあるメンバにズレていません!
それより重大な事態にあるメンバ)==5だった状態でも間違っていますけど、それはそれだったというわけです。
コードに直では違う値が、それより重大なようにあるメンバ)==5だったところのです。
コードに手を見落としていましたところに割り当てられ、結果としてズレたのメンバはそれより重大な事態に入っていたところのはなく1バイト飛ばされたわけです。
ファイルから読み込んだデータが入っていたら、結果としてズレたデータの直後のはなぜかとはしますけど、デバッガでデータが読み込まれたわけです?
それはchar型の宣言も間違っていません。
もうなそうではそれだったわけですが、単純なそうで落とし込もうとしていません。

*このエントリは、ブログペットの「Overhand」が書きました。

[ No. 859 ]
[ 日時 : 2009/10/13 (Tue.) 09:17:37 ]
[ カテゴリ : BlogPet / 未分類 ]
[ コメント : 0 ]
[ トラック バック : 0 ]


せっかくの教訓だから

今日はありがちなようなそうでもないような事態に幾分悩まされました。

ファイルから読み込んだデータを構造体に直で落とし込もうとしていたわけですが、
デバッガで見ると、あらかじめバイナリ エディタで見ていたのとは違う値が入っています。
ファイルも構造体の宣言も間違っていません。

あるメンバに入っていたデータが、直前のメンバに入っていたデータの直後のものではなく
1 バイト後ろにズレていたところのものだったのです。
直後にあるデータが飛ばされるのはなぜかと考えていたら、単純なことを見落としていました。

sizeof( 直前のメンバ ) == 5 だったのです。それは char 型の配列でした。
そのためアラインメント調整が働き、次のメンバは 1 バイト飛ばされたところに割り当てられ、
結果としてズレた状態でデータが読み込まれたというわけです。

原因はそれだったのですが、それより重大なことがあります。
「以前にも同じようなことを経験して意識していたはずなのに、今回忘れていた」のです。
もうアレなんでブランクのせいにします。

コードに手をつける度に頭をひねりますけど、こういうひねり方はしないようにしたいものですね。

[ No. 858 ]
[ 日時 : 2009/10/11 (Sun.) 22:41:51 ]
[ カテゴリ : プログラミング ]
[ コメント : 1 ]
[ トラック バック : 0 ]


色んな状況があるわけで

TaskFlag は Vista で正常動作しないとか、それ以前に根本の仕組みとして、
パフォーマンスをプロセス単位で扱っているという部分に、「この時代ならでは」の気になる点があります。

例として、Google Chrome や Internet Explorer 8 が挙げられます。

そうです、「マルチ プロセス」です。

それらのアプリケーションのタスク ボタンをポイントしたとき、
TaskFlag が表示するのはウィンドウのガワの部分、つまり「親プロセス」のパフォーマンスであり、
必死でスクリプトを実行してたり動画を再生してたりするページ部分、つまり「子プロセス」のものではありません。
これちょっと違和感とまではいかなくても気になるわけです。

しかしながら、「子プロセスも含めた情報が欲しい」となると、
CPU 使用率やメモリ使用容量とかハンドル数は合算したとしても、
仮に実行ファイルのパスがバラバラだったらどう表示するのかとか、
それは気にしないとしても仮に「子プロセスだけどそれは CUI アプリで、親はそのフロントエンド」である場合、
子プロセスの情報も合算するのは筋違いではないのかとか、
仮にそれは合算しないんだとしたら同じ子プロセスでも合算するかどうかをどうやって判別するのかとか、
仮に「それはウィンドウが親子関係にあるかどうかで判断したらいいんじゃないか」となったとしても、
子プロセスのウィンドウが親プロセスのウィンドウの子になっているかどうかを判断するのが面倒だとか、
仮にそれを頑張って実装したとしても、
その両方の状況が一つの親プロセスに対して同時に起こったらどうするのかとか、...

諸々の懸案事項によりキツいです。

[ No. 857 ]
[ 日時 : 2009/10/09 (Fri.) 23:58:19 ]
[ カテゴリ : プログラミング ]
[ コメント : 1 ]
[ トラック バック : 0 ]


動作したかも(BlogPet)

Toshiは、動作したかも。

*このエントリは、ブログペットの「Overhand」が書きました。

[ No. 856 ]
[ 日時 : 2009/10/06 (Tue.) 09:05:38 ]
[ カテゴリ : BlogPet / 未分類 ]
[ コメント : 0 ]
[ トラック バック : 0 ]


プロフィール

Toshi

  • Author:Toshi
  • 何かを創りたい Toshi の記録


ブログ内の検索


最近の記事


最近のコメント


最近のトラック バック


カレンダー

09 | 2009/10 | 11
- - - - 1 2 3
4 5 6 7 8 9 10
11 12 13 14 15 16 17
18 19 20 21 22 23 24
25 26 27 28 29 30 31


月別の記事


カテゴリ別の記事


RSS フィード


<< 2009/09 - 2009/10 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 - 2009/11 >>
* Toshi's Recess Room - Toshi Creates. - 2009年10月 の記事 /
http://toshirr.blog13.fc2.com/
(C) 2005 - 2009 Toshi, All Rights Reserved.

上記広告は1ヶ月以上更新のないブログに表示されています。新しい記事を書くことで広告を消せます。