ああ、Kotlin Null Safety 対 Java!ゴジラ対モスラのような古典的な対決ですが、都市を破壊する怪獣は少なく、実存的な恐怖がより多くあります...まあ、ヌルです。 ?
Java はダイヤルアップ時代から存在しています。当時は、null によってアプリがクラッシュすることを心配する人はいませんでした。正直に言うと、インターネットによってアプリがクラッシュすることのほうがはるかに一般的だったからです。しかし時代は変わり、
Java の「いつでも何でも null にできる」というアプローチは、5G の世界ではダイヤルアップ モデムと同じくらい歓迎されています。スーパーヒーロー プログラマーの相棒である Kotlin をここに登場させ、驚くべき Null Safety 機能で危機 (そしてあなたの正気) を救いましょう!
NullPointerException は、Java 開発者の生存の悩みの種です。それらは、真夜中に踏む小さなレゴブロックのようなものです。小さいですが、非常に大きな痛みを引き起こす可能性があります。
実際、null 参照を発明したトニー ホア氏は、これを「10 億ドルの間違い」と呼んでいました。 (彼はたくさんのレゴを踏んだと思われます。)
一方、Kotlin は積極的なアプローチをとります。それはレゴを踏まないように履く快適なスリッパのようなものです。 Kotlin の Null Safety を使用すると、コンパイラ自体が警戒心の強い保護者となり、null がコードに侵入して大混乱を引き起こすのを防ぎます。
Kotlin では、? を追加して変数が null になれるかどうかをコンパイラーに明示的に伝える必要があります。型宣言に。例えば:
// Kotlin var name: String? = null // This variable can be null var age: Int = 42 // This variable cannot be null
これは簡単ですか?これは、「注意してください! ここにヌルが潜んでいる可能性があります!」という警告サインのようなものです。 また、null 許容変数を使用して危険なことを実行しようとすると、Kotlin コンパイラーはエラー メッセージを表示して作業を中断します。これは、コードの専属ボディーガードを付けるようなものですが、このボディーガードは文法と構文に非常に優れています。
Java は、その後のバージョンで、Optional のような機能に追いつくことを試みました。それは、TikTokを学ぼうとしているおじいちゃんのような、勇敢な努力です。彼は良い意味で言っていますが、それはまったく同じではありません。 Optional は扱いにくい場合があり、Kotlin の Null Safety と同じレベルのコンパイル時の安全性を提供しません。
// Java import java.util.Optional; public class OptionalExample { public static void main(String[] args) { // Creating an Optional object Optionalname = Optional.of("John Doe"); // Checking if a value is present if (name.isPresent()) { System.out.println("Name is present: " name.get()); } else { System.out.println("Name is absent"); } // Using orElse to provide a default value String defaultName = name.orElse("Unknown"); System.out.println("Name: " defaultName); // Using orElseGet to provide a default value with a supplier String anotherDefaultName = name.orElseGet(() -> "Another Unknown"); System.out.println("Name: " anotherDefaultName); } }
Kotlin の Null Safety はゲームチェンジャーです。これにより、コードがより安全かつ簡潔になり、恐ろしい NullPointerException が発生しにくくなります。したがって、ビデオ ゲームの最後のボスのようにヌルと戦うことにうんざりしている場合は、Kotlin に切り替える時期が来たかもしれません。あなたの正気はあなたに感謝するでしょう。 ?
追伸 まだ迷っているなら、次のことを想像してみてください。別の NullPointerException をデバッグする必要がない世界です。まるで楽園のようですね。 ?
免責事項: 提供されるすべてのリソースの一部はインターネットからのものです。お客様の著作権またはその他の権利および利益の侵害がある場合は、詳細な理由を説明し、著作権または権利および利益の証拠を提出して、電子メール [email protected] に送信してください。 できるだけ早く対応させていただきます。
Copyright© 2022 湘ICP备2022001581号-3