FileMappedList

インフォテックで作成するソフトでは、1日分などの長期間の時系列測定データを処理する場合などが良くあります。

さすがに全てのデータをRAMメモリ上に確保するのは現実的ではないので、 バイナリファイルにデータを保存し、必要なデータだけを読み込んで使用できるようにするのが良いのですか、データを使用する側の実装が複雑になるのは避けたいところ。

ですので、バイナリファイル内のデータをListのように扱えるFileMappedListクラスを作成しました。このクラスを使用すると、インデクサを使用して指定したインデックスの値だけをバイナリファイルから取得したり、指定したインデックス範囲について間引きを行って値を取得するなどが行えます。データの型はジェネリックで指定可能です。

200行程度の小さいクラスですが、使ってみた結果はとても良いです。

デザイン

iPhoneを買うとACアダプタが付属しています。
何とも中途半端なサイズと思いました。
とくに「厚み」です。
Androidに付属しているものと比べると2.5倍くらい厚いです。
大きなバッグに入れるときは気になりませんが小さなバッグに入れるときは気になります。
しかし、立て込んでいるタップに割り込もうとするとAndroidの方は幅が邪魔して挿せません。
本来の働きをするための絶妙な寸法でiPhoneのACアダプタがデザインされていることに気づきました。
日本のコンセント事情をちゃんと調査されていることにも関心しました。
川崎和男さんの提唱する「デザインには性能・機能・効能がある」という言葉がよく理解できました。

マジックボディコントロール。

こんにちはmgcです。

先日ベンツのマジックボディコントロールという機能に興味を惹かれました。

まず、マジックボディコントロールとは、
ステレオカメラを使用して、50ms毎に前方15mの路面状況をスキャンし、路面の凹凸を認識。
その情報を元に事前にサスペンションのダンパーを制御して、
振動を軽減するという機能なのですが、
これが驚くほど振動を感じさせないのだとか。

このベンツに搭載されているステレオカメラは、
スバルのアイサイトとほぼ同じ機能で、
1993年にはスバルが開発をしてすでに基幹特許も取得していたようです。
しかし、モタモタしているうちにいろいろな企業が使用をはじめ、
2013年には特許も切れてしまったのだとか。
興味を惹かれてこんなことまで調べてしまいました。

それにしても、最近の車の技術は恐ろしく発展していますね。
いろいろと興味をそそられるものばかりで、
これから先も楽しみです。