Androidアプリ開発に役立った書籍 (1)

スマホアプリでもWebアプリでも、最近ではエンジニアの方々がブログ上で技術的な情報を公開していたり、あるいはGitHubなどで直接ソースコードを見る(もしくは利用する)機会が増えたため、昔に比べれば開発することに対する参入障壁が低くなりました。基本、無料ですし。

もちろん、ネットに散らばっている情報を自分の頭のなかで咀嚼して開発に応用することは可能なのですが、体系的に記述されているものはあまり多くないため、入門期からネットの情報のみで開発を始めるのは、なにげに時間対効果が悪かったりします。

そこで、書籍です。さすがお金をかけて作られているだけあって、必要な情報がコンパクトに且つ体系的にまとめられています。全ての書籍が有益と言い切れるわけではないのですが、Amazonレビューやその他の書評などを参考にすることにより、「当たり」の本に触れる機会が多くなりました。

今回は、その中でもAndroidアプリの開発を進めるにあたって、非常に参考になった書籍を紹介したいと思います。Androidアプリ開発の知識についてこちらはゼロの状態から初めて、これから紹介する書籍を参考にして最終的にGoogle Playにアプリをリリースすることができました。
(ただしゼロとはいえ、こちらは今まで別のプラットフォームや言語での開発経験がありますので、その経験を元にした知識があるという前提での役に立った書籍です。具体的にはC言語C++C#RDBLinux周りの基本知識は習得済みという状況からの出発です。)

まずはこちら。

かんたん7ステップ  JavaからはじめようAndroidプログラミング

かんたん7ステップ JavaからはじめようAndroidプログラミング

入門の入門というレベルで、品質や見た目にはこだわらず、とにかく実際に動くものを作ってみるには最適な書籍です。Javaの超基本的な文法も併せて解説してありますので、Javaに触れて来なかった私にとっては取っ掛かりとして有益でした。実際に手を動かしながら読み進めやすくなっています。全てのプログラミング言語に通じて言えることですが、たとえ最初は汚いコードであっても、実際に自分で手を動かしてコードを書き、モジュールの動作を実験的に確認しつつやることが習得の早道です。デバッガでオブジェクト変数に無理やりnullを突っ込むとか、違う型をキャストしてみるとか、怪しげなクラスを作ってみるとか、色々実験することによってAPIの挙動の理解が深まったりします。

次は、より実務的な内容のものです。

Google Androidプログラミング入門 改訂2版

Google Androidプログラミング入門 改訂2版

各々の要素技術の深い解説こそありませんが、アプリ開発に着手してリリースするまでの全体的な枠組みが解説されています。開発環境の準備やアクティビティのライフサイクルといった基礎事項はもちろんのこと、その他にも、他書ではあまり触れられていないテストの方法論やセキュリティの基本、そしてリリース作業の実務的な手順が明快に解説されています。

続いて、泣く子も黙るオライリー本。泣く子どころか、現役のエンジニアであっても知識が浅い状態で読み進めれば、その難解さから思わず黙りこんでしまうという、いわゆるオライリー本です。

プログラミングAndroid

プログラミングAndroid

この書籍を全ページ読んだわけではないのですが、コンテンツプロバイダー周りは特に詳細に解説されており、Androidにおけるデータ永続化とは何たるものか、ということが理解出来ました。SQLiteを利用する場合は非常に参考になります。

そして、UI周りの解説で有益なのがこちら。

Android UI Cookbook for 4.0 ICS(Ice Cream Sandwich)アプリ開発術

Android UI Cookbook for 4.0 ICS(Ice Cream Sandwich)アプリ開発術

特にFragmentを使った開発では必須のノウハウが詳細に詰め込まれています。例えば、Support Libraryを使ってFragment機能を実装する場合はメインのアクティビティとしてFragmentActivityを継承しなければ例外が発生してしまうとか、Fragment活用時にハマりやすいポイントもちゃんと紹介されています。


基本的には、以上の書籍を適宜読みこなしていけば、Androidアプリの開発がスムーズに行えます。先にも述べたように、もちろんネットで無料公開されている情報のみでも可能とは思いますが、時間と労力を節約したいときには(お金の節約にはなりませんが)、やはり上記のような専門書を手元に置いておくことをお勧めします。

次回は、セキュリティやテストのやり方に特化したものなど、よりピンポイントで参考になった書籍を紹介したいと思います。