0

ここで私の疑問は、Android アプリで時間をかけて維持するためのクリーンで簡単なコードを実現する方法です。Uncle bob - clean codeルールを適用しようとしていますが、開発を続けると、いくつかのルールを破る必要があり、アクティビティ700行(私はFragmentを使用していません.700行は「やりすぎ」のクラスのようです)、誰かがFragmentを適切に使用してAndroidアプリを試し、これらの質問に答えることができるかどうかを知りたいです:

1- does it really impact on Activity lines length (at least less than 300-500 [not strictly this numbers but a "reasonable" Class length] lines)?

2- does code keep clean and easy over the time?, not necessary with Uncle bob rules but considering best practice in OO while coding.

3- does it have a considerable impact in terms of "Performance"?

4- does Fragment help to support in a more simple way a wide fan of Screens?"

5- ignoring developer skills, what "should" be the way to go non-Fragment activities or activities with rich Fragment use?

注: これは Android への複製の試みではありません- Activity と FragmentActivity? ここでのトピックはタブ形式ではなく、Android 開発のベスト プラクティスであるためです。

私の英語でごめんなさい;)。

4

2 に答える 2

1

フラグメントの使用と の使用を混同していますFragmentActivity

FragmentActivityは、Android サポート パッケージからのフラグメントのバックポートActivityで使用するために設計された のサブクラスです。通常、バックポートを使用している場合にのみ使用します。フラグメントを使用しているが、11 以上に設定されている場合、通常はスキップできます。FragmentActivityandroid:minSdkVersionFragmentActivity

それを念頭に置いて:

アクティビティ行の長さに本当に影響しますか (少なくとも 300 行未満)?

それは言うまでもありません。これは、RestaurantそのサブクラスがそのサブクラスよりBusinessも長いか短いかを尋ねるのと同じです。それはすべてあなたのコードに依存します。RestaurantFoodSupplier

そうは言っても、フラグメントを使用するとアクティビティのコード行が減る可能性は確かにあります。IMHO、それはフラグメントを使用する正当な理由ではありません。

Uncle bob ルールでは必要ありませんが、コーディング中に OO のベスト プラクティスを検討してください。

それは言うまでもありません。Restaurantそれは、そのサブクラスがそのサブクラスBusinessと比較して「クリーンで簡単」になるかどうかを尋ねることと同じです。それはすべてあなたのコードに依存します。RestaurantFoodSupplier

「パフォーマンス」の面でかなりの影響がありますか?

通常はありません。

Fragment は、スクリーンの幅広いファンをより簡単な方法でサポートするのに役立ちますか?」

「画面の幅広いファン」が「幅広い画面サイズ」を意味する場合、はい、フラグメントはそれを助けることができます. 実際、これがフラグメントを使用する最大の理由です。ただし、メソッド名に大文字を使用すると魔法のように画面サイズが改善されるのと同様に、フラグメントだけでは魔法のように画面サイズが改善されるわけではありません。

開発者のスキルを無視して、FragmentActivity または Activity に進む方法は「あるべき」ものですか?

前述のように、通常FragmentActivityはフラグメントのバックポートを使用している場合にのみ使用します。フラグメントを使用しているが、android:minSdkVersion11 以上に設定されている場合、通常はスキップできますFragmentActivity

あなたの質問が本当に「アプリでフラグメントを使用する必要がありますか?」である場合、答えは「おそらく、アプリによって異なります」です。

于 2013-07-22T16:26:31.307 に答える
0

はい、フラグメントは行く方法です。それらは論理的な方法でコードを広めるのに役立ち、700行のアクティビティがないようにします。通常、各フラグメントには独自のクラスがあるため、コードを簡単に保ちます。4番目の質問に答えるために、 「スクリーンの幅広いファン」を持っています。

始めるのに役立つこのビデオをお勧めします。初心者にとって、このビデオはフラグメントの使用方法の優れた説明です (私はこのビデオを見るまでフラグメントの使用方法を理解するのに苦労していたので知っています)。これは、Andrew Ruffolo による「フラグメントを使用した Android のプログラミング」と呼ばれています。

http://www.youtube.com/watch?v=KyXvq_kwfzg

このビデオは、フラグメントの力を示しています。それでもなんらかのメイン アクティビティが必要ですが、このメイン アクティビティはフラグメントのコンテナのように機能し、アプリのほとんどの機能はフラグメントとそれに対応するクラスによって処理されます。

Androidにフラグメントが追加された後にアプリ開発を始めたので、アクティビティを使用したことはありませんが、メソッドと内部クラスがクラスを分解するのと同じように、フラグメントがアプリを分解するのに役立ち、クラスが分解するのと同じように思えますプロジェクトまたはプログラムを停止します。これが可能だったのか、それともフラグメントが追加される前のアクティビティのみを使用して単純だったのかはわかりません。

于 2013-07-22T16:27:23.253 に答える