android: Compose UIのCodelab
2024/10/03
Android の Compose UI というかアプリアーキテクチャを勉強しようとドキュメントを読んでいる。
前回の続きをやろうと読んでいたのだが、しばしば知識がなくて止まってしまう。
UI state のところまで進んだのだが LiveData
とか StateFlow
とか言われてもわからんし、データホルダーもなんだかわからん。
「LiveData
についてはこちらを」と紹介されていたのが Codelab だった。
チュートリアルというか、コードによる説明コーナーというか、いろいろ親切だ。
そして Compose UI の Codelab もあった。
テンプレートを見ながら勉強しようとしていたが、さすがにわからない言葉だらけだと飽きてきた。
Codelab でも Androidアーキテクチャの話をしながら進めるようなのでこちらでやっていこう。
しかしまあ、いろいろ充実してますな。
どれから進めても、あれがわからんこれがわからんになりそうだが、あきらめてやっていこう。
けっこう手本がないかわかりづらい分野だったので、こういう手厚いのがあると安心してしまう。
そう、参考書を買っただけで勉強ができる気分になってしまうのと同じように。。。
こういうコースがあります。
ただやりたいのは、Android で BLE のアプリを作って動かしてみたい、なのでそこそこにしておこう。
やった Codelab
- 10/03: Kotlin によるプログラミングの概要
- かなりスキップした
Unit
とか知らんかったよ。void
じゃないんだ。- 引数? 仮引数? みたいな悩み方はしなくて良い(Quiz)
- 仮引数=parameter、引数(実引数)=argument
- 関数に実際に与えられた引数を関数内では仮にこの変数名で使います、ということで仮引数なんだろう
- C++の
&
だとエイリアスになるが、それでも名前が違うしやっぱり仮引数なんかな、とどうでもよいことを考えた
?
は nullable- JavaScript/TypeScript は
?.
の形でoptional chainingがあるが?
単独もあるんだっけ? - こういう記号系はネットでの検索がつらいが、Chatなんとかさんだと説明してくれるので助かる
- Swift, C# は
型名?
タイプで、TypeScript だと.?
以外に変数名?:型
の形 - nullable のことを “optional” とか “option” などと表現するらしい
- nullable のイメージをもっと広げて「値があるかもしれないしないかもしれない」ととらえて optional のような言葉を使うそうだ
- Swift, C# は
- JavaScript/TypeScript は
- 10/03: Setup Android Studio
- ほとんどスキップした
- いきなり Quiz だけやるのはダメみたい
- 入口だけ英語しかないけど、それぞれは日本語だった
- ちょっとだけ Compose の書き方が書いてある
- ほとんどスキップした
- 10/03: 基本的なレイアウトを作成する
@Composable
な関数の命名規則はけっこう厳しい- 名詞、形容詞+名詞は OK
- 大文字のキャメル
- 「後置ラムダに名前付きパラメータを使用するのは非常に面倒です」って、なにがだ?
content=
と()
が減っただけだが、けっこう嫌なんだろうか。- そういえば最近の言語はいろいろ省略することが多いけどなんでだろう。
- Chatなんとかさんに聞いてみた
- 開発効率もあるが、可読性が上がったり、それによって実装者がより集中できるようになるとかなんとか
- あまり使わない書き方は覚えなくてよい、と思っておけば良いのかな。
- Chatなんとかさんに聞いてみた
Arrangement
のSpaceAround
が画像を見ても分からんかったが説明を見ると分かった。- 文章は分からんかったが
#1##2##3#
という表現でわかった
- 文章は分からんかったが
padding
のtop
,bottom
はわかるがstart
,end
はわかりにくいのではないか。- 言語によって左から右に進んだり、右から左に進んだりするからとか?