Antoine.st About User Interfaces 3

About User-interface - 3?

# 考えてみると、わざわざデータベースにつながなくても、ファイルシステム上で実現するって方法もありかも。人事レコードを「ほげ.HumanResourceData」みたいなファイル(ぜいたくに拡張子を使ってみました)にして、個別の機能はシェルエクステンションで実現、みたいな感じで。

それはさておき。

メニュー構成なんてものを考えてみましょうか。エクスプローラのメニューというと、↓みたいな感じです。

  • File
  • Edit
  • View
  • Favorite
  • Tool
  • Help

ファイルがデータ(レコード)に相当しますので、それぞれ見ていくと、

File

  • New
  • Create Shortcut
  • Delete
  • Rename
  • Property
  • Close

って感じですね。New は新しいレコードの作成です。これはレコードの種別によって代わり、人事フォルダで選ぶと、新しい人事レコードの作成になり、部署フォルダで選ぶと、新しい部署レコードの作成になる、といった感じで。

うーん。フォルダは必ずしもテーブル(ビュー)を示すものではなくてもいい、ってことに気づきました。フォルダはフォルダとして、ユーザー定義の「入れ物」であると。ビューを意味するのはレコードの種別(ファイルタイプ)です。人事レコードなら人のアイコン、部署レコードなら机のアイコン、みたいな感じ。

ただ、データ量が増えてくると任意のフォルダを作成できるってのは意味がないかも。「どこに入っているか」っていうのは重要ではないので。ということで、とりあえずビューごとにフォルダ分けという方向性で考えていくことにします。

ショートカットの扱いは、ちょっと検討する必要がありますね。というか不要かな。

Delete ではレコードの削除。削除されたレコードは、当然ごみ箱に移動です。この辺、トランザクションの関係もあるのか、実現できているシステムを見たことがないです。

Rename はレコードのメイン名称の変更と。人事レコードなら、社員の名前になります。内部的にコードを使ってもいいですが、そういうものは見せないようにしておきましょう。ただし、これって難しいところなんですよね。マスタデータはコード入力できるとやっぱり楽ですし。テキスト入力補助機能があるコンボボックスでも、やはり漢字変換の分やりづらいところがあります。

Property では、レコードの属性情報を表示します。この辺も、レコードの種別によって内容を変える、って感じでしょうか。当初は Property でレコードの内容を設定できるように考えていましたが、項目数が増えてくるとちょっときびしいので。