2011年8月15日月曜日

IS01 OSアップデート顛末記 - 情報収集

まずは、情報収集から始めた。


IS01 OSアップデート顛末記 - 序章

au IS01をご存知だろうか。
2010年にauから発売されたアンドロイド端末である。


この端末を最初に見たのは、2010年7月頃。
知人がこれみよがしに見せびらかし、フルキーボーボ&ピンチ機能にホレてしまった。
しかし、自分のキャリアがソフトバンクだったため、iPhoneの方が良いと思っていた。

その1ヶ月後、諸般の事情でソフトバンクからauにキャリア変更することとなり、その際思い切ってIS01をチョイスしてしまった。

ちなみに、メインの携帯電話機として使用している。
ヘッドセットと直接通話と両方使用しているが、どちらも少々ハヅカシイ気はしている。

使い込む内に、処理速度の遅さにイライラする様になってきた。また、後発の IS03 / IS04 などを見て、なおさらイライラは加速した。

そんな中、仕事の都合で、IS01 のテスト機を使用させて頂く機会に恵まれた。
Android1.6しか入っていないその端末の軽快さに驚きを覚えた。
その時、「ハードウェア的なスペックは十分足りているが、ソフトウェアが重いのではないか?」と結論付けた。

と言う訳で、兎に角OSをアップデートしようという考えに至った。

以上、前置き終わり。


2011年6月13日月曜日

VC++2010でGUI版TestRunnerを作る その10(最終回)

前回で完成したものの、切り良く「10回連載」ということで、今回で終了にしたいと思います。


VC++2010でGUI版TestRunnerを作る その9

当初予定していた機能をすべて実装完了。


起動画面。ちょっと凝ってみた。




2011年6月12日日曜日

VC++2010でGUI版TestRunnerを作る その8

「構造化手法」に比べ「オブジェクト指向」では、「どこに関数と変数を置くか」という悩みを強く感じる。

「構造化手法」の場合、関数の上下関係に注目して設計していたが、「オブジェクト指向」では、クラスの役割という概念が新たに加わり、どのクラスがどの機能を持つか考える。ここをしっかり考えておかないと、たちまち複雑怪奇でブクブク太ったメンテナンス性の極めて低い「巨大クラス」が出来上がってしまう。

始めに、どのクラスがどの役割を担うかを考え、役割にふさわしいメソッドとパラメタを所有させ、その上でクラス間の関連を定義していく。

しかし、実装を進めていく過程で、想定していなかった事象が起こり、最初に決めた構造が破綻することがある。その時、あくまで当初設計した構造を維持しようとすると、構造にひずみが生じ、シンプルな設計が維持できなくなる。そこで、「あるべき姿」を考え、構造を変更し、よりシンプルで分かりやすい構造へと変化させる。

その結果、開発者には分かりやすいが、第三者からみると、分かりにくい設計になる可能性があることを、理解しておく必要がある・・・。


2011年6月5日日曜日

VC++2010でGUI版TestRunnerを作る その7

ようやく、テスト中のプログレスバー表示が可能になった。




VC++2010でGUI版TestRunnerを作る その6

今回は、テスト実行件数の表示を追加する。