7.9K Views
March 21, 22
スライド概要
LT会で必要にタイマーが必要になったので作ってみようと、Kotlinに入門し、Compose for Desktopを利用してタイマーを作りました。これが一番早いと思います(?)
↓このイベントで発表しました!
【LT】第5回バーチャル学生LT&にこのこLT会_4 in バーチャル名工大 - connpass
https://student-lt.connpass.com/event/240230/
Kotlinに入門して、 タイマーを作ってみた話 ~ Compose for Desktop ~
はじめに LT会! → タイマーが必要 → タイマーを作りたい!
ところで、 Kotlinって知ってる?
Kotlin (ことりん) • JVM言語 • Better Java JetBrains開発! (ウクライナ/ロシア関連のニュースとか)
Better Java Kotlinとは JVM言語 ≒ Javaが入ってる環境なら動く言語 Java言語 → JVM言語(中間言語) → 実行
JVM言語、他には • Scala: サーバーサイド など (Better Java) • Clojure: LISP系言語
Kotlinはどこで使われてる? Androidが今の所メインっぽい (Android開発の公式言語にGoogleが指定) 「Android ロボットは、Google が作成および提供している作品から複製または 変更したものであり、クリエイティブ・コモンズ表示 3.0 ライセンスに記載された条件に従って使用しています。」
今まで、どういう開発してきたの? Java, JavaScript, Python, Luaぐらい…orz RustとかC++とか触らないとですね… Java → Kotlin 楽らしい?
では Kotlin 入門しよう!
Kotlin入門 (自分の場合) 「JavaプログラマのためのKotlin入門」 Qiita | @koher(Qoncept, Inc.) 1. Javaとほぼ同じところ 2. 新しい考え方が必要でつまづきがちなところ 3. Kotlinならではの便利なこと
Kotlin入門 – Web とほほのKotlin入門 https://www.tohoho-web.com/ex/kotlin.html Kotlin Docs (公式) https://kotlinlang.org/docs/basic-syntax.html
Kotlin入門 – 本 Kotlinプログラミング やさしいKotlin入門
Kotlin入門 – 3日かけて入門記事を読んだ 「JavaプログラマのためのKotlin入門」シリーズ 結構、時間がかかった 「Kotlinプログラミング」(SE書籍) 時間が厳しかった → 記事を読んだ
まずは、Java (JDK)を入れよう JDK: Java Development Kit Javaの開発環境, ソフトウェアとかの集合 WinGetを使って、Javaを入れると良い Eclipse Adoptium製 JDK winget install EclipseAdoptium.Temurin.17
とりあえずIDEA InteliJを入れた • Kotlin開発元 JetBrains公式 IDE 公式のため、Kotlin開発に最適 • Android Studioのもと
とりあえず、Kotlinを動かした
fun main(args: Array<String>) {
println("Hello World!")
}
細かい文法の話は時間の都合で省略
そういえば、 GUIソフトを作りたいんだった 目的はタイマーを作るんだったね
Compose for Desktop - JetBrains Compose Multiplatform Framework • Desktop → Windows, macOS, Linux • Web • Android
Compose for Desktop入門 まだ出たばっかり 公式 Getting Started を読むのが良い 注意点 Java17未対応? → Java11用でセットアップ
Compose for Desktop入門 最新版を確認して導入 • Composeの最新版: JetBrains/compose-jb | GitHub • Kotlinの最新版: Release details Kotlin releases | Kotlin 今回の環境 • Kotlin: 1.6.10 • Jetpack-Compose: 1.1.1
で、どんな感じのものができたの? LT-Timer 5分LTタイマー 4分で1回、 5分で2回 ベルが鳴る
困ったこと 1 Compose for Desktop の説明が少ない → AndoirdのGUIフレームワーク そのサイトを見ると良い 「Compose の思想 | Jetpack Compose | Android Developers」 (Android公式ドキュメント)
困ったこと 2 Javaのライブラリを そこそこ使わないといけない? JavaのTimer, TimerTaskとかで詰まった → 調べたりないだけかもしれない というか自分がKotlinに慣れていないのに、Javaを呼び出ししようとしているのが悪い()
これから • IDEA IntelliJを使いこなしたい ショートカットやら設定 • Android App製作? • Minecraft Moddingもあり
まとめ Kotlinはいいぞ Compose for Desktopは楽しいぞ • まだ発展途中 • かなり楽に書ける • Webなんて嫌だーーー!!
まとめ たった1週間でも、 新しいプログラミング言語入門して プログラム作れる!