Kotlinを触ってみる その2

 昨日は開発環境もない、Kotlinも触ったことがない状態から、KotlinでコンソールにHelloWorldを出力しました。

 

今日はKotlinとはなんなのか、を調べたいと思います。

 

早速ChatGPTに質問
「Kotlinとはなんですか?」

以下回答

-------------------------------------------------------

Kotlinは、JetBrainsによって開発されたプログラミング言語で、特にAndroidアプリ開発で広く使用されています。以下の特徴があります:

シンプルな説明

  • 静的型付けのモダンな言語
  • Java仮想マシン (JVM) 上で動作する
  • Android公式言語の一つ(2017年にGoogleが採用)

詳細な説明

  1. Java互換性

    • Javaと完全に互換性があり、既存のJavaコードと一緒に使用できます。
    • JavaからKotlinコードを呼び出したり、その逆も可能です。
  2. 簡潔さ

    • 冗長なコードを減らすよう設計されており、開発効率が向上します。
    • 例えば、getterã‚„setter、nullチェックなどが簡単に記述できます。
  3. 安全性

    • Null安全の仕組みが組み込まれており、NullPointerExceptionのリスクを軽減します。
  4. モダンな機能

    • ラムダ式、拡張関数、データクラス、コルーチン(非同期処理)など、モダンなプログラミング要素を多数サポートしています。
  5. クロスプラットフォーム開発

    • Kotlin Multiplatformを使うことで、iOSã‚„Webなどのアプリケーションも同じ言語で開発可能。

Kotlinは特に、Androidアプリ開発を始めたい人やモダンな開発環境を求める開発者にとって魅力的な選択肢です。興味があれば、具体的なサンプルコードもお見せできます!

-------------------------------------------------------

 

とのこと。

Javaと互換性があるということは、既存のJavaアプリからKotlinを導入しやすそうですね。

簡潔さに関しては、この後Kotlinを学んでいくうえで実感できるかもしれません。私としてはしっかりプログラミングしたことがあるのはPHPと古いバージョンの.NET系なので、そこと比較できるとより腑に落ちるかと思います。

Null安全ってよく聞くけどあんまりわかってなかったので調べます。

null安全でない言語は、もはやレガシー言語だ #Python - Qiita


なるほど、nullが入るかどうかをコーディング時に明記して、なるべくエラーを実行時ではなくコンパイル時に排除できるようにしてくれるんですね。NullPointerExceptionが発生しずらくなりそうで素晴らしいですね。

モダンな機能。。ほぼわからないですね。今度学習します。

クロスプラットフォーム開発はよくありますね。XamarinとかReactNativeみたいなイメージ?

学習してみて、さわりは理解しました。Javaと親和性が非常に高い静的型付け言語ですね。

 

ちょっとまた触りたくなったので、コーディングに移ります。

IntelliJ Ideaが30日しか使えないようだったので、VSCodeで開発できるようにYouTubeでkinoコーディングさんの動画を見ながら環境構築を改めてします。

Java23をアンインストールして、17をインストールします。さらに、Kotolinもインストールします。バージョンは2.1。

VSCodeで実行できるように、動画内にあったVSCodeのExtensionも入れていきます。

動画はこの回まで見て、実行です。

www.youtube.com

 

VSCodeでのKotlin実行

できた!

 

やっぱりプログラミングは動くと楽しいですね~

明日以降はこの動画の続きをちょっと見ていきたいと思います。

楽しい。