Java と Kotlin の組み合わせで Android アプリ自作ガイド

はじめに

Android アプリ開発といえば、かつては Java が主流でした。しかし、近年は Kotlin が公式に推奨される言語となり、新規開発の多くが Kotlin で行われています。
とはいえ、既存のライブラリやコード資産には Java が多く、「Java と Kotlin を組み合わせて開発する」 というケースは非常に一般的です。

本記事では、Java × Kotlin のハイブリッド開発手法を整理し、中級者向けにアプリ自作の実践的なポイントを紹介します。


Java と Kotlin の違いを整理

Java の特徴

  • 歴史が長く、ライブラリ・学習資料が豊富
  • Android API の多くが Java ベースで提供
  • コードがやや冗長になりがち

Kotlin の特徴

  • Google が公式に推奨する言語
  • コードが簡潔でバグが減りやすい
  • Java と完全な相互運用性あり

両方を使うメリット

  • 既存の Java 資産を活かせる
  • 新規開発部分は Kotlin でシンプルに記述
  • 徐々に Kotlin へ移行可能

開発環境の準備

1. Android Studio のインストール

  • 公式サイトから Android Studio をダウンロード
  • SDK とエミュレータを合わせてセットアップ

2. 新規プロジェクトの作成

  • 言語選択で Kotlin を選ぶのが推奨
  • ただし後から Java クラスも追加可能

3. Java クラスと Kotlin クラスの混在

  • app/java/ ディレクトリに両方のソースを配置できる
  • Android Studio が自動でビルド時にコンパイルしてくれる

Java から Kotlin を呼び出す

Kotlin で書かれたクラスを Java から利用するのは簡単です。

// Kotlin クラス
class Greeting {
    fun hello(name: String): String {
        return "こんにちは、$name さん"
    }
}
// Java クラス
public class MainActivity extends AppCompatActivity {
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        Greeting g = new Greeting();
        String msg = g.hello("太郎");
        Log.d("TEST", msg);
    }
}

Kotlin から Java を呼び出す

逆に、既存の Java クラスを Kotlin から呼び出すこともできます。

// Java クラス
public class Calculator {
    public int add(int a, int b) {
        return a + b;
    }
}
// Kotlin クラス
class Sample {
    fun execute() {
        val calc = Calculator()
        val result = calc.add(3, 5)
        println("計算結果: $result")
    }
}

Kotlin からは Java をシームレスに呼び出せるため、既存コードの活用が容易です。


実践例:Java のライブラリを Kotlin アプリで利用する

例えば、既存の JSON パーサー (Gson) は Java で実装されていますが、Kotlin から簡単に利用可能です。

import com.google.gson.Gson

data class User(val name: String, val age: Int)

fun main() {
    val json = """{"name":"Hanako","age":25}"""
    val user = Gson().fromJson(json, User::class.java)
    println(user)
}

このように、Kotlin プロジェクトで Java 製ライブラリを直接活用できます。


Java → Kotlin 移行のコツ

Android Studio には Java → Kotlin 自動変換機能 が用意されています。

  • [Code] → [Convert Java File to Kotlin File] を実行
  • 完璧ではないが、70〜80% は自動変換可能
  • 大規模プロジェクトを段階的に Kotlin 化できる

まとめ

  • Android 開発は Kotlin が主流だが、Java の資産も重要
  • Java と Kotlin は同一プロジェクトで共存可能
  • 既存の Java コードを活かしつつ、Kotlin のシンプルさを取り入れるのがおすすめ
  • 自作アプリでも 「既存資産は Java、UI ロジックは Kotlin」 といった分担が効率的

これから Android アプリを作るなら、Kotlin をメインにしつつ、Java も併用して柔軟に開発を進めましょう。

タイトルとURLをコピーしました