Kotlin のこと

Webエンジニアとして

【Kotlin】KotestのFreeSpecで「No tests found for given includes: [XXXXX](–tests filter)」とエラーが出る場合の原因

KotestをFreeSpecで書いていて「No tests found for given includes: (--tests filter)」という謎のエ...
Webエンジニアとして

【Kotlin】改行コードを含んだ文字列を trimIndent を使って一行で出力させる方法

バリデーションのテスト等で長い文字列を出力する必要に迫られるときがある。 何も考えずに書くと下記のようになるが、エディタの最大文字数を超えたりして可読性も落ちる...
Webエンジニアとして

【Kotlin】やっぱりジェネリクスの関数オーバーロードは出来ない

Kotlinで引数にジェネリクスを取る関数のオーバーロードを実装してみようと思ったときに詰まったのでメモ。 こんな感じで作ってみるとエラーが出る。 fun ma...
Webエンジニアとして

【Kotlin】アノテーション付与でopenにしてくれる「kotlin-spring」の正体を見てみる

kotlin+Spring Bootを使っているとお世話になる「kotlin-spring」が何をやっているかが分からなかったので調査。 早速見てみます。これは...
Webエンジニアとして

【Kotlin】kotlinのwhenの使い方は気をつけよう。when式は引数の値を条件にする

まずはこんな記述があります。 val hogeList: List<String> = emptyList() val isMoge = true val is...
Webエンジニアとして

【Kotlin】Kotlin1.4未満ではifの分岐数によってIntellij IDEAが型推論してくれない場合がある

Kotlin1.3で何故かelse ifを使った場合に型推論出来ない場面に遭遇したのでメモ。 環境 Kotlin: 1.3.72 Kotlinの型推論が効かない...
Webエンジニアとして

【Kotlin】クラス定義とかプライマリコンストラクタとかプロパティ初期化をおさらいする

Kotlinのクラス定義とかプライマリコンストラクタとプロパティの初期化のやり方を整理する。 環境情報 kotlin 1.3.72 Kotlin のクラス定義の...
Webエンジニアとして

Spring Bootのロギング実装は「Commons-Logging + Logback」がデフォルト設定であることを実際に確認してみた

これがSpring Bootのロギング実装って何もしない設定しない場合どうなっているのだろうか・・・? という疑問が湧いたので調べてみた。 Spring Boo...
Webエンジニアとして

【Kotlin】クラス固定値を持つプロパティを作る時は「カスタムゲッター」を使うと良さそう

Kotlinでこんな感じの記述を見つけました。 「プロパティ宣言」と「カスタムゲッター付き宣言」で何が違うのかさっぱり分かりません。 class Moge { ...
Webエンジニアとして

【Kotlin】「高階関数」と「関数リテラル」の記法が難しすぎるので説明してみる

今回の記事の対象者: 以下のKotlinのコードが何やってるか分からない人 fun twice(n: Int, f: (Int) -> Int): Int = ...
なんかのレビュー

【レビュー】「やさしいKotlin入門」はJava未経験からKotlinを始める人向けの良書

Kotlinと言えば切っても切り離せないものがあります。 そう、Javaです。 Kotlinは「Javaをよりよくする」 という思想から生まれた言語であるため、...
Webエンジニアとして

【Kotlin】分かりづらい「セカンダリコンストラクタ」を理解をしてみる

Kotlinの「セカンダリコンストラクタ」を最近ようやく理解出来ました。 「実際にどういった場面で使用するか」を把握する事が、より一層理解を深めます。 今回はリ...
Webエンジニアとして

「ZipInputStream」がWindowsで作成したzipファイルを読み込めない時の対応策

「ZipInputStream」を使ってzipファイル読み込み処理を実装してます。 すると、特定のファイルだけ何故か読み込むことが出来ない現象にぶち当たりました...
Webエンジニアとして

【Kotlin】「Mixing named and positioned arguments is not allowed」の原因ってなんだ?

Kotlinでコードを書いている時に 「Mixing named and positioned arguments is not allowed」 というエラー...
Webエンジニアとして

【Koltin】Paizaの「単語のカウント」をやってみるぞ

FizzBuzzに続いて、「単語のカウント」をKotlinでやってみました。 まだまだKotlinの書き方に慣れず、Rubyが頭から離れませんね。 早く慣れるべ...
タイトルとURLをコピーしました