Androidアーキテクチャコンポーネント(AAC)

投稿日:  更新日:

Androidアーキテクチャコンポーネント(AAC)は「堅牢でテストとメンテナンスが簡単なアプリの設計を支援する」とドキュメントで説明されています。

有効そうだけど、実態がよくわからないので、いろいろ調べて理解した内容をまとめました。

続きを読む

Activityのライフサイクル

投稿日:  更新日:

Activityはライフサイクルを持っています。ライフサイクルは「画面の作成~表示~破棄」という一連の流れのことです。

アプリケーションはこの流れに沿ってプログラミングします。流れに逆らったプログラムは作れません。

アプリケーションの開発者にとって、ライフサイクルの理解は最重要です。

Activityのライフサイクルについてまとめます。

続きを読む

Kotlin:SAM変換

投稿日:  更新日:

Androidのアプリを作成しているとSAM変換が頻繁に登場します。

プログラムが簡素に記述できることから、プログラマーに好評なようです。

Kotlinが関数を第一級オブジェクトとして扱える恩恵です。

しかし、私はSAM変換に出合うと、いつもプログラムの論理が把握できなくて戸惑います。なので、苦手です。あまり好きではありません。

苦手を克服するために、もっとSAM変換の理解を深めたいと思い、まとめてみました。

続きを読む

Kotlin:クロージャ(Closure)

投稿日:  更新日:

クロージャ(Closure)は新しい概念ではなく、関数型プログラミングに古くから存在していました。

手続き型やオブジェクト指向プログラミングにも、だいぶ前から採用が進んでいます。

Kotlinもクロージャが使える言語の1つです。

続きを読む

Kotlin:関数オブジェクト

投稿日:  更新日:

Kotlinは関数を変数に代入したり、引数で受け渡したりできます。

関数を第一級オブジェクトで扱えるためです。

これにより、関数を使った処理の委譲が容易になりました。ArrayOf#forEach( )がその典型的な例です。

以上のような操作で必要となる「関数オブジェクト」について、まとめます。

続きを読む