はじめに
はじめまして、Hridoy Chandra Das(リド)(@ihridoydas)です。BaseTemplateAndroidApp: Androidアプリ開発の新しいスタート
テンプレート:BaseTemplateAndroidApp
概要
BaseTemplateAndroidAppは、Androidアプリの開発プロセスを合理化し、堅牢で洗練されたアプリケーションを迅速に作成するためのオープンソースのAndroidテンプレートです。このテンプレートは、ベストプラクティス、ライブラリ、アーキテクチャのパターンを組み合わせ、開発者が毎回同じコードを書かなくても済むようサポートします。このテンプレートは、Hridoy Chandra Das によって設計され、コードの構築において意見を押し付けず、開発者が自由に選択できる環境を提供します。必要なツールが手に入ることで、ユーザーは自分のスタイルでプロジェクトを進めることができます。
なぜこのテンプレート?
選択の自由: コード構造やアーキテクチャに対する意見はありません。開発者が自分で決めます。
意見を述べるツール: 設定済みの依存関係管理、gitフック、コードフォーマッティング、静的解析など、開発を向上させるためのツールが含まれています。
主な特徴
-
モジュラーなアーキテクチャ
モジュラーなアーキテクチャにより、プロジェクトは整理され、拡張が容易になります。クリーンなモジュール構造は、メンテナンス性を向上させます。 -
MVVMデザインパターン
MVVMデザインパターンを採用しています。これにより、ユーザーインターフェースの開発が簡素化され、テスト可能でメンテナンス性の高いコードが可能となります。 -
Dagger Hiltによる依存性の注入
Dagger Hiltを使用した依存性の注入は、効率的で簡潔なコードを実現し、アプリのアーキテクチャを向上させます。 -
Jetpackコンポーネントの統合
Android Jetpackコンポーネント(ViewModel、LiveData、Navigationなど)を積極的に統合し、最新のGoogleのベストプラクティスに従います。 -
Retrofitを用いたネットワーキング
Retrofitを利用したネットワーキングは、簡潔なネットワークリクエストの実行とAPIの統合を容易にします。 -
UIコンポーネントとテーマ
一貫性のあるビジュアルを提供するためのUIコンポーネントとテーマが組み込まれています。これにより、魅力的なユーザーインターフェースを構築できます。
スタートガイド
-
"Use this template"をクリックして、アカウントにリポジトリを作成します。
-
setup.gradleを調整し、
./gradlew renameAllModules
を実行してカスタマイズします。
templateName : "template",
templateAppId : "template.app.id",
templateMaterialThemeName: "TemplateTheme",
newTemplateName : "Project", [ここにプロジェクト名を入力]
newTemplateAppId : "domain.yourname.app", [ここにプロジェクトのパッケージ名を入力]
newMaterialThemeName : "MyMaterialTheme", [ここにプロジェクトのテーマ名を入力]
useHiltDependencies : true,
useRoomDependencies : true,
useRetrofitDependencies : true,
usePaparazziDependencies : true,
含まれるもの
・/documentation:サードパーティーの依存関係とドキュメンテーション。
・コードフォーマット用のKtlint。
・コードスメル検出のためのDetekt。
・静的解析チェックのためのGit Hooks。
・継続的な統合のためのGitHub Actions。
・メモリリークの検出のためのLeakCanary。
・HiltおよびRoomの依存関係(必要に応じてsetup.gradleで削除可能)。
・Paparazziの依存関係(必要に応じてsetup.gradleで削除可能)。
・Dokka 依存関係、すべてのプロジェクトとモジュールをドキュメント化します。
・Spotless 依存関係、コードを清潔に保ちます。
・sortDependencies 依存関係、build.gradleファイル内の依存関係を整理します。
依存関係の設定
依存関係は/buildscriptsに構造化されています。アプリモジュールの依存関係は、libs.versions.tomlにあるGradleバージョンカタログを使用して定義されています。
テンプレートを使用して、効率的で強力なAndroidアプリを開発しましょう!
まとめ
BaseTemplateAndroidAppは、洗練されたアプリを構築するための堅牢な基盤を提供します。これにより、開発者は独自の機能に焦点を当て、開発プロセスを迅速かつ効果的に進めることができます。ぜひお試しください!コメントで感想を教えていただければ嬉しいです。Happy coding!