BT

AndroidのKotlinサポートが充実 - Android KTX、Kotlin Bootcamp Udacityなど

| 作者: Diogo Carleto フォローする 34 人のフォロワー , 翻訳者 h_yoshida _ フォローする 0 人のフォロワー 投稿日 2018年7月9日. 推定読書時間: 3 分 |

原文(投稿日:2018/06/06)へのリンク

読者の皆様へ: 皆様のご要望にお応えするべく、ノイズを削減する機能セットを開発しました。皆様が関心をお持ちのトピックを、EメールとWeb通知で受け取ることができます。新機能をぜひお試しください。

Googleは先頃、AndroidプラットフォームにおけるKotlinの開発者エクスペリエンスを改善する活動に関するプレゼンテーションを行った。Android KTXKotlin Bootcamp Udacityコース、Android Studio 3.2でのLintサポートなどがその内容だ。

プロダクトマネージャのStephanie Cuthbertson氏によると、GoogleがKotlinのサポートを発表した昨年以来、この言語は開発者コミュニティに受け入れられており、Android開発でKotlinを使用した95パーセントの開発者が、非常に満足していると答えている。Kotlinを使用したPlay Storeアプリの数は6倍になった。

KotlinはAndroidアプリ開発で公式にサポートされており、Javaプログラム言語やライブラリとの完全な相互運用が可能である他、IntelliJやAndroid Studioにも含まれている。Kotlinは強力な型システムを持ち、型推論、null安全性、プロパティ、ラムダ拡張、コルーチン、高次関数などを備えている。

Kotlin Bootcamp Udacityコースは、Kotlinの基礎教育を目的とした、無償のオンラインコースである。このKotlin入門教育は、Googleの専門家がUdacityと協力して開発したもので、ある程度のプログラム経験を持つ人たちを対象としている。

コースは、単純なステートメントから関数呼び出しやクラス宣言までの言語の基礎から始まり、第2部ではコレクションや定数、エクステンションの記述方法、ジェネリクスの実装、アノテーションの適用、ラムダ、高次関数など、より高度なトピックを取り上げている。

Android Studio 3.2のLintサポートが改善され、より多くの機能を含むようになった。JavaコードとKotlinコードの相互運用を確認するための新たなLintチェックが追加されており、Nullabilityアノテーションがあること、ラムダパラメータを最後におくことなどがチェックされる。利用には、以下の設定をbuild.gradleに追加して有効にする必要がある。


android {
    lintOptions {
        check 'Interoperability'
    }
}

Android KTXJetpackの一部として提供されるKotlinの拡張セットで、JetpackとAndroidプラットフォームAPIをKotlin用に最適化する。KotlinによるAndroid開発をより簡潔、快適、慣用的にすることが目的で、以下に示すKotlinコードが、


view.viewTreeObserver.addOnPreDrawListener(
  object : ViewTreeObserver.OnPreDrawListener {
    override fun onPreDraw(): Boolean {
      viewTreeObserver.removeOnPreDrawListener(this)
      actionToBeTriggered()
      return true
    }
});

次のような簡潔なコードで記述できるようになる。


view.doOnPreDraw { actionToBeTriggered() }

最後に、Android PのAndroid Runtime (ART)がチューニングされ、Kotlinで開発されたアプリケーションの実行速度が向上した。Googleは公式ドキュメントでKotlinのコードスニペットを提供する他、APIリファレンス資料を公開している。

 
 

この記事を評価

採用ステージ
スタイル
 
 

この記事に星をつける

おすすめ度
スタイル

こんにちは

コメントするには InfoQアカウントの登録 または が必要です。InfoQ に登録するとさまざまなことができます。

アカウント登録をしてInfoQをお楽しみください。

あなたの意見をお聞かせください。

HTML: a,b,br,blockquote,i,li,pre,u,ul,p

このスレッドのメッセージについてEmailでリプライする
コミュニティコメント

HTML: a,b,br,blockquote,i,li,pre,u,ul,p

このスレッドのメッセージについてEmailでリプライする

HTML: a,b,br,blockquote,i,li,pre,u,ul,p

このスレッドのメッセージについてEmailでリプライする

ディスカッション

InfoQにログインし新機能を利用する


パスワードを忘れた方はこちらへ

Follow

お気に入りのトピックや著者をフォローする

業界やサイト内で一番重要な見出しを閲覧する

Like

より多いシグナル、より少ないノイズ

お気に入りのトピックと著者を選択して自分のフィードを作る

Notifications

最新情報をすぐ手に入れるようにしよう

通知設定をして、お気に入りコンテンツを見逃さないようにしよう!

BT