2015_12_24onDestroyで参照を切るもの他

最近続けている今日学んだことのメモ(調べたこととか、調べて参考にした記事)を公開していきます。 Androidメイン。

onDestroyで参照を切らなきゃいけないもの

  • ポイントは"Activity"への参照が残らないようにするという視点
  • なんでも切れば良いワケじゃないね

Utilクラスに移譲するもの

  • 経験則だが、versionNameを取得するものなどは、Utilクラスに移動することを検討したほうがいい

@Nullableについて

  • 何らかの原因で返り値が null になるケースがあるときは、メソッドに@Nullable アノテーションを付けておく。(例えばtry/catch が必要になっているとか)
  • 何故つけるかというと、もし他の人がこの画面に追加実装することになった場合でも、null が返されるケースがあることを明示的に書いておけば、実装者はそれに気をつけて実装が可能なので、バグ・不具合の発生を抑えれる。

nullが入り得るかどうかでバグにどれだけ繋がるか、その情報をどう伝えるかについて

d.hatena.ne.jp

nullは型を持つかどうかの話(というよりoptionalやmaybe?(使ったことない)の話) bleis-tift.hatenablog.com

TargetSDKversionの話

onlineconsultant.jp

minSdkVersionとTargetSdkVersionの関係

何も考えずに実装していたなぁと実感。 最近出たAPIは確認しておくべきなのかもしれない。

qiita.com

ちなみに今のプロジェクトはminSdkVersion=16,targetSdkVersion=22となっていた

じゃあcompileSdkVersionは? http://assam-at-night.blogspot.jp/2015/05/androidcompilesdkversionbuildtoolsversi.htmlassam-at-night.blogspot.jp

qiita.com

一方compileSdkVersionにはcompileSdkVersion=23になっていたので、targetとcompileがバージョン違うと何がいけないのかな?

Argumentsとは

bundleにsetArguments()するときのキーの値の名前の流れでARGS_HOGEという名前にした方がいいよと指摘を受けて、あれ、argumentsってなんだっけとなった。引数やんけ

その流れで引数とパラメータの違いを説明している記事があったのでメモ。

blog.masahiko.info

Support Libraryについて

minSdkVersionとかTargetSdkやらはわかったけど結局supportLibraryって何が違うんだっけ?となったので改めて。

vividcode.hatenablog.com