Android向けの効果的なプログラミングの31の方法

この記事は、Stack Overflowフォーラムの非常に優れたトピックの翻訳です。 英語は私の母国語ではないので、英語を本当に知っている人を怒らせないように、私は奇妙な場所をいくつか見逃しました。 この記事には、Androidの開発者を始めるためのヒントとコツのリストが含まれています。







1. 使用後にリソースを解放することを忘れないでください 。データベースカーソルなどの多くのリソースは、多くの場合無視されます。 それらを解放します。 不要になったリソース(ファイル、ストリーム)を閉じます。

2. 「マジック」番号を使用しないでください 。フォーム値[0]のレコードは無意味です。 値[SensorManager.DATA_X]などのエレガントなアクセス方法があります。

3. onPause()/ onResume()メソッド使用して、必要なもの、または常に開いてはならないすべてのものを保存または閉じます。

4. アプリケーションを迅速かつ効率的に作成します。GoogleI / O 2009 Conferenceのレポートを必ずチェックしてください。

5. 2つの番号を追加します。最初のスタンドアロンアプリケーションは2つの番号を取得して追加する必要があります。 非常に簡単に聞こえますが、すべてのマークアップ( 以降レイアウト )、コールバック関数、onPause()/ onResume()メソッドが正しく機能することを確認するために数時間を費やすことができます。

6. これはJavaです。Androidアプリケーション開発の大部分はJavaプログラミングです。 それを批判したり賞賛したりする時間を無駄にしないでください。 ただプログラム。

7. RelativeLayoutが大好き :ほとんどの初心者の例ではLinearLayoutを使用していますが、RelativeLayoutが本当に役立つことがすぐにわかります。

8. 最初のRelativeLayoutに「fill_parent」プロパティを使用します。最も一般的で見つけにくい問題は、最初のRelativeLayoutに「wrap_content」プロパティを使用し、いくつかの要素が奇妙に描画される理由をさらに明確にすることです。

9. 「空の」マークアップ要素を使用します。多くの場合、マークアップで空の要素を使用して他の要素を相対的な位置に配置します。 たとえば、「centerInParent」パラメータを「true」に設定して、高さと幅がゼロの空のTextFieldを使用して、画面の中央に他の要素を配置できます。

10. レイアウトに背景色を使用しますレイアウトに問題がある場合は、一部のオブジェクトの背景色を設定してみてください。 これにより、他のユーティリティよりも速くエラーを強調できます。

11. 「Apps-For-Android」をダウンロードします。多くの便利なソースコードが含まれています。 また、標準のアプリケーション例をうまく補完し、コード内の他のソリューションの使用を示しています。 svn co apps-for-android.googlecode.com/svn/trunk/apps-for-android-read-onlyコマンドを使用してダウンロードします。

12. ソースコードをダウンロードします 。Androidのソースコードは、いくつかの問題を解決し、ドキュメントのギャップを埋めるために必要です。 これが最新バージョンである必要はありません。 適切なサイトにアクセスして受け取ります。

13. 適切なソースコードを探すことを学ぶ :ほとんどの問題に対する最速の解決策は、特定のパラメーターが別のソースコードでどのように使用されているかを見つけることです。 サンプルアプリケーション、Android用アプリ、その他のソースコードのコピーを同じディレクトリに配置します。 コマンド「grep -ir parameter directory_source_code /」または他のプログラムを使用すると、このパラメーターの使用方法を簡単に見つけることができます。

14. Eclipseを使用します。長年使用してきた別のお気に入りのIDEまたはエディターがある場合でも、Android開発にはEclipseを使用します。 これは非常に優れたIDEであり、開発者を支援する多くのユーティリティがあります。

15. Eclipseを学ぶ :このIDEの新しいトリックを毎日学んでください 。 私のお気に入りはここここにあります

16. 毎日のプログラム :Androidプログラミングは期待を裏切る場合があります。 立ち止まらないでください。 ユーティリティ、サンプルアプリケーションを使用し、記事を読んでください。 そして、もう一度コードを書きます。

17. 単一のモニターを使用しないでください 。カフェでラップトップを操作すると、作業が遅くなります。 アプリケーションウィンドウを少なくとも2つの画面(Eclipseウィンドウ、エミュレーター、およびドキュメント)に「分解」する必要があります。 3台のモニターで作業することはさらに優れています。

18. XMLファイルをフォーマットします 。Source-Formatコマンドを使用して、受け入れ可能な形式にします。 次のオプション「Eclipse / Windows / Preferences / XML / XML Files / Editor / Formatting / Split XML attributes each each new line」を選択する場合は、Ctrl + Shift + Fを押してテキストをフォーマットします。

19. 単純なテキストエディターでXMLファイルを編集します 。XMLタグのプロパティを変更するためにGUIを使用しないでください。

20. MarketPlaceの著作権侵害について考えてみましょう 。GoogleはMarketPlaceを「幸せな場所」にしていません。 アプリケーションは再度コピーされて公開されますが、名前のみが変更されます。 AppStoreからの収入のみで生活する予定はありません。

21. LogCatを使用します。何が問題なのかを理解するのは難しい場合があります。 デバッガーでアプリケーションを実行し、LogCatの出力を確認します。 LogCat出力を色付けする必要がある場合は、 Colored LogCatを使用します

22. ユーティリティを使用してSDKディレクトリを探索します 。hierarchyviewerやlayoutoptなど、多くの便利なユーティリティがあります。 それらを学ぶ。

23. Androidの設計とパフォーマンス、 ユーザーインターフェイスの ベストプラクティス、レスポンシブユーザーインターフェイスの ベストプラクティス、Androidアプリケーションの単体テストのベストプラクティスの 記事を必ずお読みください

24. 他のプラットフォーム(特にiPhone)からユーザーインターフェイスのサンプルをコピーしないでください。iPhoneの多くのアプリケーション( AndroidおよびiPhone )が持つ「タブバー」をコピーしようとする多くのアプリケーションを見てきました。 反対です。 プラットフォームにとって不自然で、画面を詰まらせます。 また、SDKはこれを作成するのに役立たないため、実装が難しく、最初から作成する必要があります。 代わりに、メニューボタンを使用します。

25. インテント :常に別のメソッドを使用してインテントを開始し、それに応じてメソッドに名前を付けます。

26. ガベージコレクター :Dalvik仮想マシンのガベージコレクターの実行は非常に高価です。 ユーザーインターフェイスを簡単にブロックできます。 スムーズなスクロールが必要な場合は、複数のオブジェクトを作成しないでください。 既存のオブジェクトを使用し、新しいオブジェクトを作成しないことをお勧めします。 レプリカ島は、この手法を使用するソースコードゲームです。 ソースコードを調べてください。 DDMSの[割り当てトラッカー]タブで、アプリケーション内のオブジェクトの作成を分析することもできます。

27. ストリーム :新しいストリームの起動は非常に「高価」です。 タスクを1つずつ実行する1つのスレッドのみを使用するか、スレッドプールを使用します。 必要に応じて、AsyncTaskなどの組み込みクラスを使用します。

28. 大量のデータ :データが十分な量(100Kb以上)を占有している場合-テキストまたはXMLファイルに保存しないでください。 それらの解析は高すぎるでしょう。 SQLiteを使用します。

29. Eclipse MAT :Eclipse Memory Analyzerは、優れたメモリ割り当て分析ユーティリティです。 アプリケーションのメモリリークを見つけるのに役立ちます。

30. onDestroyメソッド :onDestroyメソッドを再定義して削除します。

31. ウイルス対策ウイルス対策を使用する場合、エミュレーターが配置されているディレクトリをスキャンから除外します。エミュレーターのイメージは通常、ユーザーディレクトリ(C:\ Documents and Settings \ Users.androidなど)、Eclipseディレクトリ、Android SDKが配置されているディレクトリに保存されます。 これらのディレクトリのスキャンを無効にすると、プログラミングとデバッグの速度が大幅に向上します。



All Articles