来年(2020年)に beta を出すと発表されました。随分頑張っているようです。
まだまだまともなアプリを作れる段階ではないです。ちょっとまともなものを作ろうとするとすぐ辛くなります...
現状どのような Component が用意されているかみるには Jetnews サンプルを見るのがよいです。
Android Studio で [File] - [New] - [Import Sample...] から import できます。
2019年11月23日土曜日
2019年10月8日火曜日
Master of Dagger の正誤表
技術書典7で出した「Master of Dagger」の正誤表です。
誤
Androidにはリソースが足りなくなったときにフレームワークがしばらく使われていないActivityを破棄し、あとでそのActivityが必要になったときに再生成する仕組みがあります。
Activityでデータを持っていると、Activityが破棄されるときに一緒に消えてしまうため、サーバーから再度取得したり、破棄されるときにデータを保存して再生成時にリストアする処理が必要になります。
ViewModelはこの破棄・再生成時のデータ保存処理を楽にしてくれます。ViewModelはActivityの再生成を超えてインスタンスが保持される仕組みになっており、ViewModelでデータを持っておけば破棄・再生成後も以前のデータにアクセスできます。
正
AndroidではConfigurationが変わったときにActivityを破棄して作り直す仕組みがあります。Configurationには画面の向きや言語設定や画面サイズなどがあり、Activityを作り直す仕組みによって新しいConfigurationに最適なレイアウトや文字列リソースで画面が作られます。
しかしActivityで保持していたデータは画面回転などConfigurationの変更によってActivityが再生成されるときに消えてしまいます。そのため再度データを取得したり、Activityが破棄されるときにデータを保存して再生成時にリストアする処理が必要になります。ViewModelはこのデータの引き継ぎ処理を楽にしてくれます。
ViewModelはConfigurationの変更によるActivityの再生成を超えてインスタンスが保持される仕組みになっており、ViewModelにデータを持たせるようにすれば、再生成後のActivityからも以前のデータにアクセスすることができます。
誤
ボイラーブレート
正
ボイラープレート
誤
*2 Dagger 1はリフレクションベースの動的DIフレームワークでした
正
削除 (Dagger 1では一部リフレクション使った機能がありました)
10章 10.1 ViewModel
誤
Androidにはリソースが足りなくなったときにフレームワークがしばらく使われていないActivityを破棄し、あとでそのActivityが必要になったときに再生成する仕組みがあります。
Activityでデータを持っていると、Activityが破棄されるときに一緒に消えてしまうため、サーバーから再度取得したり、破棄されるときにデータを保存して再生成時にリストアする処理が必要になります。
ViewModelはこの破棄・再生成時のデータ保存処理を楽にしてくれます。ViewModelはActivityの再生成を超えてインスタンスが保持される仕組みになっており、ViewModelでデータを持っておけば破棄・再生成後も以前のデータにアクセスできます。
正
AndroidではConfigurationが変わったときにActivityを破棄して作り直す仕組みがあります。Configurationには画面の向きや言語設定や画面サイズなどがあり、Activityを作り直す仕組みによって新しいConfigurationに最適なレイアウトや文字列リソースで画面が作られます。
しかしActivityで保持していたデータは画面回転などConfigurationの変更によってActivityが再生成されるときに消えてしまいます。そのため再度データを取得したり、Activityが破棄されるときにデータを保存して再生成時にリストアする処理が必要になります。ViewModelはこのデータの引き継ぎ処理を楽にしてくれます。
ViewModelはConfigurationの変更によるActivityの再生成を超えてインスタンスが保持される仕組みになっており、ViewModelにデータを持たせるようにすれば、再生成後のActivityからも以前のデータにアクセスすることができます。
13章 13.1 Android で Dagger を使うときの問題点
誤
ボイラーブレート
正
ボイラープレート
2章 2.1 Dagger とは
誤
*2 Dagger 1はリフレクションベースの動的DIフレームワークでした
正
削除 (Dagger 1では一部リフレクション使った機能がありました)
2019年9月5日木曜日
Kotlin メモ : count
https://kotlinlang.org/api/latest/jvm/stdlib/kotlin.text/count.html
大文字数を数えるダメな例
大文字数を数える良い例
大文字数を数えるダメな例
val String.upperCaseCount: Int
get() = filter { it.isUpperCase() }.length
大文字数を数える良い例
val String.upperCaseCount: Int
get() = count { it.isUpperCase() }
登録:
投稿 (Atom)