Androidの学習をcourseraをつかってしました。
内容
Lecture
Android開発で必要な知識を体系的に習得できる。
特徴は、知識ベースの網羅的解説。 実際にアプリをつくって楽しみましょうというスタイルとは、正反対。 Androidの構成要素を、毎週少しずつ、徹底的に叩き込まれる感じだ。
たくさんの知識を一気に解説してくるので、頭に入りきれない。
アダム先生の話し方は、とても形式的。
概念の説明、デモアプリの説明、ソースコードの説明、このサイクルが繰りかえされる。 説明のためのフレーズまで、定形的に毎回同じという徹底ぶりだ。
ジェスチャーが多めで、しかも週の後半に進にしたがってジェスチャーのレベルが上がっていくのがおもしろい。
スライドが白黒で地味なせいもあり、講義を一度きいても不思議とほとんど頭に入らないのが辛い。
Assignment
課題に取り組むことで、知識の整理ができる感じ。課題はPDF 3枚くらいの仕様を実装して、毎週提出する。
膨大なサンプルのデモコードが結構役に立つ。これはありがたい。 ネットで見つかるソースよりも、課題のサンプルのほうがやくにたつ。 このコードを見ながら、課題でコピペで使えそうな部分を探す。
驚いたことに、課題はすべて自動でテストされるのだ! Robotiumという受け入れテストツールを利用しているようだ。
CourseraのAndroid講義、Robotiumというテスティングフレームワークを使って自動テストされる。
— きつね (@tsu_nera) 2014, 2月 2
これは、Androidが吐き出すログをパースして期待通りの結果どうか判定する。Androidテスト技術、恐るべし。
あと、掲示板に先生みずから頻繁にコメントしているのもうれしい。
感想
Android開発は期待していたほどおもしろくない、ということが分かった。 いや、おもしろいアプリをつくっていないからかもしれない、けど。
副読本として参考書も読みつつ進めた。 このAndoroidの本も、同じように網羅的なので、講義との相性はいいかも。電子書籍版を買った。
この講座を受けて一番よかったのは、Androidの設計思想、MvCを勉強できたことだ。 Androidというシステムのなかで、オブジェクトがいかにしてやりとりしているかが分かった。
それぞれのAPIのつかいかたは時間がたつと忘れてしまうけれども、 大枠のAndroidアーキは頭に残り、またこれからにも役立っていくだろう。