コードドキュメント

各パッケージ、構造体、インタフェース、型の詳細な説明については、ここでは触れませんので、godocを参照してください。

プロジェクトレイアウト

Untitled

"ドメイン駆動設計"(通称DDD)と "クリーンアーキテクチャ "を採用していますが、プロジェクトのレイアウトはGolangのレイアウト規約(https://github.com/golang-standards/project-layout )に基づいています。

図中の依存関係の流れを逆にしない 例:pkg → usecase や infrastructure → adapter は禁止する

Re:Earthの開発者が意識する一般的なトピックス

クリーンアーキテクチャ

クリーンアーキテクチャは、ビジネスルールと技術的な実装を分離し、システムコンポーネント間の明確な境界を定義するアプローチである。システムコンポーネントはポート(インターフェース)を通じて接続され、「コードの依存関係は外側のレベルから内側にしか移動できない」という主要なルールを満たします。詳細は、本書をご覧ください。

Untitled

データフローの例:

  1. UIがコントローラーを呼び出します。