これは、Javaパッケージのレイアウト方法について、ここで実験的に考えています。 Java開発者としてJavaパッケージを構成する
我々はおそらく無数の回1つのフォームまたは別で次のレイアウトを思えてきた:
com.example.service.rest
UserRestService.java
BookRestService.java
TaskRestService.java
com.example.service.rest.impl
UserRestServiceImpl.java
BookRestServiceImpl.java
TaskRestServiceImpl.java
com.example.data
UserDTO.java
BookDTO.java
TaskDTO.java
私は長年、このようなレイアウトの消費者となっています。
レイアウトが全く異なるNodeJSプロジェクトに私は簡単に関わっていました。私は、すべてのコンポーネントの平坦さ、シンプルさ、および封じ込めが大好きでした。
私が慣れていたものと比較して、私のクラスはエクスペリエンスが起こったかのように投げられた(上記のレイアウト)ように感じました。
(Javaへの翻訳)NodeJSプロジェクトのレイアウトは次のようになります。
com.example.service.rest.user
UserDTO.java
UserRestService.java
UserRestServiceImpl.java
com.example.service.rest.book
BookDTO.java
BookRestService.java
BookRestServiceImpl.java
com.example.service.rest.task
TaskDTO.java
TaskRestService.java
TaskRestServiceImpl.java
私はすべてのディレクトリ/パッケージには、残りのコントローラを含んでいるでしょう非常にフラットな構造、サービスを持っていたから、これを採用したNodeJSレイアウトを、およびDAL/DAO。
すべてのようなフェルトは、組織化されたマイクロバケットに分割されていました。
これまで誰も大規模で第2のアプローチを試したことがありますか?
最初のレイアウトと2番目のレイアウトの違いは何ですか?
件名の閲覧リソースはありますか?
なぜあなたのオブジェクトにxxxDTOという名前を付けましたか? –
私はUserDAO、BookDAO、TaskDAOをビジネスロジック側に持っているように、ちょうどコンベンションである必要はありません –
その意味を知らない場合は、そのような名前を使用しないでください。 –