インフラ屋でもクソアプリを作りたくなる夜があるじゃない!
と、言うことで本日は手元のMac端末でKotlinを触ってみようと思います。
超初級編なので、あまり深い記事は期待しないでください。
とりあえず環境整えて、動かしてみよう! と気軽に取り掛かるきっかけとなることを重視しています。
Kotlinとは?
- 「ことりん」と読むらしい。
- 2011年ごろチェコで生まれたプログラミング言語らしい(意外と年数経ってるんだな)。
- Javaに関するなんやかんや( https://www.nikkei.com/article/DGXZQOGN05CPR0V00C21A4000000/ )があり、エンジニアのJava離れが進んでいた中、「Javaからいい感じに切り替えられる言語ってなんだろうね」というところから注目されたのがKotlinらしい。
- JavaアプリをKotlinに変換できるらしい。
- Javaに比べると「ぬるぽ (NullPointerException のこと。アプリフリーズの原因になりがち。) 」が発生しにくいようになっているらしい。
※多分他にも書くべきことがありそうですけど、そろそろ睡魔が襲ってきたので、開発環境整える作業に入ります。
Mac端末でKotlin開発環境を整えてみる
Kotlin開発環境を整える
- ファイルのダウンロード
- https://developer.android.com/studio?hl=ja にアクセス
- Android Studio Ladybug Feature Dropをダウンロード をクリック。
- android-studio-2024.2.2.13-mac_arm.dmg をダウンロード。1.2GBくらいあるので気長に待つ。
- Android Studioのインストール実施
- ダウンロードしたdmgファイルをダブルクリックし、アプリケーションフォルダにAndroid Studioを放り込む。
- Finder→移動→アプリケーション とクリックし、アプリケーション内の「Android Studio」をダブルクリック
- そのままインストール実施。(カスタムしたい人は適宜実施)
- Android Studio Setup Wizardが起動し、コンポーネントのダウンロードなどが実施される。手元環境だと概ね1.5時間くらいかかったので気長に待つ。
- Android Studioを起動・バージョン確認
- Android Studioを起動し、メニューから Android Studio→About Android Studio で、バージョンを確認。今回だと「Build #AI-242.23726.103.2422.12816248」となっていた。
※お使いの端末次第でパッケージなど変わる可能性があるのでそこは適宜読み替えてください。
Kotlin開発環境を日本語化してみる (日本語化が不要な方はスキップしてください)
- ファイルのダウンロード
- https://plugins.jetbrains.com/plugin/13964-japanese-language-pack------/versions/stable にアクセス
- 先ほど確認したバージョンが「Build #AI-242...」だったので、2024年の242系をダウンロードする。 今回だと「Japanese Language Pack / 日本語言語パック 242.91」をダウンロード。
- ja.242.91.zipをダウンロードしておいた。
- 日本語化実施
- Android Studioを起動。
- Pluginsをクリック
- 歯車マークをクリック
- Install Plugin from disk … をクリック
- 先にダウンロードしたja.242.91.zipを指定して「開く」
- Restart IDE という緑色のボタンが表示され、Android Studioの再起動を促されるので、躊躇せず緑のボタンを押して再起動実施。
- 日本語化された状態で起動してくる。
- Android Studioを起動。
開発したアプリをAndroidStudioで動かしてみる (開発中のテストを実施するようなシチュエーション)
1. AndroidStudioを起動して、「New Project」をクリック。
2. Empty Views Activityを選択して「次へ」をクリック。
3. 下記画面を参考に入力。Androidバージョンは15.0を選択して「完了」をクリック。
4. プロジェクトのインポートなどがしばらく実施されるので待つ。
5. インポートなどが完了し、右下のバーが消えた状態まで待つ。
6. この状態で、「構成の追加」の横にある再生ボタンをクリックして、以下のようなテストアプリが起動することを確認してから、停止ボタンを押してテストアプリを終了させる(Hello World! と表示されることを確認)
7. activity_main.xmlタブをクリックし以下の内容で上書き実施。
<?xml version="1.0" encoding="utf-8"?>
<androidx.constraintlayout.widget.ConstraintLayout
xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
tools:context=".MainActivity">
<TextView
android:id="@+id/countText"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="0"
android:textSize="50sp"
app:layout_constraintBottom_toTopOf="@+id/button"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toTopOf="parent" />
<Button
android:id="@+id/button"
android:layout_width="200dp"
android:layout_height="200dp"
android:text="加算ボタンです"
android:textSize="20sp"
app:layout_constraintTop_toTopOf="parent"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintEnd_toEndOf="parent" />
</androidx.constraintlayout.widget.ConstraintLayout>
8. MainActivity.ktタブをクリックし以下の内容で上書き実施。
package com.example.myapplication
import android.os.Bundle
import android.view.View
import android.widget.Button
import android.widget.TextView
import androidx.appcompat.app.AppCompatActivity
class MainActivity : AppCompatActivity() {
private var count: Int = 0
override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)
setContentView(R.layout.activity_main)
val button = findViewById<Button>(R.id.button)
val countText = findViewById<TextView>(R.id.countText)
button.setOnClickListener {
count+=1
countText.setText(count.toString())
}
}
}
9. 「構成の追加」の横にある再生ボタンをクリックして、以下のようなアプリが起動することを確認。
10. 「加算ボタンです」を5回押すと5カウントされる。
開発したアプリを実機Androidで動かしてみる (リリース前の実機でのテストを実施するようなシチュエーション)
1. ビルドしてapkファイルを作成する
2. apkファイルを実機Androidに送って実行する(先ほどのAndroidStudioでのテストと同様の動きを実機で確認できる)
おわりに
- と、ここまで書いた後でなのですが、「環境整えるのとかめんどいから、もっと楽に試せる方法ないのか?」という方がいらっしゃったら、 https://play.kotlinlang.org/ にて試していただくのが良いかもです。簡単的なコードの挙動確認だけならこれでも充分かなと思います。
- 作ったアプリを実機でも動かしてみたいなぁ と言う方はこの記事を参考になさってください。
- これフラグなのですが、気が向いたらもうちょっと踏み込んだ記事を公開するかもです。
参考URL