6

MDI は有害であると見なされていますが、いくつかのアプリケーション (MS Office、Adobe アプリでさえも) は、MDI を純粋な形式で使用するか、タブ付き/IDE のようなインターフェイスを備えたハイブリッドとして使用しています。

MDI インターフェースは、一部のアプリケーションにまだ適していますか?

通常、一度に複数のドキュメントを操作し、複数のドキュメントを表示したり、それらの間でコピー/貼り付けしたりするアプリケーションを考えています。

例としてOriginがあり、プロジェクト内に複数のワークシートとグラフ ウィンドウがあります。タブ付きまたは IDE のようなインターフェイスは、何度も切り替えを行うため、はるかに不便です。

Mac では、アプリケーションがこれを解決するために複数のトップレベル ウィンドウを持つことは自然で便利ですが、MDI を使用しない場合、Windows で推奨される方法は何ですか?

4

8 に答える 8

17

MDI の欠点は次のとおりです。

  • 一般に、ユーザーはより複雑なウィンドウ関係のセットを学習して理解する必要があります。

  • 多くの単純なアクションには、2 段階のプロセスが必要になる場合があります。たとえば、目的のウィンドウを前面に移動するには、ユーザーが最初にコンテナー ウィンドウを前面に移動してから、コンテナー ウィンドウ内の右側のプライマリ ウィンドウを前面に移動する必要があります。ウィンドウのサイズ変更または最大化は、最初にコンテナー ウィンドウを調整してから、その中のプライマリ ウィンドウを調整することを意味します。

  • 複数のコンテナ ウィンドウが開いている場合、ユーザーは目的のプライマリ ウィンドウがどのウィンドウにあるかを忘れてしまい、面倒な検索が必要になります。

  • ユーザーは、ウィンドウを最大化、アイコン化、レイヤー化、および閉じるための 2 つの方法に簡単に混乱します。たとえば、コンテナー ウィンドウ内のウィンドウではなく、アプリ全体を閉じる場合があります。または、ウィンドウをコンテナー ウィンドウ内でアイコン化したために、気付かずにウィンドウを「失う」可能性があります。

  • ユーザーが使用できるウィンドウのサイズと位置は限られています。あるアプリの 3 つのウィンドウと別のアプリの 1 つのウィンドウを同時に見たいとします。SDI では、各ウィンドウに画面の 4 分の 1 を占めるようにできますが、MDI ではそれができません。MDI の 1 つのウィンドウを大きく、もう 1 つのウィンドウを小さくしたい場合はどうすればよいですか? 大きなウィンドウ (他のアプリのウィンドウを遮る場所) に対応するためにコンテナー ウィンドウを大きくする必要がありますが、子を見るとスペースが無駄になります。

これらの欠点はすべて、タブ付きドキュメント インターフェイス (TDI) にも当てはまることに注意してください。タブ付きインターフェイスには、ユーザーが同じコンテナー ウィンドウ内の 2 つのドキュメントを並べて表示できないという追加の欠点があります。また、タブは煩雑さを増し、ウィンドウのスペースを消費します。ただし、全体的な TDI は MDI よりも問題が少ない傾向があるため、特殊なケースでは好まれる可能性があります (続きを読む)。

要約すると、MDI を使用する状況を考えるのは困難です。SDI に勝るものはありませんが、複雑さとナビゲーションのオーバーヘッドが追加され、他のアプリのウィンドウとの連携が不十分です。

アプリが複数の最上位 SDI ウィンドウを持つことができない理由はありません。Origin のようなアプリでも、プロジェクトが各ウィンドウで適切に識別されている限り、プロジェクトが複数の SDI ウィンドウにまたがっても問題はないと思います。SDI では、アクティブなウィンドウに応じて項目を非表示にしたり無効にしたりするのではなく、さまざまな種類のウィンドウ (グラフとワークシートなど) にさまざまなメニューとツールバーを持たせることもできます (前者はわかりにくく、後者はスペースを浪費します)。

SDI は、MDI または TDI よりも柔軟性をユーザーに提供します。ユーザーは、ウィンドウをオーバーラップまたは最大化し、タスクバー/ドックを事実上のタブ インターフェイスとして使用できます。ユーザーは、複数のウィンドウを同時に表示できるように、ウィンドウのサイズと位置を変更することもできます。画面スペースを最適化するために、各ウィンドウのサイズを個別に変更できます。MDI または TDI にどのような利点があるとしても、SDI を拡張してそれらの利点も持つことができる場合があります (たとえば、タスクバーを使用するよりもウィンドウ間の切り替えが速く、タブの選択に匹敵するサムネイル メニューを提供したり、すべてをアイコン化するコントロールを提供したりすることができます)。ワンクリックでアプリのウィンドウ)。

TDI を使用するやむを得ない理由がない限り、SDI を使用してこの柔軟性を確保してください。説得力のある理由には、次のサブセットが含まれます。

  • 各タブは無関係な上位タスクに使用され、ユーザーはタブを頻繁に切り替えたり、タブ間で情報を比較したりすることはありません。

  • タスクバー/ドックと複数のウィンドウを知らないか混乱しており、ウィンドウのサイズを変更する方法がわからない非常にローエンドのユーザーと作業しています (そのようなユーザーにとっては、魅力的なタブ画像がタスクバーよりもうまく機能するようです)。

  • 通常、多数のタブ セット (例: 4 つ以上) があり、それらがタスク バー/ドック上の SDI ウィンドウ (例:注文とラベリングに関して)。

  • SDI では、アクティブでないウィンドウのツールバーやパレットをユーザーがアクティブなウィンドウと混同するという問題があります。

  • タブの数は固定されており、永続的に開いています (たとえば、各タブが同じデータ オブジェクトの異なるコンポーネントである場合)。ユーザーは、タブを閉じることとウィンドウ全体を閉じることを区別しようとすることに悩まされることはありません。すべてのウィンドウに同じタブがあるため、ナビゲートするウィンドウを見つけることは問題ではありません。

  • タスクに合わせてデータを適切に配置する方法は 1 つしかなく、ユーザー間やユーザーが実際にアプリを使用する目的に違いはありません。SDI ウィンドウの適切な配置とサイズ設定をユーザーに任せるのではなく、タブとマスター/詳細ペインを組み合わせてユーザー向けに設定することもできます。

要約すると、ユーザーの能力、アプリの複雑さ、およびタスク構造を考慮して、アプリがコンテンツ表示をユーザー/OS よりも適切に管理できる場合は TDI を使用し、それ以外の場合は SDI を使用します。

于 2009-01-28T04:07:05.720 に答える
5

古いスタイルのMDI(ドキュメントを切り替える場所。Windowsメニューを経由する必要がありました)は面倒でした。新しいMDI(OperaやMozillaのタブなど)を使用すると、ドキュメント間の切り替えが非常に簡単になり、受け入れられているようです。また、MDIを使用せずに複数のドキュメントを開いている場合のように、タスクバーが乱雑になることもありません。

于 2009-01-28T00:59:29.640 に答える
5

使用した例(MS OfficeおよびAdobeアプリケーション)は大きなプログラムであり、多くの機能を備えていることに注意してください。ユーザーはそのプログラムを扱い、プログラムの存続期間の大部分はそのプログラムのみを扱います。

新しいバージョンのMSOffice(2007)とAdobe Photoshop(CS4)は、それぞれ複数のウィンドウとタブを使用します。

Windows 7では、MicrosoftのAPIによって提供されるタブの追加機能により、MDIの人気がさらに低下する可能性があることに注意してください(ただし、厳密にタブを使用する必要はありません。MDIウィンドウは機能しますが、ユーザーにとっては通常よりも混乱します。 )。

于 2009-01-28T01:07:34.367 に答える
3

MDI の主な利点は、2 つ以上のウィンドウを同時に追跡し、それらのウィンドウをグループ化する必要がある場合です。たとえば、あるウィンドウで実行中のプロセスがあり、別のウィンドウで作業する必要がある場合、MDI が最も理想的です。

于 2011-07-24T04:28:03.103 に答える
2

私はslavy13に同意します(古い-MDI =悪い、新しい-MDI =はるかに良い)。ただし、MicrosoftExcelなどのプログラムをモデルとして使用しないでください。いや!開いているスプレッドシートの数に関係なく、デスクトップに1つのウィンドウが表示されます(好みの場合とそうでない場合があります)。ただし、開いているドキュメントごとに1つのタスクバーアイコンが表示されます。また、Alt + Tabウィンドウにも、開いているドキュメントごとに1つのアイコンがあります。さらに、「Excel」専用の追加アイコンがあり、「現在」のドキュメントに移動できます。そうそう、MozillaのようにMDIを実行してください。または、少なくともユーザーに、よりクリーンなスタイルに切り替えるオプションを提供します。

より簡潔にあなたの質問に答えるために、私は答えがイエスであると感じます、MDIはいくつかの例でまだ適切です。しかし、すべてにおいて、節度が鍵となります。

于 2009-01-28T01:06:09.097 に答える
1

複数のトップレベル ウィンドウが最適なようです。グローバル アプリ インスタンスを 1 つにするか、ドキュメントごとに 1 つにするかは、あなた次第だと思います。ユーザーには表示されません。

于 2009-01-28T00:56:41.830 に答える
1

MDI の利点は 1 つだけです。

Adobe Photoshop などの大量のリソースを使用するプログラムでは、一度に複数のインスタンスを実行すると法外なコストがかかるため、MDI が発生することがよくあります。

ただし、最初から大量のリソースを浪費するようなプログラムを開発するべきではありません。

于 2009-01-28T00:57:33.233 に答える
1

MDI の利点の 1 つは、多くのウィンドウで共有されるものに多くの画面領域が使用される場合に発生します。このような素材は、各 SDI ウィンドウで繰り返したり、SDI ウィンドウとは完全に別のウィンドウに表示したりするよりも、囲んでいるウィンドウの上部または側面に配置する方が論理的かもしれません。たとえば、チャット プログラムにはステータス ペインとコントロール ペインがあるとします。それらをチャットウィンドウに視覚的に結び付けた方が、スタンドアロンウィンドウとして使用するよりも優れている場合があります。

于 2010-09-05T00:00:39.150 に答える