Kotlinの関数型の読みやすい書き方・可読性向上テクニックを解説!初心者でもスッキリ読める関数の書き方入門
生徒
「Kotlinで関数を書くときに、もっと読みやすくする方法ってありますか?」
先生
「ありますよ。Kotlinには関数型の書き方がたくさんあって、ちょっとした工夫でコードがすごく読みやすくなります。」
生徒
「コードってごちゃごちゃして読みづらくなるので、読みやすくしたいです。どうやって書けばいいか教えてください!」
先生
「それでは、Kotlinの関数型の書き方を、初心者でもわかりやすく読みやすくするコツを一緒に学んでいきましょう!」
1. 関数型のコードとは?まずはイメージを掴もう
関数型のコードとは、関数を使って処理を組み立てていくスタイルの書き方です。Kotlinでは「関数」や「ラムダ式(名前のない関数)」を使って処理を記述できます。
たとえば、数のリストから偶数だけを取り出すには、次のように書きます。
val numbers = listOf(1, 2, 3, 4, 5, 6)
val evens = numbers.filter { it % 2 == 0 }
println(evens)
filterの後にラムダ式{ it % 2 == 0 }を使って、偶数だけを取り出しています。こういった「関数をつなげて書く」スタイルが関数型の特徴です。
2. 可読性(読みやすさ)とは何か?
プログラムの「可読性」とは、あとから見たときに「何をしているのか」がすぐにわかる読みやすさのことです。
読みづらいコードは、エラーの原因になったり、直すのが大変になったりします。読みやすいコードを書くことは、初心者でも大事なスキルなんです。
3. 可読性を上げるテクニック①:関数に名前をつけて分ける
ひとつの関数に色々な処理を詰め込むと、読みにくくなります。そこで、役割ごとに関数を分けて名前をつけると、とても見やすくなります。
fun isEven(n: Int): Boolean {
return n % 2 == 0
}
val numbers = listOf(1, 2, 3, 4)
val evens = numbers.filter(::isEven)
::isEvenは関数参照と呼ばれ、isEvenという関数をそのまま使う書き方です。こうすることで、ラムダの中身が隠れて読みやすくなります。
4. 可読性を上げるテクニック②:変数名で意味を伝える
変数名がaやxだと、何を表しているのかが分かりません。意味のある名前をつけることで、読む人が理解しやすくなります。
val scores = listOf(80, 90, 70, 100)
val passedScores = scores.filter { score -> score >= 80 }
scoreという変数名にすることで、「これは点数なんだな」とすぐにわかります。
5. 可読性を上げるテクニック③:関数をチェーンでつなぐ
Kotlinでは、関数を連続してつなげる「チェーン構文」が使えます。ただし、長くなりすぎないように注意しましょう。
val result = listOf(1, 2, 3, 4, 5, 6)
.filter { it % 2 == 0 }
.map { it * 10 }
このように改行して書くことで、ひと目で処理の流れがわかりやすくなります。
6. 可読性を上げるテクニック④:ラムダ式のパラメータ名に注意
ラムダ式では、引数を1つだけ使うときにitという特別な名前が使えます。ただし、複雑な処理ではitではなく、明示的に名前をつけたほうがわかりやすくなります。
val prices = listOf(100, 200, 300)
val withTax = prices.map { price -> price * 1.1 }
priceという名前にすることで、何の値かが明確になります。
7. 可読性を上げるテクニック⑤:補助関数で処理を分割する
ひとつのラムダ式が長くなった場合は、無理せず別の関数に分けましょう。処理のまとまりごとに分割すれば、コード全体が読みやすくなります。
fun calculateDiscount(price: Int): Double {
return if (price > 100) price * 0.9 else price.toDouble()
}
val prices = listOf(80, 120, 150)
val discounted = prices.map(::calculateDiscount)
こうすることで、処理の意味がはっきりして、あとから見直しやすくなります。
8. 読みやすいKotlin関数を書くための基本ルールまとめ
- 関数に名前をつけて、処理を分ける
- 変数や引数に意味のある名前をつける
- 1行が長くなったら改行して整理する
- ラムダが複雑なら補助関数に分ける
このようなルールを意識することで、関数型の書き方でもスッキリ読みやすくなります。初心者のうちは、「まずは丁寧に書く」ことが大事です。あとから短く書けるようになれば大丈夫なので、無理に一行で書こうとせず、まずは読みやすさを優先してみてください。