JJUG CCC 2023 Fall で発表された内容です。 Java21ではパターンマッチがswitch式で正式に使えるようになります。 https://openjdk.org/jeps/441 これらの変更により型の検査がより強化されて、より実行時例外がすくなくコンパイル時に多くの実装…

I’ve been programming in Java for a long, long time. I’ve learned what it takes to write and maintain big (as in million-lines of code) software in Java and I’ve witnessed industry-wide struggle to avoid and contain the dreaded NullPointerException (NPE) that seemed to plague any reasonably-sized Java codebase. This realization of the danger of the null reference had dawned on the industry way bef
Note: This post is part of a series on D8 and R8, Android’s new dexer and optimizer, respectively. For an intro to D8 read “Android’s Java 8 support”. This post introduces R8. The first three posts (1, 2, 3) in this series explored D8. Among its core responsibility of converting Java bytecode to Dalvik bytecode, it desugars new Java language features and works around vendor- and version-specific b
音声プラットフォームのアーキテクチャ変遷から学ぶ、クラウドネイティブなバッチ処理 (20250422_CNDS2025_Batch_Architecture)
先日勤務先で開発合宿に行きました。プロダクトのKotlin化が途中だったので、仕上げてきました。 スライドでは省略した、ハマった点の詳細を共有します。 確認できるサンプルを用意してあります。サンプルの環境は次の通りです。 Android Studio: 2.3.3 Support Library: 25.3.1 Kotlin: 1.1.3-2 Mockito: 2.8.47 Robolectric: 3.3.2 github.com ハマった点 Non-NullにNullが入る Abstractクラスのテストで変更が反映されない @Jvmアノテーションを消せない Non-NullにNullが入る JavaからKotlinへは、Android Studioの機能でファイル単位で変換できます。 Javaで定義されているメソッドを呼び出す際に、次のエラーが起きてアプリがクラッシュすることがありま
どうもどうも。 6/15にCyberAgentで開催したCA.kt #1で発表しました。 様子 privateだとkotlinからしか使われないからbytecodeがpublicと違うのか #ca_kt— すたぜろ (@STAR_ZERO) 2017年6月15日 デフォルト引数がJavaに変換されたとき面白い!元の引数に加えてどこにどの引数があるかを表すビットをさらに取って論理積を取って場所を判断するのか!各ビットが各引数の位置というわけね #ca_kt— Fumihiko Shiroyama (@fushiroyama) 2017年6月15日 How Kotlin implements features Java doesn’t have speakerdeck.com 今回は以下の3つに関して話しました。 NonNull/Nullable Extension Function Name
Kotlin が Android の公式言語になることが Goole I/O 2017 で発表されました。これから Kotlin を始める Java プログラマが多くなると思うので、本投稿では Java プログラマが Kotlin でつまづきがちなところについて説明します。 本投稿は単独で理解できるように書いていますが、↓の連載の第二弾です。 Kotlin の基礎的な構文は理解していることを前提としているので、 Kotlin の基礎については "Javaとほぼ同じところ" を御覧下さい。 Javaとほぼ同じところ 新しい考え方が必要でつまづきがちなところ ←この投稿で扱う内容 Kotlinならではの便利なこと 新しい考え方が必要でつまづきがちなところ 新しい概念を学ぶときには、何ができるのかだけでなく、どうしてそうなっているのかがわからないとそれをうまく使いこなすことができません。 本節で
Kotlin が Android の公式言語になることが Goole I/O 2017 で発表されました。 Java プログラマが Kotlin を始めることがこれから多くなると思うので、 Kotlin をスムーズに始められるように次の 3 点についてまとめます。 Javaとほぼ同じところ 新しい考え方が必要でつまづきがちなところ Kotlinならではの便利なこと すべてを一つの投稿にすると長くなるので連載形式とし、本投稿では最初の「Javaと同じところ」について説明します。 Kotlinって何? 本題の前に、 Kotlin について簡単に説明します。 まずは↓の Android のコードを見て下さい。これは Android Studio が生成するテンプレートの Kotlin 版です。 Android アプリ開発者であれば、初見でも概ね何をしているのかわかると思います。 class Ma
An Optional’s place in KotlinWith nullability being a first-class citizen in Kotlin’s type system, is there any need for an Optional type? With nullability being a first-class citizen in Kotlin’s type system, the need for an Optional type seems all but diminished. Just because you can explicitly express nullability, however, does not mean that null is always allowed. For example, Retrofit provides
Square Open Source ♥s KotlinImproving the developer experience of Square’s libraries in Kotlin. Consumers of Square’s open source libraries may remember our “Seven Days of Open Source” prior to Google I/O 2013. We released major versions of some of our projects in the days leading up to the event. This culminated in us also having a booth inside the developer space at I/O and getting to meet and c
最近ではAndroid界隈でKotlinを実務で採用するケースも増えつつあり、Javaを書いてきたエンジニアがすでにKotlin導入されたプロジェクトにジョインする事もままあるのではないでしょうか。 KotlinはJavaと互換性があり構文もJavaを踏襲している部分が多く学習コストは高くないですが、Javaエンジニアには馴染みのない書き方も多く使われます。 ここではJavaエンジニアがとりあえずKotlinのコードを読んだり書いたりするのに詰まらずスッとジョイン出来るように、よく使われる(気がする)Kotlinっぽい構文を雑に紹介してみます。 (Kotlinのざっくりとした言語仕様は把握している前提です) Nullable user.nameがnullだったら代わりに空文字を渡す
mastodon4jをリリースしました。Kotlinで書かれていて、Javaからでも使えるように今後チューニングしていきます。現在の最新は0.0.3です。 最初はDroiDonの副産物としてmastodon4jを実装していて、まぁだれか出すだろうと思っていたけど1週間経っても出てこないので自分で出すことにしました。 公式ドキュメントのAvailable librariesに載せてもらえてやっぴー。 github.com mastodon4j github.com 0.0.1 mastodon4jでmastodonのAPI documentにかかれているデータ、メソッドをすべて実装 mastodon4j-rxで一部のメソッドを実装 0.0.2 Release v0.0.2 · sys1yagi/mastodon4j · GitHub ユーザ名/パスワードで認証する Apps#postUser
テクブの夏コミ(C90)のアンドロイドアカデミアに書いた解剖 Kotlin ~バイトコードを読み解く~をGitBookにて公開しました。 GitBook こちらから読めます 解剖 Kotlin ~バイトコードを読み解く~ 概要 解剖 Kotlin ~バイトコードを読み解く~はKotlinで書いたプログラムを逆アセンブルすることで、Kotlinが提供している特徴的な機能がJavaでどのように表現されているかを読み解いていきます。Kotlinの特徴的な機能たちもJavaになってしまえばこっちのもの。なーんだKotlinもJavaなんだね。 目次 Introduction KotlinとJava 本書のアプローチ 1. null許容型の正体 2. 関数型とラムダ式の正体 3. インライン関数の正体 4. 拡張関数の正体 5. プロパティの正体 6. デリゲートプロパティの正体 7. 末尾再帰最適
If you convert an app from Java to Kotlin, will it take longer to compile? This is part 3 in a series of articles on Kotlin. Part 1 discussed converting an Android app from Java to Kotlin, and part 2 contains my thoughts on the Kotlin language. In an earlier article, I discussed converting an Android app from Java to 100% Kotlin. The Kotlin codebase was smaller and more maintainable than it’s Java
はじめに Kotlin文法 - アノテーション、リフレクション、型安全なビルダー、動的型の続き。 Kotlin ReferenceのInterop章の大雑把日本語訳。適宜説明を変えたり端折ったり補足したりしている。 KotlinからJavaのコードを呼ぶ KotlinはJavaとの相互運用を念頭において設計されている。既存のJavaコードはKotlinから自然な方法で呼び出すことができる。そしてKotlinのコードも同様にかなりスムーズにJavaから利用することができる。この節ではKotlinからJavaのコードを呼ぶ場合の詳細を記述する。 ほとんど全てのJavaコードは何の問題もなく利用できる。 import java.util.* fun demo(source: List<Int>) { val list = ArrayList<Int>() // Javaコレクションでのforルー
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く