俺のパブリックリポジトリ
目次
Androidアプリ開発に関する実験的なプロジェクトはGitHubのパブリックリポジトリとして公開しています。本記事では、備忘を兼ねて、どのプロジェクトでどのような実験をしているのかをまとめます。
某社Androidエンジニア向けコードチェック課題
某社のAndroidエンジニア向けコードチェック課題が公開されていたので、やってみました。おそらく某社の面接時に見られるポイントとは別の方向に頑張ってしまっていると思われるので、某社の採用試験を受けようとしている方は、決して参考にしないでください。
本プロジェクトには、以下のコードが含まれています。
- Dagger HiltとMVP(Model-View-Presenter)アーキテクチャを用いた実験的なコード
- Apollo Kotlinを用いたGraphQLクライアントの実装
- ktlintとAndroid Lintを並列実行して、DangerでPRにまとめてコメントするGitHub Actions
リポジトリへのリンクはこちらです。
クリーンアーキテクチャのサンプルアプリ
ソフトウェアデザイン 2023年6月号に掲載された、特集「正しく理解したいクリーンアーキテクチャとは何か?」の第5章「モバイルアプリ開発における実践」のサンプルコードを収めたリポジトリです。
本プロジェクトには、以下のコードが含まれています。
- マルチモジュールによるクリーンアーキテクチャのサンプルコード
- Dagger HiltによるDIと依存性逆転の原則を用いた依存関係の制御
リポジトリへのリンクはこちらです。
上記のリポジトリは元々、Androidのクリーンアーキテクチャを題材にした同人誌のサンプルコードでした。こちらのサンプルコードも中身はあまり変わらないですが、別途リポジトリが存在しています。
本プロジェクトには、上記のリポジトリの内容に加えて、以下のコードが含まれています。
- Bitriseを用いたAndroidのCI(bitrise.yml)
- SonarCloudによるコードスメル解析のためのGitHub Actions
リポジトリへのリンクはこちらです。
JaCoCo+マルチモジュール
build.gradle.ktsでJaCoCoを動かすを書いた時のサンプルコードです。
本プロジェクトには、以下のコードが含まれています。
- JaCoCoを用いた、テストレポートの生成
kotlinx-kover
を用いた、マルチモジュール環境下でのテストレポートのマージ
リポジトリへのリンクはこちらです。
酒と泪とTruthとMockK
Androidの単体テストを題材にした同人誌のサンプルコードとして、TruthとMockKの使い方のサンプルコードを示しています。
以下のリポジトリにTruthとMockKのサンプルコードが含まれています。詳しい説明については同人誌の方を参照ください🤗
MVVMアーキテクチャ入門
書籍Jetpack ComposeによるAndroid MVVMアーキテクチャ入門のサンプルコードを収めたリポジトリです。
本プロジェクトには、以下のコードが含まれています。
- Jetpack Composeを用いた、MVVMアーキテクチャのサンプルコード
リポジトリへのリンクはこちらです。
- okuzawats/sample-android-mvvm-with-jetpack-compose-count-up-app
- okuzawats/sample-android-mvvm-with-jetpack-compose-github-client-app
以上となります。よろしくお願いします。
書いている人 😎

茨城県つくば市在住のモバイルアプリケーションアーキテクト(Androidが得意です)。モバイルアプリのアーキテクチャ、自動テスト、CI/CDに興味があります。いわゆる「レガシーコード」のリファクタリング・リアーキテクチャが好きです。
👉 もっと詳しく
著書 ✍
Android 依存性注入 ヒッチハイク・ガイド🧳
Androidアプリでの依存性注入(Dependency Injection)に入門するためのガイダンスです。依存性注入の概念やメリットを理解し、Dagger Hiltを用いてAndroidアプリに適用する方法を解説しています。
ソフトウェアデザイン 2023年6月号📚
特集「クリーンアーキテクチャとは何か?」の第5章「モバイルアプリ開発における実践」を執筆しました。
Android クリーンアーキテクチャ ヒッチハイク・ガイド🧳
Androidアプリでのクリーンアーキテクチャに入門するためのガイダンスです。クリーンアーキテクチャの概念を理解し、Androidアプリに適用する方法を解説しています。
Android ユニットテスト ヒッチハイク・ガイド🧳
Androidアプリのユニットテストに入門するためのガイダンスです。初学者が混乱せずにAndroidアプリのユニットテストを書き始めることができる、ということを目的としています。
Android MVVMアーキテクチャ入門🛠
Androidアプリ開発の初学者に向けた、MVVM(Model-View-ViewModel)アーキテクチャの入門書を書きました。初学者の方を確実にネクストレベルに引き上げる技術書です。NextPublishingより出版されています。
関連記事 👀
- GitHub ActionsでSonarCloudにカバレッジをアップロードする
- [Android] Uniflowを用いたMVI的なアーキテクチャを試してみる🦄
- [Android] 単体テスト用の依存関係をHiltで解決する
- GitHub ActionsでktlintとAndroid Lintを並列実行して、DangerでPRにまとめてコメントする🐝
- ランチタイムLT会 #1で「何故、UseCaseは1メソッドなのか」というLTをしました