所用にて i アプリを作成中。今日は Canvas クラス上でのサブメニューのフレームワークを作成して終了。実装した機能はメニュー数によるサブメニューサイズを動的に変化させること、決定キーまたはソフトキー 1 押下での表示/非表示の切り替え、上下キーでのフォーカス移動。
C 言語では使える #define マクロが使えないので、とりあえず private static final でコーディングしています。これがちょっと迷っているところで、Java コンパイラの最適化で private static final 宣言されたプリミティブ型の変数を即値に置換してくれていたらうれしいんですけど、そうでないのならリリース時には全置換しないとダメという。ビルド時に C のプリプロセスを通せばいいのですけどもね。もしコードサイズも最適化してくれるなら final boolean をデバッグマクロ定義代わりに使えるんですけどどうなんでしょうか。ちょっと調べないといけません。
後、処理速度向上のためにメソッド内の自動変数もすべて static なメンバ変数として宣言しているんですけど、これが、後々バグの原因となりそうで怖いです。本当はクラス名とかフィールド名も短い方がいいみたいなんだけど、そこまではやってらんないです。













最近のコメント