Razl-Dazl

2025-01-07

欲にまみれた年越しをしました。

お昼から人の車でドライブして、秋葉原を徘徊して、夜明けまでカラオケ屋に立てこもりました

ここ数年は家に閉じ籠もって年越ししていたけど、たまにはこういうのも良いなーと思いました(小並感)


話は変わりますが

最近はJetpack Composeを勉強しています

食わず嫌いで避けていましたが、Kotlin Multiplatformでアプリを作るには必須のフレームワークですので少しずつ手をつけてみました

体感的に従来のn倍でモノが作れるようになった気がします、うーんもっと早くやるべきだった・・・

Androidアプリの設計で一番苦労する所といえば、ライフサイクル周りだと思います 基本的にアクティビティの再生成がかかると画面の状態がリセットされてしまうため、色々な方法で補完してやる必要があります

ViewModelを使用することでデータの保持は容易になりますが、それでも意図しない画面表示の不具合が発生してしまい、何だかんだ発狂しがちです(当社比)

Jetpack Composeは宣言型で記述するため、ライフサイクルに起因する不具合が発生しにくくなるので最The高って感じです

また、全てがKotlinで定義できるのも嬉しいところです

従来XMLファイルにレイアウトを記述していたものが、Kotlinのコードだけで完結するようになり、複数のファイルを行ったり来たりする頻度が減ります

ついでにGradleをKotlinで書く方法にも手を出したので、新規で何か作る時はプロジェクト内のファイルの殆どがKotlinになりました 他に手作業で編集するのはAndroidManifest.xmlくらい?

色々手を出してしまい絶賛学習コストが高まっていますが、Kotlin Multiplatformで各OSのアプリを一気に作れるメリットと比べれば微々たるモノです

まだ試していませんがWebアプリもKotlinで作れるようなので、そちらもいつか試してみたい所です

他にも、JVMを使用しないKotlin Nativeというものがあるようで・・・可能性は無限大だなと思ったのが1つ、まだまだ知らない概念が沢山あるなと思ったのがまた1つ・・・

迂闊にKotlin Loverを名乗るとボロが出てしまいますね

やっぱりKotlinが好きなのでKotlinと共に運命を遂げたいと思います(?)

Author@zakuro

Mastodon: 396@vivaldi.net

Category

All posts