今日は、お気に入りの使いやすさについてお話します。
ロシア語では、この流行語の代わりに「便利さ」があります。 しかし、人間とコンピューターの相互作用の利便性に関しては、すぐに使いやすさについて話します。
この記事では、サイトに登録するときに頻繁に見られる日付入力フォームについてのみ検討します。 ほとんどの場合、生年月日の入力を求められます。 世界中のすべての管理者が私の誕生日がわからないことを知っているのはなぜですか、しかし統計のためにそれを考慮します。
まず、物語に飛び込みます。
最初のすべてのサイトおよびプログラムは、このフィールドをユーザーに提供しました。

当然、すぐに問題が発生しました。 人々はこの分野に最善を尽くし、次のことに慣れました。
1980年7月12日
12-07-1980
80/12/80
などなど...
そのため、以下が発明されました。

しかし、この中にはドラムに乗っている人もいれば、カッコ内に書かれているものを読まなかった人もいます。
次に、プログラマーは、フィールドを3つに分割するというアイデアを思いつきました。

それは安reliefのため息のようでした。 しかし、ユーザーは愚かな人々であり、これらのフィールドを気にしません。 これらの理由から、1か月は1日フィールドに追い込まれ、その逆も同様でした。 誰が月を数字で紹介し、誰が言葉で紹介したか。
開発者は思慮深くなり、愚かなユーザーからの間違いを避けるための最善の方法は、彼らがそれらを許可するのを防ぐことだと気づきました。 そして彼らはこれを発明しました:

このフォームでは、このフォームはほとんどのサイトで今日まで見られます。 そして、すべてがうまくいくようですが、しかし、多くがあります。
まず、2月31日に全員を除外するわけではありません。
第二に、月を選択するのは簡単ですが、日、特に年を選択するのは非常に難しいタスクです。 自分で判断する:

スクロールして正しい年に到達するまでに長い時間がかかります。 そして、結局のところ、私たちは理想に向けて努力し、高齢者と幼児の両方のためにインターフェースを適応させなければなりません。 この点に関して、現在の多くのサイトでは次のことがわかります。
mail.ru

ヤンデックス

あらゆる種類のフォーラム

イーベイ

残念ながら、これらのフォームはすべて完全なものではなく、3450年11月31日などの日付の入力を除外するものではありません。
何ができますか? そして、あなたは多くのことができます。 各月の特性とうるう年を考慮に入れることができます。
-はい、あなたはめちゃくちゃ! -プログラマーは言うでしょう。
しかし、私はこのモジュールを一度行う必要があり、将来的にはあなたの製品に簡単にねじ込まれると言うでしょう。
ただし、これに関連して、記入手順を変更する必要があります。最初に年と月を入力し、次に受信したデータに基づいて、目的の日数を[日]リストに入れます。 さらに、ユーザーは年と月を選択するまで日リストを利用できません。


さて、通常の左から右への移動を使用して、問題はないはずです。
しかし、まだ問題があります。 年と日のリストはまだ使用できません。
何ができますか?
私はこれを思いつきました:

私の意見では、そのようなリストで必要な年を見つけるのは簡単です-目は数十にしがみつきやすく、数行を描くのも簡単です。 面倒なスクロールはありません。
今月のリストは、近代化を必要としないようです。
しかし、その日はクラシックカレンダーブロックで表すことができます

当然、最初の2つのフィールドに基づいて日を表示する必要があります。
私の意見では、この形式の生年月日を入力すると、故意に誤った日付を回避し、ユーザーに便利な入力を与えることができます。
どんなコメントでも喜んでいます。