便利で使いやすいウェブアプリケーションを設計するための 10 のヒント

便利で使いやすいウェブアプリケーションを設計するための 10 のヒント

より使いやすい Web アプリケーションを設計するための 10 のヒントをご紹介します。

ヒント1: タブに注意する

タブは、コンテンツ編成の概念を視覚的に表現するのに最適です。 その機能は直感的で、誰でも使い方がわかります。 残念ながら、タブを使用すると、怠惰なデザイナーがフォームを制御できなくなり、雑然として整理されなくなる可能性があります。
過度に複雑なフォームを処理するためにタブを使用しないでください。 過度に複雑なフォームを減らすことに重点を置きます。 すべてを 1 ページにまとめると煩雑になる場合は、ガイドに分割します。

ヒント2: 貯蓄行動に一貫性を持たせる

自動コミットと手動保存の動作を混在させないでください。 保存ボタンがある場合、ユーザーは自動送信の動作を信頼しなくなります。 同様に、他の種類の入力の場合、自動送信によって処理されると想定し、[保存] ボタンを無視する可能性があります。 どちらの方法を選択する場合でも、それを貫き、一貫性を保ちましょう。

ヒント3: 削除ボタンの位置を考慮する

ユーザーが頻繁に削除する必要がない限り、削除ボタンをフォーム内の 2 番目の場所に配置する必要があります。 検索結果に削除ボタンを提供すると、不必要な複雑さが増し、ユーザーに頻繁に使用してほしくないアクションに重点が置かれすぎる可能性があります。

ヒント4: 入力フィールドには常にラベルを付ける

Web アプリケーションでは、入力フィールド ラベルの代わりに空白のプロンプトを使用する傾向が高まっています。これは、アプリケーションがシンプルでわかりやすく見えるためです。 残念ながら、ユーザーが何かを入力すると、空白のプロンプトは消えてしまいます。どの入力ボックスにデータが含まれているかを知りたい場合は、ユーザーはどうすればよいでしょうか?
フローティング ラベルは、ユーザー プレースホルダーのシンプルさと固定ラベルの使用の中間点に位置する、新しい人気のソリューションになりました。

ヒント5: 新たなニーズがあるときは適切な調査を行う

ほとんどのユーザーはソフトウェアの設計方法を知りませんが、ソフトウェア設計に対して要求をすることがよくあります。 なぜ新しいものが必要なのかを尋ね、本当に達成したいことを理解します。 新しい機能を盲目的に提供するのではなく、根本的なニーズに対してより優れたソリューションを提供します。

ヒント6: インターフェースの直感性と効率性のバランスをとる

ユーザーが初めてアプリを使用する場合、できるだけ早く使い始める必要があります。 ユーザーはドキュメントを参照することはなく、ほとんどの場合、トレーニングを受けることもありません。 つまり、時間が経つにつれて、ユーザーは使い方を学ぶのに苦労する状態から、1 日 8 時間で非常に効率的に作業を完了する必要がある状態へと変化します。
アプリを簡単に習得できるようにして画面をシンプルに保つことと、効率的で素早く使用できることの間には微妙なバランスがあります。

ヒント 7: 保存すると何が起こりますか?

ユーザーが「保存して送信」をクリックした後に何が起こるかを常に考慮してください。 結果は一貫している必要があり、ユーザーはある時点で応答情報を知る必要があります。 アプリケーションに一般的な検索、編集、保存の概念がある場合、ユーザーはおそらくリスト内の次の項目に移動するところなので、検索結果ページを表示するのが正しいアプローチになります。
ユーザーがウィザード インターフェイスで複数のステップのプロセスを完了した場合、保存された内容を表示し、次のステップのオプションを提供する完了ページが必要です。 ウィザードの確認ページに次のアクションや提案が表示されない場合、新しいユーザーを混乱させる可能性があります。

ヒント 8: 現在どこにいますか?

大規模な Web アプリケーションでは、インターフェースが数十または数百ある場合もあります。 ユーザーは常に、アプリケーション内のどこにいるのか、現在何を編集しているのかを一貫した方法で把握する必要があります。 これは、ナビゲーション バーを強調表示して、ユーザーにアプリケーション内のどこにいるかを示すことによって実行できます。
パンくずリストを使用して、ユーザーがアプリケーション内のどこにいるかを説明することもできます。ユーザーが選択した場所ごとにパンくずリストを表示することもできます。パンくずリストの 1 つをクリックすると、最後に閲覧したインターフェイスに戻ることができます。

ヒント9: スクロールバーにこだわらない

デスクトップ アプリケーションの時代では、スクロール バーなしで画面に適応する UI デザインが一般的です。 垂直スクロールバーは、見えて明確に表示されている限り、Web アプリケーションでは問題になりません。 ユーザーがフォーム タブをクリックすると、ブラウザの動作に応じて、適切な位置まで自動的にスクロールされることもあります。

ヒント10: 空白を恐れない

すべてを埋めようとする自然な傾向があります。 ニーズが拡大するにつれて、開発者は限られたスペースにますます多くの機能を詰め込んでいきます。 残っているのは、非常に複雑で、かなり入り組んでいてわかりにくいアプリケーションです。 適切な量​​の空白を残すと、アプリがシンプルで使いやすくなります。

結論は

ユーザーは、アプリの品質を機能性よりもインターフェースに基づいて判断します。 ユーザーがあなたのアプリケーションが使いやすく、良い気分になれると感じれば、彼らはあなたのアプリケーションを使うでしょう。そうでなければ、機能が強力であっても良いレビューを得ることは難しいでしょう。 次の Web アプリケーションを設計するときに、これらの 10 のヒントを念頭に置いてください。そうすれば、ユーザーは感謝してくれるでしょう。
著者について:
David Talbot は現在、EverBank のチーフアーキテクトです。 ソフトウェア業界で 15 年以上の経験があり、リッチ UI の Web アプリケーションの構築に関する専門的な経験があります。 彼はまた、『Applied ADO.NET』や多数の技術記事の著者でもあります。 メールアドレスはdavid@legendarycode.comです。

<<:  nginxコンテナ設定ファイルの独立した実装

>>:  HTML のタイトル、段落、改行、水平線、特殊文字についての簡単な説明

推薦する

Navicatは機能ソリューション共有を作成できません

初めて MySQL FUNCTION を書いたとき、エラーが何度も発生しました。 Err] 1064...

Windows での Nginx のインストールと環境設定 (nginx をサービスとして実行)

最初で最も重要なステップは、Windows 環境に Ngnix サービスをインストールする方法です。...

crontab の実行結果を電子メールでユーザーに通知する方法

症状Centos7 ホストに crontab タスクを設定しましたが、時間が来るとメールを実行して「...

Vue2は応答性を提供するためにprovide injectを実装しています

1. vue2 での従来の書き方 // 親コンポーネントは 'foo' を提供します...

Linuxネットワーク設定の基本操作コマンドを詳しく解説

目次ネットワーク構成を表示するネットワークインターフェース情報を表示する---ifconfigルーテ...

MySQLテーブルシャーディングとパーティショニングの具体的な実装方法

縦型テーブル垂直テーブル分割とは、多数の列を持つテーブルを複数のテーブルに分割することを意味します。...

Jenkins は Docker イメージを構築し、Harbor ウェアハウスにプッシュします

目次DockerファイルドキュメントJenkins の設定Spring Boot プロジェクトでは、...

Linux での JDK と Tomcat のアップロードと設定に関する詳細なチュートリアル

準備1. 仮想マシンを起動する2. gitツールルートアカウントでログインルートアカウントを使用して...

Vue はシームレスなカルーセル効果を実現

この記事では、シームレスなカルーセル効果を実現するためのVueの具体的なコードを参考までに紹介します...

VSCode 構成 Git メソッドの手順

Git は vscode に統合されており、git コマンドをいくつか記述しなくても、クリックするだ...

MySQL トリガーの紹介、トリガーの作成、使用制限の分析

この記事では、例を使用して、MySQL トリガーの概要、トリガーの作成方法、およびトリガーの使用上の...

SpringBootはActiviti7実装コードを統合する

Activiti7 の正式リリース以降、SpringBoot2.x との統合開発を全面的にサポートし...

JS における ES6 継承と ES5 継承の違い

目次継承ES5 プロトタイプ継承ES6 クラス継承両者の違いES5プロトタイプ継承の内部実装ES6 ...

React-Native環境のセットアップと基本的な紹介

環境の準備1. 環境構築React Native 中国語ウェブサイト2. 開発ツール フロントエンド...

MySQL 8.0.23 のレプリケーション アーキテクチャにおけるスレーブ ノードの自動フェイルオーバー

私はしばらく MGR と連絡を取り合ってきました。MySQL 8.0.23 の登場により、MySQL...