第64回Kotlin dojoを開催した

今週は第64回を開催しました!

引き続きKotlin Hands-onをすすめています。

 

前回の様子はコチラ↓

kdnakt.hatenablog.com

 

 

[第64回の様子]

2021/5/19に第64回を開催した。

 

今週は久しぶりのメンバーも来てくれて、参加メンバーは自分をいれて5名だった。

自分は今週もナビゲータ役で参加。

 

勉強会本編の内容としては、Introduction to Coroutines and Channelsハンズオンのラスト、第9章Testing coroutinesを最後まで進めた。

その後何をするか軽く話し合ったところ、Kotlin/Nativeを扱うIntroduction to Kotlin/Nativeハンズオンにチャレンジすることに。今週は第1章から第2章までを進めた。

 

[学んだことや疑問点]

Request4SuspendKtTest.kt
Request5ConcurrentKtTest.kt
Request6ProgressKtTest.kt
Request7ChannelsKtTest.kt
    • 先週学んだ通りに、runBlockingrunBlockingTestに変更し、System.currentTimeMillis()をTestCoroutineScopeのcurrentTimeに変更し、テストクラスに@OptIn(ExperimentalCoroutinesApi::class)アノテーションを付与する。これだけ。
    • 実際に4秒数百ミリ秒かかっていたテストが、数百ミリ秒で完了するようになったのを目の当たりにして感激。すごいなー
    • 仮想時間に関するより詳細な情報はここにまとまっている
  • Introduction to Kotlin/Native: 1. A native HTTP Client

kdnakt.hatenablog.com

    • このハンズオンではシンプルなHTTP GETリクエストを実行するクライアントを実装する
  • Introduction to Kotlin/Native: 2. Creating a Kotlin/Native project
    • Kotlin/Nativeのプロジェクト作成方法について学ぶ
    • 任意のテキストエディタでも問題ないが、IntelliJ IDEAを使ってプロジェクトを作成する
    • ハンズオンの内容が古いらしく、自分の使っているバージョンはIntelliJ IDEA 2020.2.3 (Community Edition)だったが、プロジェクト作成画面が異なっていた
    • こちらがハンズオンで掲載されていた画面

f:id:kidani_a:20210520061458p:plain

    • こちらが自分のプロジェクト作成画面

f:id:kidani_a:20210520061420p:plain

    • ハンズオンのリポジトリを見るとmacOSに限定したGradleの設定ファイルになっており、Windowsユーザーの参加者もいたことから、新規でプロジェクトを作り直すことに。
    • 今週はプロジェクトを作ったところでおしまい

 

[まとめ]

モブプログラミング・スタイルで、Introduction to Coroutines and ChannelsハンズオンとIntroduction to Kotlin/Nativeハンズオンを進めた。

半年ぶりにKotlin/Nativeやっていくぞ!

 

今週のプルリクエストはこちら。

github.com