2014年 06月 18日 ( 1 )

間違いなく自分は意識が低い側のデベロッパーであるため、勉強会に出ることはあっても社外のエンジニアに積極的に絡みにいくこともないし、普段から技術共有をしてるわけでもないので、気がつけばあっという間に自分の知らないライブラリが常識化してたりとか、ガラパゴス実装をしてしまいがちです。

そんな中でも何とか最新情報をある程度知るためには

- 気になったアプリのオープンソースライセス情報を見て、使ってるライブラリを調べてみる
- Githubで公開されているAndroidプロジェクトを見る

といった方法をよく使っているわけですが、その中でも自分がAndroidアプリ開発の際に、よく参考にしているプロジェクトを紹介しようと思います。
当然ながらいくら公開されたプロジェクトとはいっても、更新されていなければどんどん陳腐化していくし、過去の遺産のような実装方法が生き続けて行く場合があるので、積極的に新しいプロジェクトを探したりする必要はあるのですが。


google/iosched

Google IO公式スケジュールアプリ「iosched」のソース。
当然Googleがメインで作っているので、主にコーディング規約的な部分とか、パッケージの切り分けとかの参考に使っています。

最大の難点は、アプリ自体のリリースが去年のGoogleIO直前で、ソース公開はIOのちょっと後ということで、android studio(gradle)のビルド構造のようでそんな感じでもない、なんか不思議なところがあったりとか、そもそも細かい実装方法はそれ、もう1年前の技術だよ、みたいなところがあるので、上に書いたようにコーディング規約的なサンプル以外では、いまのところ参考にしきれないところがあります。

そんなioschedですが、現在2014年版がリリースされましたので、これのソースがもうじき公開されるはずです。それこそ利根川AAのように「その気になれば〜」レベルで公開が遅れることもありますが。

なお、昔はGithubでなくgoogle code上での公開ということもあってか、「github iosched」で検索すると、当時のソースをGithubに持ってきてくれた、第三者のプロジェクトがいっぱい出て来るので注意です。


JakeWharton/u2020

android関連のプラグイン、ライブラリでお馴染みJake Wharton神のandroidプロジェクト。
中身自体は本人の関わりあるライブラリの実装サンプルになっているため、関連のライブラリの実装方法の参考にも使えます。


rejasupotaro/Rebuild

@rejasupotaroさん作成のRebuild.fm非公式アプリ+αのプロジェクトです。
間違いなくrejaspoさんは自分より技術意識の高いデベロッパーなので、積極的に新しい技術を取り入れて作られている部分もありますし、通信周りとか(特にデータダウンロードとか)やUIのひと通りの実装が入っているので非常に参考になります。


と3つほど紹介しましたが、実際のところ、ライブラリと違ってアプリ関係になると、やはり爆速開発よりの「作ってみた」系のプロジェクトが多く、テスト周りも含めてガッチリ作りこんで(なおかつ開発が続けられている)プロジェクトというのは、あまり見かけません。

あ、あと一応Githubの公式クライアントのソースもGithubで公開されているんですが、大体ここで書いてあることは、上のプロジェクトでも見れるし、プルリクもいっぱい放置されていて「うーん」という感じです。

github/android


他にも「コレは参考になりますよ」っていうGithubで公開されているandroidプロジェクトの情報提供お待ちしています。別にBitbucketとかでもいいですよ!
[PR]
by yamacraft | 2014-06-18 22:30