やめた方が良いコーディング・設計、アンチパターン
https://qiita.com/peutes/items/ad046baa2428b522a133
に、
「不要な再帰処理」
という項目があった。
再起処理の利点と課題を整理する。
再起処理の利点
論理が簡単に記述できる。
自分で自分を呼んでいて、記述が短くできることがある。
試験で、同じ処理を何度も呼ぶので耐久試験は実施したことになる。
再起処理の課題
末尾再帰でないと終わるかどうかの判定が難しい。
呼び出しにstackを使うとstack overflowになりやすい。
呼び出しに時間がかかるなら、処理全体に時間がかかる。
呼び出しが同じ処理に再入するなら、再入可能な設計にしていないといけない。
気がついたことを順次追記します。
参考資料
【Kotlin】トランポリンで再帰を末尾再帰にする
https://qiita.com/wrongwrong/items/8dd52fc53bdb8ba52f23