androidの開発がすこしづつ盛り上がりを見せてきたりはするのだけど、とっかかりにくさ、情報の不透明さもあり、最近の自分の調べでは、多くの開発者の開発方法がガラパゴス化してて、正しい情報がわかりにくくなってきてはいます。
その中で、多くの開発者が勉強方法として書いてる事で自分としては腑に落ちない紹介も存在しているので、バリバリの開発してる自分が冷笑的に見ている情報について少しのべさせてもらいます。
最新OS向けの本に騙されるな。
新しいOSが出るとすぐに新しい本が出るけど、android5.0用の関数はandroid4.0じゃ動かないので、使っても意味がないので、初心者向けの最新OSの本を買っても、まだ1,2年は使えない情報も含まれてしまいます。
iOSだと、最新のOSのシェアが一気に増えるけど、Androidは、国によってはAndroid2.3が未だに主流だったりする(インドとか)。日本国内だったら4以降に使えればいいけど。みたいな事も多いです
ネットの情報に踊らされるな
・新しいOSが出て新しい方法でレイアウトを作りましょう!
・layout.xmlをデザイナーが作れるよ!最近のレイアウトはね。
って記事が大量に出ますが、自分は、この系統は基本全部無視しています。レイアウト周りは、正直に作っている人はアホなほど時間がかかってしまいます。特に新しい方法が出ると、みんなその方法を採用してるみたいに見えますが、新しい方法は古い端末に対応できなかったので、OSで振り分けの処理をして。。みたいな事はやめましょう。自分が使ってる方法があったら、それを使いまわしておけばいいのです。新しい方法は参考程度に。
Javaの勉強をしすぎるな
Javaを使った開発なので、Javaを勉強するのは正しい事のようだけど、Javaに関しては、eclipseなどあればコード補完機能が充実しているので、そんなに勉強しないでAndroidの開発に移った方がいいと思います。個人的な見解になりますが、プログラムには、大きく2種類あると思っていて、表現の為のプログラムと、データの為のプログラムがあって、Androidはレイアウトや、アニメーションなど表現の要素が強いプログラムを組むのですが、javaは基本的には、データベースを使ったり、ファイル出力したりっていう部分が主だったりします。Javaの勉強がつまらなくてもAndroidの勉強は面白いって人も大勢います。Javaの勉強でつまづきそうだったら、最初からandroidで勉強しても問題にないと思います。むしろ、androidでjavaを覚えてから、Javaのそういったデータ系の操作をじっくり見直してく方法がよいです
「Effective Java」は玄人向き
Javaをやる人は読もうっていう風潮もあるけど、Java覚えたての人が読んだら挫折する事請け合いの本。どの分野にもあるような、みんなおすすめするけど、数ページでわからなくなる本(初心者はね)。初心者に読めっていうのは小学生に因数分解、教えるようなもんです。時がきたら読みましょう。Javaの勉強なのでこの本で挫折する必要はないと思います。
「セキュリティ」向けの本は玄人向き
セキュリティを気にした作り方の本、多分気にして作ってる人は一部しかない。(もちろん、最低限の事はしています)あまりに気にしすぎると、何もできないし(初心者はね)、用語がわからないので挫折すr(ry
初心者に読めっていうのは小学生に微分積分、教えるようなもんです。時がきたら読みましょう。
Androidに用意されているものをあんまり使うな。
toggleスイッチとか、デフォルトのデザインがダサいので、デザインを変えたい!ってなるかもしれないですが、基本的にImageViewで自分でプログラム書いて実装してあげた方がデザイン的にもプログラム的にも融通が利きます。他には、TabActivityっていう、タブページを作る用のActivityを使ってる人がいて、その時点でアウトだよねって感じもします。便利っぽい要素はデザインのカスタマイズができないので使わない人も多いと思いますが、存在してるから、割と初心者向けの本で紹介されてます。余計なクラスは使わないでカスタマイズがしやすいのだけ使いましょう。
まとめ
基本的にはみんな試行錯誤をして、各々の方法を確立させて作っているので、教科書のような方法が存在していない。その人の弟子になるのであれば別だけど、ブログ記事はすべて参考程度、自分のやりやすい方法を試して、不明点があれば都度検索をして、自分の方法を確立させるといいと思う。人の情報に踊らされないのが一番の近道です。