タイトルどおりだよ!

画面内のオブジェクトをメンバ変数で定義する時 lateinitがめっちゃ便利だって話しです。

ActivityクラスやFragmentクラス内だと、複数のコンポーネントをいろんなタイミングで参照します。

なので基本、コンポーネント系はメンバ変数に格納しているのですが
Kotlinだとnullを許容するかどうかを厳密にする必要があるため、

private var AButton :Button

のように書くことができません。
とはいえ、この段階でコンストラクタも使えないため

private var AButton: Button? = null

と、もういっそ 一旦nullを入れたくなります。
これではKotlin的に本末転倒。

そこで便利なのがlateinitでした。
notnullな変数でも、初期化なしで宣言が出来る修飾子です。

private lateinit var AButton: Button

こう書ける。

自分の場合は、onCreateで必ずコンポーネントを定義するので
nullは許容したいわけじゃない、でもタイミングは今じゃない って時にとてもよさげ。