Kotlin:
デバッガーの使い方
方法:
以下はIntelliJ IDEAを使ったKotlinでのデバッグの一端です - IDEのシャーロック・ホームズ:
fun main() {
val mysteryNumber = 42
var guess = 0
while (guess != mysteryNumber) {
println("数を当ててください: ")
guess = readLine()?.toIntOrNull() ?: continue // 不正な入力を無視
// 'guess'の動きを観察するためにここにブレークポイントを設定する
if (guess < mysteryNumber) {
println("低すぎます!")
} else if (guess > mysteryNumber) {
println("高すぎます!")
}
}
println("当たり!謎の数は$mysteryNumberでした")
}
デバッガーの出力:
数を当ててください:
10
低すぎます!
数を当ててください:
50
高すぎます!
数を当ててください:
42
当たり!謎の数は42でした
深堀り
デバッガーは50年代からゲームに参加しています。当時はかなり原始的で、デバッグはソフトウェアよりもハードウェアについてのものであることが多かったです。現在では、IntelliJ IDEAのようなデバッガーにより、ブレークポイントを設定し、コードを一行ずつ進め、変数の状態を自由に調べることができます。
IntelliJのデバッガーはKotlinにとって非常に便利ですが、それだけが選択肢ではありません。Android開発のためのLogcatや、最小限主義者向けのコマンドラインツールであるjdbなど、様々な代替手段があります。ここでの裏側の魔法は主にJVMツールインターフェイス(JVMTI)に関するもので、これによりデバッガーはJava仮想マシンと対話し、Kotlin開発者をループ内に保っています。
参照
- IntelliJ IDEAデバッガーのドキュメント: https://jetbrains.com/idea/