Afternoon Log

日々のことや、技術的な備忘録を吐き出していくつもり

夏のKotlin LT祭 参加記

8/22に開催されたLTイベントに行って来ました。
もう1ヶ月ほど前じゃん……。

kotlin.connpass.com

アジェンダ

  1. Kotlin+Spring
  2. "Hello Kotlin"の次におさえたい Kotlinの勘所
  3. "Convert Java File to Kotlin File"の甘い罠
  4. 8 Kotlin Pop Quizzes
  5. 既存プロダクトのKotlin移行でハマったところ
  6. Annotations specific to the Java platform
  7. Kotlin開発をしていて 実際に便利だと感じた事
  8. KotlinJSって正直どうなん
  9. lazyには気をつけよう
  10. apply() 要らなくない?
  11. フルkotlinでMastdonクライアント
  12. Kotlin + Spring for Web Application with Skeleton Builder
  13. applyを使う理由
  14. システムリニューアルと サーバーサイドKotlin


飛び込みLT含めて結構発表があり、やはりKotlinの息吹を感じた:-)
量が多いので全部は載せないけれど、個人的に気に入ったのをいくつか。

"Convert Java File to Kotlin File"の甘い罠

"Convert Java File to Kotlin File"の甘い罠 // Speaker Deck

IntelliJとかAndroid Studioには、Java→Kotlin の変換機構があるけど万能ではないというお話
Javaint, doubleの関係性とは異なるのでAnyになっちゃうとか
変態switch構文の変換に失敗するとか。
そもそもswitchをこんな風に書くこともできるのかって初めて知りました。使わないようにするけど。

8 Kotlin Pop Quizzes

8 Kotlin Pop Quizzes // Speaker Deck

結構知らなかったことばかりでためになりました。
___ は予約後であったり、継承で循環させるとnullになったり、
int127までキャッシュしていたり、
3.5 in (1..3)はキャストされtrueになるなど。

lazyには気をつけよう

idea/2017/08/numa08/夏のKotlin LT祭り - esa-pages.io

lazyによって遅延評価することが出来るのですが、値がキャッシュされて再評価されない。
Androidのライフサイクルを飛び出してアクセスしにいってしまうなど。
とりあえずlateinitの方が良いのでこっちを使いましょうというもの。

applyを使うか使わないか

applyを使うと呼び出し元が不明瞭になったり、
alsoが新しく追加されたからそれでよくない?という意見もあれば、
Kotlin特有のitを使わないことがメリットであるともあります。
個人的にはapply使いたい人ですね。


他にも色々発表があって知見が増えてほっこり。

そうそう、今月末にはサーバーサイドのKotlin本が出るので
VPSでちょろちょろ弄りたいと思います。