掲載 2000年10月24日/最終更新 2002年8月26日
突然ですが、エクスプローラを作ろうと思います。H/PC, Palm-size PC, Pocket PC に対応したものを考えております。
以前から H/PC 標準のツリービューのない H/PC のエクスプローラには不満でした。 とは言え、「じきに Microsoft がツリービューをつけてくれるだろう」 という気持ちがあったので自作しようとは考えておりませんでした。 しかし、どうやら HPC 2000 でもエクスプローラは変わらないようですし、 Palm-size PC はエクスプローラがないまま打ち止めになりました。 その上 Pocket PC のファイルエクスプローラはまったく期待外れのものでした (Pocket PC のエクスプローラはある意味 Pocket PC らしいエクスプローラなのですが...)。
![]() |
| H/PC 版 Tillano Explorer (開発中画面) |
そういうわけで、「自分でエクスプローラを作ろう」 という気持ちになったわけです。
もちろん、これまでにすでに素晴らしいエクスプローラが出てきています。 それらのエクスプローラと比較して、Tillano Explorer の特徴をあげるとすれば、 以下のようになります。
![]() |
| Pocket PC版 (開発中画面) |
最初の見た目だけでなく、使っているうちに感じる感触までにわたって、 自然なインタフェースを提供します。これは、 Microsoft が Windows 95 で導入し、世界中で多くの人が 5 年以上にわ たって利用してきているエクスプローラのそれから得られる感触と同等のものです。 「えっ、これって Windows CE に最初から入っているエクスプローラなんじゃないの?」 と言われるのが Tillano Explorer の求めるゴールの姿です。
起動時間から、各種の操作に対するフィードバックまでにわたって、 軽快な動作を提供します。 それなりの処理を行っている部分では それなりに時間がかかってしまうこともありますが、 「なぜこんなところでこんなに待たされるの?」といった理不尽な待ちは Tillano Explorer からは排除したいと思います。
すでに各種 Tillanosoft 製ソフトをお使いの方はご経験済みと思いますが、 Tillanosoft では常にソフトウェアの品質を高く保っております。 Tillano Explorer も、いつも安心してご利用いただけるよう、 非常に高い品質のものを提供する予定です。
上記の特徴は裏を返せば「きわだった特徴がない」と言えなくもないですが、 私のもともとの希望は「Microsoft 自身がツリービュー付きのエクスプローラを出す」ことだったわけであり、 「Microsoft が出さないなら、それに代わるものが欲しい」 というのが動機の原点だったわけで、 「それを実現するのが Tillano Explorer である」 ということをぜひご理解いただきたいところです。
なお、Tillano Explorer を開発するに当たってリファレンスとして 参考にしているエクスプローラとしては、 下記のものがあります。 Microsoft の H/PC のエクスプローラ、Microsoft の Pocket PC のエク スプローラ、Microsoft の Windows 95 のエクスプローラ、Microsoft の Windows 2000 のエクスプローラ、TascalSoft の TascalFilerEx、 TascalSoft の TascalExplorer、GreenSoftware の GSFinder、 Resco の Resco File Explorer、PDA21 Interactive の Power Explorer。
Tillano Explorer の正式版の完成までにはまだ多少時間がかかりますので、 Tillano Explorer がどのようなものになるのかを事前に概要を おつかみいただく目的で、「コンセプトデモ版」と称して、まずは現状の版を ご提供していきたいと思います。これは、 まだまだ入れ込んでいない機能が多々残っているバージョンとなります。 とは言え、 メニューを開いて色々と操作いただくことで完成した際の姿について 具体的な感触を得ていただくことは可能と思います。コンセプトデモ版で、 上記にあげております Tillano Explorer のコンセプトを実際にご体験していただけるのではないかと思います。
コンセプトデモ版は、 広く一般の方々に触れてみていただけるだけの品質が確保されているかどうかの確認を終え、 現在本ページにてご提供中です。
また、上で述べておりますコンセプトが、 どれだけ実現可能であるのかを、 「コンセプト検証試験」と称してコンセプトデモ版を用いて実験しております。 以下では「コンセプト検証試験」の結果について紹介したいと思います。
コンセプト検証試験の目的は、現状の Tillano Explorer を用いて 簡単な性能試験を行ない、Tillanosoft が Tillano Explorer の開発に向けて 「こうしたい」と思っているベクトルが、実際に開発されている Tillano Explorer の持っているベクトルと一致しているかどうかを開発の 早い段階で検証することにあります。もし、 これらのベクトルが一致していない場合は Tillano Explorer のインプリメント方法を見直すなどが必要になるわけであり、 その意味でも早期の検証には大きな意味があります。
特に Tillano Explorer では「軽快な動作」が 3 大特徴のひとつとしてあげられており、 これが本当に実現されているのかどうか、 自分のインプリメント方法がそれを達成しているのかどうかが 大きな懸案事項として存在していました。 ユーザインタフェースの自然さや 品質の高さはあとからいくらでも追い込むことが可能ですが、 基本性能に問題があった場合、 あとから大幅に修正することは困難なことが多いためです。
|
||||||||||||||||||||
| コンセプト検証試験対象ソフトウェア |
そこで、今回は現状動作している Tillano Explorer と、比較対象として マイクロソフトの「エクスプローラ」、TascalSoft の TascalFilerEx、GreenSoftware の GSFinder for HandheldPC を用いて以下の試験を実施しました。なお、 TascalFilerEx および GSFinder for HandheldPC は 2000 年 11 月 16 日時点での最新版を用いました。
デスクトップに設置したショートカットを叩いてからプログラムが起動し、 使う準備が整うまでの時間を測定しました。
基本的動作速度の典型例として、\Windows を選択し表示までかかる時間を測定し、 動作速度の目安としました。
\Windows のファイル一覧の表示を高速化すると、 そのしわ寄せが「見えていないファイル」におよびます。 その「しわ寄せ」についても測定しました。
表示形式変更に際し、なぜか時間がかかるソフトが存在し 「あれっ?」と思っていました。 この機会に客観的なデータを採取することとしました。
ツリービューをキーで渡り歩く操作は Desktop Windows では良くおこなっていた操作なのですが、この操作に対して満足のいくレスポンスが H/PC ではなかなか得られないでいました。これについても測定しました。
ファイルの削除に際し、なぜか時間がかかるソフトが存在し 「あれっ?」と思っていました。 この機会に客観的なデータを採取することとしました。
加えて、上記の処理を行なう毎に「システムのプロパティ」 を用いてメモリ使用量の測定を行ないました。
測定に際しては、 条件をそろえるため、テストされるすべてのソフトで 「詳細」表示で表示がされるように設定し、 さらに、存在するファイルはすべて表示するようにしました。 また、ファイルのアイコンは各ファイルから取得して利用するものとし、 GSFinder ではアイコンを遅延読み込みするようにしました (他のソフトでは特に設定なしでも遅延読み込みとなっています)。 TascalFilerEx では詳細表示の項目がカスタマイズできますが、 「名前」「サイズ」「種類」「更新日時」と、 他のソフトと同じ項目が表示されるようにしました。マイクロソフトの 「エクスプローラ」はツリービューが存在しないので、一部の試験では 性能は測定しておりません。また、「詳細」表示の際に他のものと 表示されるファイル数を合わせるために、 横スクロールバーが表示されるようにコラム幅を調整しています。
なお測定は、今井の常用マシンである、カシオペア A-51 の ROM アップグレード版(Windows CE 2.0 H/PC)を用いています。ちなみに、 プログラム実行メモリとして 4,567KB が割り当てられております。 A-51up は今となっては最も遅いマシンとなるかと思いますが、 速度の比較がしやすいという意味でコンセプト検証試験には 適切なマシンであると考えました。 性能測定およびメモリ使用量測定は上記にあげた試験項目をセットとして、 ソフトリセットをおこなっては 1 セットの試験を実施するという手順を踏みました。 時間の計測はデジタル時計に付属のストップウォッチを利用し、 手で押して計測しています。正確な時間を測るのが目的ではなく、Tillano Explorer のコンセプトの検証が目的ですので多少の誤差はご容赦願います。 プログラムの起動等はできる限りリターンキーで行なわれるようにし、 スタイラスでのタップの操作は避けました。 試験は各ソフト毎に 3 セット実施し、 3 回の平均をデータとして用いました。以下に試験結果を示します。
起動時間はプログラムが使えるようになるまでの待ち時間であり、 短ければ短い程良いわけです。
今回の試験では、デスクトップに存在する各ソフトへの ショートカットにまずフォーカスを当て、ストップウォッチを押すとともに A-51 のリターンキーを打鍵し、 ソフトが起動し準備が整った段階までの時間を計測しました。 その結果が左のグラフです。
実はマイクロソフトのエクスプローラは他の 3 つのソフトよりも有利な点があります。それは、 エクスプローラが ROM に格納されており、 RAM にロードされること無く実行される(XIP: eXecute In Place)点です。 他の 3 つのソフトは RAM に存在しており、しかも Windows CE の RAM ファイルシステムは 圧縮されておりますので、伸長処理を最初に行なう必要があり不利です。 とは言え、Tillano Explorer はマイクロソフトのエクスプローラに肉薄した起動時間が実現されております。 これは、多分にはまだまだ多くの機能が未実装であることが理由としてあると思います。 今後機能をどんどん実装しても大幅に起動時間が延びるということはないように もっていきたいところです。
\Windows のファイルリスティングは、 普段フォルダをつついてファイルリスティングを表示する場合のもっとも遅いケースとして計測してみました。
この試験では、ファイル一覧の画面で Windows フォルダを選択し、 ストップウォッチを押すとともにリターンキーを打鍵し、\Windows 下の ファイル一覧が表示されるまでの時間を測定しました。
「すべて表示」にしていると、手元の A-51 では 741 項目のファイルやフォルダが表示されることになります。 それらについてファイル名を取得したり、場合によってはファイルサイズや ファイル属性を取得したりの処理が行なわれるわけです。 そのうちのいくつかをサボることで軽快な操作が実現できるわけですが、 当然サボったツケは後でまわってきます。 そのために測定したのが次の「スクロール」です。
実はファイルをリスティングするときに、 ファイルのアイコン等の情報をすべてのファイルに付いて取得するのではなく、 ウィンドウ上に見えているものだけに限定することで待ち時間を短縮することが できます。要するに「見えないところはサボろう」というわけです。 当然サボったツケは見えないところを見ようとする時点で 払わなければならないわけで、 ツケをどのくらい払っているのかを測定しようとしたのがこのテストです。
この試験では、\Windows のリストビューの先頭ファイルをまず選択し、 次に PgDn キーを 70 回ほど打鍵し、 20 秒ぐらい待って、さらに 70 回ほど打鍵してカーソルが一番下まで到達する までの時間を計測しています。
しかしマイクロソフトのエクスプローラは \Windows の表示でも速いし、 スクロールでも速いですね。 Tillano Explorer もまだまだチューニングの余地があるのかも知れません。
表示形式の切り替えって自分は割とやってしまうのですが、 皆さんはいかがですか? コンセプトデモ版を見ていただくとお気づきになると思いますが、 Tillano Explorer では表示形式の切り替えが非常に簡単にできるようになっています (マイクロソフトのエクスプローラも同様ですね)。 その切り替えにどのくらい時間がかかるかを調べたのがこの試験です。
この試験では、表示形式変更のためのメニューを開き、 「大きいアイコン」をキーボードを用いて選択し、 ストップウォッチとともにリターンキーを打鍵し、表示が切り替わり 入力待ち状態になるまでの時間を計測しました。 また、同様の手順で「詳細」表示に切り替える時間を測定したのが次のグラフです。 なお、Tillano Explorer には「詳細」と「詳細(全行選択)」がありますが、 「詳細(全行選択)」の方を選択しました。
ちなみに、いずれのソフトも一度大きいアイコン表示にしてから 詳細表示に戻し、その後もう一度大きいアイコンを表示しようとした場合は、 上のグラフではなく、 左のグラフとほぼ同等の時間で表示が切り替わるようになります。 最初に大きいアイコンに切り替える時にかかる 8 秒程度の時間はリストビューと 呼ばれる部品自身が費やしている「税金」のような時間ではないかと思われます。
なお、GSFinder だけ前の試験(詳細表示から大きなアイコンへの切り替え)と この試験(大きなアイコンから詳細表示への切り替え)に非常に大きな時間が かかっています。 スタイラスで任意のファイルをつついて「選択」状態にした後 表示形式の切り替えを行なうと、先に選択したファイルではなく、先頭の ファイルが選択されてしまうようになっていたりするので、 どうも GSFinder では一風変わった処理がされているようです。 他のソフトでは切り替えによって選択されたファイルが変わることはありませんでした。
さて、実はこのあたりから一番気になっていた部分だったりするのですが、 私は Desktop Windows のエクスプローラでは、 ツリービューをキーで渡り歩く操作をよくおこないます。 で、同じことを TascalFilerEx で実行するとあまり気持ち良く渡り歩けないのが気になっていました。 そこでツリービューのキーによる渡り歩き時間を測定しました。
このテストでは、 ツリービューの \Windows 上にカーソルがある状態で、 上矢印キーをタタタタタッと必要数打鍵し、 「タタタタタッ」の最初の「タ」と同時にストップウォッチを押し、 \My Documents までカーソルを移動して表示が終り入力待ちになるまでの時間を 測定しております。 ちなみに「タタタタタ」の最初の「タ」から最後の「タ」までの時間を別途測定したところ、0.72 秒かかっております。したがって、打鍵間隔は 0.18 秒といったところです。
GSFinder と Tillano Explorer は Recycled フォルダもツリービューに表示されておりますので 「タタタタタッ」ではなく「タタタタタタッ」(5打鍵ではなく6打鍵)が必要であり、 若干ハンディを背負っています。
この試験で TascalFilerEx や GSFinder が遅い理由は簡単に説明ができます。 これらのソフトでは通り道のフォルダのリスティングを かならず行なっているのに対し、 Desktop Windows のエクスプローラや Tillano Explorer は通り道のフォルダについては、 ある一定の条件でリスティングを実行しないため、この差が生じています。 そのことにより、Desktop Windows のエクスプローラや Tillano Explorer では ツリービュー上でのカーソル移動がとても楽に行なえるようになっています。
実はファイル削除はファイルエクスプローラで自分がよく行なう処理なのです。 自分は Web ブラウズしていて読みごたえのあるページにぶつかると、 「名前をつけてセーブ」で同期フォルダにセーブし、ActiveSync で CE マシンに移し、 暇な時間にそのページを読んでいます。 そして、読んだページは次々と削除していくわけです。
この 削除処理でかなり待たされるソフトが多かったのでその時間を計測してみました。 計測したのは「消しても良いですか?」と言われ、 OK ボタンを押してから画面が安定するまでの時間です。
TascalFilerEx も GSFinder も削除を行なった時点で フォルダ内のファイルのリスティングを再実行するようで、 グラフで示すような待ちが発生しています。
最後にメモリ使用量についても見ておきたいと思います。 「軽さ」の中には、システム全体の軽さを阻害しないという条件も入ります。 そしてそれは「メモリをあまり使用しない」ということにより実現されます。
左のグラフでは、上記検証試験を実施しつつ「システムのプロパティ」 で観測した使用メモリ量をプロットしています。
Tillano Explorer はまだまだ未実装の部分が多いですので、本来は メモリ使用量は少なくなって当然と言えます。ファイル容量で、 あと 30KB は増えるのではないかと思っていますので、完成版を予測する際は、 ここでの結果に 30KB ぐらいは増やしておいた方が良いでしょう。
マイクロソフトのエクスプローラが極めて優秀な数字になっていますが、
これは先にも述べた XIP(eXecute In Place)が効いていると思います。
さて、今回のコンセプト検証試験では「軽さ」について検証するために、 性能およびメモリ使用量を測定していますが、 性能についてはおおむね現状の方向でいけばいいだろうとの感触がつかめたと 言って良いと思います。 一方メモリ使用量については私本人としてはツリービュー渡り、ファイル削除のあたりが不本意な値となっております。 性能を保ちつつメモリ使用量を削減する方向で完成へともっていきたいと思います。
まだまだ完成までは道のりが長いのですが、 早くもご紹介くださっている方がおられます。
|
Tillano Explorer に各種機能を入れていくに当たって、 入った機能や入れる機能が どのくらいの完成度かを下記のように表として示すようにしようと思います。
と言いますのは、Tillano Explorer の開発では、 とりあえず一通りの機能を提供することをまず心がけるようにしようと思うからです。 例えば、v0.3 ではフォルダを含めた削除機能が一通り揃いましたが、 実際には v0.3 の削除機能が Tillano Explorer における「削除」 機能のゴール的姿ではなく、 まだ 40% 程度の完成度であるとして見ていただきたいのです。
なお、下記の項目は Tillano Explorer の全ての機能を網羅していないかもしれません。抜けがあった場合は追い追い 表に追加していきたいと思います。
全ての項目が 100% になった時が正式リリースの時となります。 多くの方にそれまでおつき合いいただけるよう開発にいそしみたいと思います。
| 項目 | 詳細項目 | 実装状況 | 最終更新 | 備考 |
| Tillano Explorer アイコン | 10% | v0.1 | ||
| 新規フォルダ | 50% | v0.4 | ||
| 削除 | 40% | v0.3 | ||
| 名前の変更 | 50% | v0.3 | ||
| プロパティ | 0% | |||
| 送る | 0% | |||
| 赤外線受信 | 0% | |||
| 閉じる | 90% | v0.3 | ||
| 元に戻す | 0% | 実装しない可能性あり | ||
| 切り取り | 5%→30% | v0.5 | ||
| コピー | 5%→30% | v0.5 | ||
| 貼り付け | 0%→20% | v0.5 | ||
| ショートカットの貼り付け | 0%→60% | v0.5 | ||
| フォルダへコピー | 10%→20% | v0.5 | ||
| フォルダへ移動 | 10% | v0.4 | ||
| すべて選択 | 100% | v0.1 | ||
| 表示項目 | フォルダ | 70% | v0.2 | |
| アドレスバー | 60% | v0.3 | ||
| ツールバー | 50% | v0.2 | ||
| ステータスバー | 40% | v0.2 | ||
| ウィンドウの配置 | 左右に配置 | 80% | v0.1 | |
| 上下にに配置 | 80% | v0.1 | ||
| 表示形式 | 大きいアイコン | 80% | v0.1 | |
| 小さいアイコン | 80% | v0.1 | ||
| 一覧 | 80% | v0.1 | ||
| 詳細 | 80% | v0.1 | ||
| 詳細全行表示 | 80% | v0.1 | ||
| アイコンの整列 | 名前順 | 90% | v0.1 | |
| 種類順 | 90% | v0.1 | ||
| サイズ順 | 90% | v0.1 | ||
| 日付順 | 90% | v0.1 | ||
| 説明順 | 0% | |||
| 自動整列 | 0% | 実装しない可能性あり | ||
| お気に入り | 0% | |||
| 移動 | 戻る | 0% | ||
| 進む | 0% | |||
| ひとつ上へ | 90% | v0.1 | ||
| 履歴 | 0% | |||
| 最新の情報に更新 | 30% | v0.3 | ||
| オプション | 0% | |||
| バージョン情報 | 80% | v0.1 | ||
| コントロールパネル | 60% | v0.2 | ||
| ドラッグ&ドロップ | 0% | |||
| ごみ箱 | 0% | 実装しない可能性あり | ||
| コンテクストメニュー | 30% | v0.3 | ||
| アプリケーションボタン対応 | 50% | v0.3 | PsPC および Pocket PC のみ対応 | |
お待たせいたしました。 H/PC, PsPC, Pocket PC 向けのコンセプトデモ版をリリースいたします。 入れていない機能が多々ありますが、 ある程度の操作はできますので、Tillano Explorer がどんな感じのソフトかはおつかみいただけるのではないかと思います。
なお、v0.1版リリース前の確認段階でいくつか気になる点を修正した結果、 上記コンセプト検証試験で問題視しておりましたツリービュー渡り、 ファイル削除のメモリ使用量は上記グラフの値よりも 100KB ほど少ない値となっております。 また、\Windows 下の表示性能も 1 秒ほど向上しております。
ところで、Pocket PC 版では、 アクションコントロールを押下しながら項目をタップすることで、 リストビューの任意の複数の項目を選択状態にしたり選択解除状態にしたりできます。 この機能、Pocket PC 向けソフトでは標準インタフェースとして シングルタップ/タップアンドホールドとあわせて 「提供されるべき機能」になっているのですが、 意外と知られていないようですので念のため記しておきます。
| Windows | CPU | ダウンロードファイル | 動作確認マシン | 動作対象マシン例 |
| H/PC CE 2.0 以降 | MIPS | 0.5版(zip 180KB) | モバイルギアRシリーズ, テリオス, インタートップ, インターリンク | |
| SH3 | カシオペアAシリーズ, ペルソナ, ジョルナダ680/690 | |||
| H/PC CE 2.11 以降 | StrongARM | ジョルナダ720/820 | ||
| PsPC CE 2.0 以降 | MIPS | カシオペアEシリーズ, プレサリオ | ||
| SH3 | ||||
| CE 3.0 Pocket PC | MIPS | カシオペアE-700 | ||
| SH3 | ジョルナダ548 | |||
| StrongARM | 未定 | iPAQ |
※ ポケットポストペット版は こちら から、カシオペア l'agenda 版は当面 こちら からダウンロード願います。