サービス層が持つべき機能とは 次にドメイン層について考えて見ます。サービス層は、業務サービスを実現する層です。サービス層はドメイン層に存在するビジネスロジックを利用してサービスを実現するためのサービスプロセスを実現しています。 そして、トランザクションの制御、セキュリティなどのシステム機能を実現します。 このとき業務機能(機能要件)とシステム機能(非機能要件)を実現する実装は、分離できるようにします。一般的にはEJBやAOPなどのフレームワークを利用し、ビジネスロジックにシステム機能が混在しないようにします。 ドメイン層の設計をどのように考えるか ドメイン層は、ビジネスロジックを実装します。ビジネスロジックは、必要とするデータとともにエンティティクラスにカプセル化されます。これは、オブジェクト指向分析で作成された概念モデルを基に作成します。各エンティティクラスは、継承、インターフェイス、関
![ドメイン層に最適なアーキテクチャを考える](https://cdn-ak-scissors.b.st-hatena.com/image/square/7e51372d18138e90ed2c8d95d693065718b5e361/height=288;version=1;width=512/https%3A%2F%2Fimage.itmedia.co.jp%2Fimages%2Flogo%2F1200x630_500x500_enterprise.gif)