14
15

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 3 years have passed since last update.

第二のドワンゴAdvent Calendar 2019

Day 5

Androidを開発する上で参考にしているもの

Last updated at Posted at 2019-12-04

この記事は第二のドワンゴ Advent Calendar 2019の5日目の記事です。

ドワンゴではN予備校Androidアプリを開発しているのですが、その中で実装で困ったときに参照している資料や、新しい技術についていくための情報収集などをまとめたいと思います。

Androidを開発する上で参考にしているもの

公式アプリのソースコード

Androidの有名なカンファレンスとしてAndroid Dev SummitDroidKaigiなどがありますが、そのイベントで作成されているAndroidアプリのコードがとても参考になります。

Android Dev Summitアプリのソースコード
GitHub google/iosched

DroidKaigiアプリのソースコード
GitHub DroidKaigi/conference-app-2019

Android Dev Summitは世界で最も大きなAndroid開発者のイベントですし、DroidKaigiも国内最大級のイベントなので、そこで使用されるAndroidアプリはとても素晴らしいものであるはず!と信じています。
(実際にコミット数も多く、コミッターにも著名な方が多いですし。)

使用しているライブラリやその使い方などを参考にしたり、実装で困ったらコード検索をして拝借したりしています。

ちなみに最近だと、xmlのImageViewのcontentDescriptionで何を指定するか悩んで調べたら、@nullで逃げられることがわかったの良かったです。

<ImageView
    android:id="@+id/reserved_icon"
    android:contentDescription="@null"

参照:https://github.com/google/iosched/blob/89df01ebc19d9a46495baac4690c2ebfa74946dc/mobile/src/main/res/layout/item_feed_session.xml#L58

Google Codelabs

全くの新しい技術を触るときには、Google Codelabにあるコースを実際にやってみて、その使い方や利用背景を学んでいます。

Androidに関連するあらゆる要素についてのコースが用意されていて、内容は英語ですが説明が丁寧で情報も最新に即しているので、教材としてはとても素晴らしいです。

具体的には、以下のようなコースが用意されています。

KotlinでAndroidアプリを作る入門コース

Android StudioでAndroidのアプリを立ち上げるところから、Layoutの組み方、Navigationによる画面遷移、ViewModelによるデータの取り扱い、Room DBにデータを格納する方法など、その内容はAndroidの基本を網羅しています。
Android Kotlin Fundamentals Course

Androidの応用的な内容を扱うコース

Androidアプリにおける通知やアニメーションの実装、地図の扱い、テストを書く、ログインを実装するなど、応用的な内容を学習します。
ここまで完璧にできていれば、Android開発者として就職には困らなさそう。
Advanced Android in Kotlin

Jetpack Composeを一足先に体験するコース

おそらく来年にはリリースされるであろうJetpack Composeの基本を学ぶことができます。
AndroidにおけるViewの作成が一気に変わっていきそうです。
Jetpack Compose Basics

その他多数

Using Dagger in your Android app
Android Data Binding
Jetpack Navigation
Using Kotlin Coroutines in your Android App
Taking Advantage of Kotlin

RxMarbles

N予備校Androidアプリでは、非同期処理にRxJavaを使用しており、そのイメージのためにRxMarblesをよく参照しています。

スクリーンショット 2019-12-04 18.19.15.png

ReactiveXのドキュメントにも説明は色々と書かれているのですが、RxMarblesのほうが自分でMarbleを動かせて直感的にわかりやすいので、困ったときには参照しています。

Androidテスト全書

Androidの技術も変化が激しいのでなかなか書籍での学習は難しく感じるのですが、Androidテスト全書は断片的に散らばっているテストの知見を体系的にまとめてくれていたので、とても参考になりました。

単体テスト、統合テスト、UIテストそれぞれの実行のやり方や、テストライブラリの選定基準、CIへの組み込みと運用まで書かれていて、開発の参考にさせていただきました。

project005_ogimage.jpg

また、Android テスト全書が書かれたPEAKSには、他にもクラウドファウンディングで需要が認められた書籍が何冊かあるので、Androidに関連が高いものについては参照していこうかなと思います。

Android Dagashi

本来は、色々なメディアの記事を見るべきかと思いますが、重要な情報はAndroid Dagashiに流れてくるので、そこでリリース情報や技術トレンドなどを見ています。

Kotlinのリリース内容や、Android Jetpackまわりのアップデート内容、Deprecatedになるライブラリ情報や今後のAndroidに関する記事などが紹介されているので、とりあえずここを追えていれば問題ないと思います。


また新しいものが増えたら、随時更新していきます。

14
15
1

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
14
15

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?