Android Kotlin基礎講座 06.2: コルーチンとRoom

この講座について

この記事はAndroid Kotlin基礎講座の一部です。これ以外のAndroid Kotlin基礎講座(全10回)も一緒に受講することでAndroidアプリの開発手法、およびKotlinの基礎知識を学ぶことができます。全講座はAndroid Kotlin基礎講座にリスト化されていますので参考にしてください。

またこの記事ではGoogle Developers Training teamによってGoogle Codelabsに公開されているAndroid Kotlin Fundamentals courseを日本語に翻訳しつつ、筆者の考察も交えながら発信しています。オリジナルのサイト(英文)はこちら

イントロダクション

アプリに対するユーザーの満足を得るための最も重要な優先事項の一つは、UIが常に正しく反応し、スムーズに動作することです。UIのパフォーマンスを向上させる方法の一つはデータベース操作などのロングランニングタスクをバックグラウンドで行わせることです。

この記事では、TrackMySleepQualityアプリにおけるユーザーが目にする部分を実装します。またKotlinのコルーチンを使ってデータベース操作をメインスレッドから切り離します。

Lesson 6に含まれている記事

前提知識

  • アクティブ、フラグメント、ビューやクリックハンドラーを使った基本的なユーザーインターフェース(UI)の作り方
  • フラグメント間の遷移、またフラグメント間で簡単なデータをsafeArgsを用いて渡す方法
  • ビューモデル、ビューモデルファクトリー、transformation、LiveDataについて
  • Roomデータベース、DAOの作り方と実体の定義方法
  • またスレッドとマルチプロセッシングの概念について知っていると役立ちます。

この講座で学べること

  • Androidにおいて、どのようにスレッドが機能しているか
  • データベース操作をメインスレッドから切り離すためのKotlinコルーチンの使い方
  • TextViewにフォーマットされたデータを表示する方法

概要

  • データベースからデータを取得・表示したり、データベースに保存するようにTrackMySleepQualityアプリを拡張
  • ロングランニングタスクであるデータベース操作をコルーチンを使ってバックグラウンドで動作させる
  • ナビゲーションとスナックバーの表示のトリガーとしてのLiveDataの使用
  • ボタンを有効化・無効化するためにLiveDataを使用

完全無料で通えるプログラミングスクール

プログラミング学習はどうしても一人だとつまづいてしまう時がきます。調べればわかることも少なくないですが、最初のうちは調べ方もわからないことが多いため、あまり効率的ではありません。

効率的かつ挫折せずにプログラミングを学習したい方はスクールを検討してみるのも一つの手です。

中には無料で通えるスクールや、就職保証をしてくれるスクールなどもあるので、きっとあなたの目的に応じて最適のスクールが見つかります!以下の記事で評判がよく特におすすめのスクールをいくつかピックアップしているので、スクール選びで後悔したくない方は御覧ください!

https://codelabsjp.net/best-programming-school/