#17-20180520-20180526

今回はKotlinネタが多めです。日本ではそこまで話題になっていませんが、RedditはGDPRの話で持ちきりでした。

loading share widgets...

ChromiumのNetworkライブラリ:Cronet

https://developer.android.com/guide/topics/connectivity/cronet/

あまり話題になっていなかったようですが、なぜか Android Developers に足されていました。QUIC もサポートされているようです。

Comments

YouTubeとかはこれで通信してるんですね。Google製のネットワークライブラリというとVolleyを思い出してしまいますが、さて 🤔

Android Pie の Digital Wellbeing(ベータ版) にも Cronet が利用されていました。
どうもGoogle謹製はこのライブラリを使っていく気がしますね。。。

Kotlinを六ヶ月間使ってきてのあれやこれや

http://blog.karumi.com/kotlin-android-development-6-months-into-it/

whenがexhaustiveかどうかのチェックをIDEがしてくれないときの対処法とか、いろいろ役に立ちそうなことが書いてあります

Comments

1番目の exhaustive は面白い例ですね。一方で、2番目の例はちょっとやり過ぎかなと思います。自分だったら Int だけをフィールドに持つ StringResId クラスを作る方を選びそうです。

Kotlinのcoroutine channelを自分で実装する話

https://blog.pronghorn.tech/optimizing-suspending-functions-in-kotlin/

Kotlinのchannel相当のものを実装して最適化する話です。末尾呼び出し最適化をしてメモリ消費量を少なくする方法やスケジューラを自作してオーバーヘッドを減らす方法などが解説されています。Kotlinが一部のケースで末尾呼び出し最適化をしてくれないケースがあるという話は知らなかったので勉強になりました。

もしかしたら継続が分かってないとちょっと分かりにくいかもしれません。

MV* の「つなぎ」に RxJava を使うのをやめたい

https://qiita.com/amay077/items/d4629f9d20ba36a1347e

RxJava使わずとも、Kotlinなら言語機能として提供されているCoroutineでなんとかなってしまう場合も多いんじゃないか?という内容

Comments

個人的にはRxJavaはもうフレームワーク的な立ち位置にあるので、これなしで書くのは考えられないですね…

ただ、学習のハードルが高いのは同意できますし、単純に非同期処理のために使ってるのならKotlin Coroutineを採用するのもありかなー、とは思います。

気持ちは分からなくはないですが、Kotlin Coroutineも十分複雑(async/await や channel だけの使用ならそうでもないかも)という印象なので、どっちもどっちという気もします。

ちなみに pub/sub だけなら RxRelay でいいんじゃないでしょうか。

GDPR対策でユーザから同意を得るためのSDKをGoogle(AdMob)がリリース

Comments

できればもうちょっと早めにリリースしてほしかったですね…

雨後の竹の子のように現れたGDPR対策ライブラリが軒並み不要に……

©2019 — Android Dagashi