3

静的および動的な情報 (永続的な情報を含む) を表示するための一般的な Android アプリの最善のアプローチについて質問があります。

いくつかの永続的なコレクションとそれらのアイテム間のいくつかの関係を持つ単純なアプリを想像してみましょう。たとえば、パイロットのリスト、自動車のパイロットのリスト、お気に入りのパイロットリストユーザーに表示するアプリです。ユーザーはパイロットまたは車のプロファイルを手動で更新でき、新しいデータは永続的に保存する必要があります

A)データベースから対応するクラスとリスト(たとえば)をロジッククラスにロードし、マネージャ(たとえばPilotManager)でそれらにアクセスし、それらのオブジェクトに永続的に影響する変更を反映し、並行して変更を反映するメカニズムを使用しますデータベース。これらのオブジェクトは、アプリの実行中にメモリに残ります。

B) データベース エンジンと直接連携し、表示または作業に必要な要素を毎回そこから復元します。たとえば、パイロットを一覧表示するには、データベースにクエリを実行し、CursorAdapter を使用してそれらを一覧表示します。パイロットが選択された場合、データベースに彼の車を照会し、その値を表示します。変更はデータベースに直接保存され、そこから更新されます。

私は通常、方法 A) を使用します。これは、(最初のロードを除いて) データベースへのアクセスが必要ないため、対話でユーザーに高い応答性を非常に高速に付与するためです。しかし、友人は、メモリの使用量が少なく、検索の複雑なフィルターを処理するためにデータベース エンジンを占有できるため、B) の方が優れていると私に言いました。

両方のアプローチは有効ですか? 誰かが間違っていますか?ありがとう!

4

1 に答える 1

1

ソリューションAは、優れたパフォーマンスと速度が必要なときに、ゲームのようなことをする場合に適しています。

ただし、ソリューションBは、ユーザーがあるアクティビティから別のアクティビティに移動する通常のアプリケーションに適しています。また、ソリューションBはメモリの節約に適しています(オブジェクトが多数ある場合、ソリューションAでメモリエラーが発生する可能性があります)

于 2012-04-05T20:42:06.123 に答える