ユーザーに敵対的なインターフェース
最近、ユーザーフレンドリーなインターフェースのトピックは非常に人気があり、携帯電話のOSメーカーは良いインターフェースを書く方法に関する詳細な指示を提供します...それではなぜそれらを使用できないのですか? そして、生きているすべてのモバイルOSに内在する根本的なミスがあります。これらはシングルタスクOSです。 android、ios、またはwp7の通常のアプリケーションには、独自のウィンドウマネージャー、タスクマネージャー(タスク管理自体とそのユーザーインターフェイスの両方)を含める必要があり、これらのプロセスの分離を確保し、一部のプロセスでエラーが発生してもクラッシュしないようにし、スリープモードとそれからの回復。 しかし、これらはOSタスクです! アプリケーション内では、それらを解決するのは非常に難しいか不可能です。 奇妙なモバイルOSの動作の例を考えてみましょう。背景
むかしむかし、悪い人たちは、従来はユーザーがアプリケーションを閉じるのではなく、派手なガベージコレクションを使用することにしました。 確かに、彼らはひどくそれをしました:メモリがなくなった場合にクリーニングが開始され、ユーザーは何を閉じたいかを明確に尋ねられました。 不要なアプリケーションでメモリが詰まるのを防ぐために、彼らは難しい動きをしました。古典的なタスクバーを放棄し、開いているアプリケーションを起動するとメモリ内のインスタンスが発生するようにしました。 したがって、複数のドキュメント(Webページを含む)を同時に開く機会は失われました。 幸いなことに、Windows Mobile用のサードパーティシェルは、最小化ボタンを閉じるボタンに置き換え、タスクバーを追加しました。 一部のアプリケーションはタブを実装し(当時はNet FrontとOpera Mobileブラウザーのみでした)、一部のアプリケーションはOSをだまして複数のコピーで実行する方法を学習しました(一部のブックリーダー)。 しかし、いくつかのドキュメントを開く問題は残っていました。私たちの時間
最新のOSの開発者は、アイデアは良いと判断しましたが、実装のみが悪いと判断しました。 そして、彼らははるかに思慮深く調和のとれたシステムを作りました。 彼女は美しく見えますが... ... 複雑で非自明な行動をしています。 そして、これはプログラミングでは許可されないことです。システムが奇妙な動作をすることは確かにあります。事実
- 通常、GPRS / 3Gを介してインターネットに接続する携帯電話で実行されるモバイルOSについて話します。 また、GPRS / 3Gは非常に不安定です。 MTSでは、モスクワでもほとんど機能しません。 また、高価なリソースです。 非常に高価なローミング。 また、BITなどの無制限の関税の場合、1時間あたり5メガバイトが非常に早く終了します。 つまり、インターネットから何かをダウンロードできた場合、これは貴重なリソースであり、保存する必要があります。
- Webブラウジングはグラフの横断です。 私はhabrページを見て、面白い記事をタブで開き、それらを順番に読み、そこに面白いものがあればタブでリンクを開きます。 多くのタブがあり、私はすぐにそれらを読むことができません。
奇妙な行動
自動終了プログラム
ブラウザを開き、タブを開きますが、着信コールまたは電子メールに気を取られます。 OSはブラウザを閉じます。 ほとんどのブラウザ(ビルトイン、Doplinブラウザ、Opera、Firefox)はページをリロードし、キャッシュから何かを取得する可能性があります。 インターネット接続がなく、広告のみが失われたため、キャッシュからページを完全にリロードできたのはChromeだけでした。 これは受け入れられません。事実1および2を参照してください。最寄りのモスクワ地方への電車で20分後にインターネットが再び表示されます。私たちはブラウザを開き、ブログ/フォーラムに投稿を書き始め、何らかの事実の正しさを疑い、データシートに登り、次に辞書に入り、ブラウザに戻ります...どこですか? スクリーンキーボードで入力したテキストはどこに行きましたか? ページをリロードするときに、フォームのコンテンツを復元する必要があったのでしょうか?
Adobe Readerを開き、ドキュメントを選択して、別のタスクに切り替えてから、Adobe Readerでもう一度実行します。 再びドキュメントのリストが表示されるのはなぜですか? Adobe Readerですぐにドキュメントを開くと、すべて問題ありません。
Huawei HonorのAndroid ICSで連絡先を開き、ドライブから連絡先のインポートを選択し、電話が愚かである間、電話で手を下げます。 画面の向きが横向きに変わり、OSがウィジェットを再作成し、...連絡先選択ウィンドウが消えます。
Android向けの人気ゲームをいくつかチェックしました:怒っている鳥、ロープを切る、ブレードマスター、ブロックアウト3D、デスレーシング、ネットハック、スワンピークロコダイル。 それらのどれも、繰り返し電源を入れても状態が回復することを認識していません。 nethackのみが、正しく完了しなかったセッションを見つけて、それを続行するよう提案したことを私に知らせました。 Swampyワニでは、さらに複雑な非自明な動作が見つかりました。ゲームを最小化すると、リソースの一部がアンロードされ、アプリケーションが再びアクティブになったときにロードバックされます。 ただし、同時にシャットダウンは正しく処理されません。
アプリケーションセッションの保存と復元は、太古からKDEで行われてきました。 多くのプログラムが正しくサポートしていますか? では、なぜアンドロイドプログラムは通常それをサポートすると思いますか? これは複雑なコードであり、間違いなくエラーが発生します。 開発者は怠け者で、なぜそれを書くのかはっきりしていません。
複数のドキュメントを開く
現在、タブのないブラウザはありません。タブが必要な理由を誰も説明する必要はありません。 ただし、htmlだけが形式ではありません。たとえば、pdfがあります。 多くの場合、記事はこの形式で公開されます。 時々、フォーラムのトピックを見て、さらに読むためにバックグラウンドでロードしたいいくつかのpdfリンクに出くわします。 そして最近、目の前に電子部品のデータシートが必要です。 PDFビューアでは、それらをすばやく切り替えることはできません。 Adobeリーダーでは、ページをタップし、表示された「ホーム」ボタンをタップして、最近開いたドキュメントの中から選択する必要があります。 します編集者 最初にテキストメッセージ。 たくさんありますが、テキスト編集タブは920個しか見つかりませんでした。 ドキュメントを切り替えるときに、現在のドキュメントを保存するかどうかを尋ねられたいと本当に思いますか? ドキュメント(メニュー、ファイル、履歴、保存、選択ファイル)を切り替えるための5つのタパスは、Windows Mobile 2003の5つの通常の5本の長いテープよりも優れていますが、これは決して使いやすいインターフェイスではありません。
電子書籍。 タブはどこにありますか? 同時に2冊の本を読む人はいませんか? 約8年前、私は学校にいて、PDAを持っていて、文学の授業でそれを使うことを許可されました。 「暗黒の王国の光線」と「雷雨」は同時に開かなければなりません。 詩が通過すると、特にプーシキンとデルザビンの「記念碑」である場合、それらはしばしば異なるコレクションになります。 これらは同時に通過し、これらの2つの詩を比較します。 「戦争と平和」はlib.ruで4つのボリュームで提供されています。それらをすばやく切り替える必要があります。
私たちは地球に戻ります。 Yandex。ポスター。 質問に非常によく答えるすばらしいアプリケーション:「Xは私の隣にありますか?」 しかし、どの映画に行く価値があるかを決定することはできません。 ゴミでいっぱいのインデックスを介してのみ映画の説明を切り替えることができます。 ここでは、最も人気のある映画を見ることができます。
Yandex.Market。 また、すばらしいアプリケーションであり、「これはどのようなハードウェアですか?」、「どこで購入できますか?」という質問によく答えます。 ただし、このアプリケーションは、原則として、2つの製品を比較したり、カテゴリから最も適切な製品を選択したりすることを意図したものではありません。 書くのは難しく、インターフェイスが乱雑になりますが、必要ありません。
しかし、アプリケーションの複数のインスタンスを作成することが禁止された理由を思い出しましょう。 Windows Mobileハンドヘルドガベージコレクターがユーザーに何を閉じるかを常に尋ねないようにするため! タイプライターのキーボード上のボタンのレイアウトのような松葉杖でした。 Windows Mobileはもうありません。通常のガベージコレクションアルゴリズムがあり、タスクバーに類似しています。 では、なぜ今なのでしょうか?
次に、アプリケーションで多くのタブを開いたときに何が起こるか考えてみてください。 RAMを占有する未使用のドキュメントがたくさんあります。 十分なメモリがない場合、OSはそれらを閉じる必要がありますが、OSはそれらを認識しないため、アプリケーション全体を閉じます。 デスクトップOSにそのような問題はありますか? いいえ、かなり前に決定されました。メモリの未使用ブロックはスワップに転送され、メモリはそれを必要とするアプリケーションのために解放されます。 ただし、OSにガベージコレクションがある場合、スワップは必要ありません。 その結果、 タブのあるアプリケーションはOSのイデオロギーに反し、OSが正常に動作しなくなります 。
結論
- プログラムまたはそのコンポーネントに複雑で非自明な動作を実装する必要はありません。 その後、彼らは奇妙に動作します。
- OSから松葉杖をドラッグする必要はありません。その開発者は分散され、新しいOSをゼロから作成しました。
- お世辞をしないでください。 ほぼ10年が経過し、libastralが実稼働で使用されることはありませんでした。 ニューロインターフェースも、映画のスクリーンからは生まれていません。 最新のモバイルOSは、ユーザーの行動の最も基本的なパターンのみを予測でき、悪くはありません。 ただし、ユーザーに関するすべてを知っていると想定しないでください。