Java DropWizard,OO设计:表示对象应该只包含getter和setter吗?

Java DropWizard,OO设计:表示对象应该只包含getter和setter吗?,java,oop,dropwizard,Java,Oop,Dropwizard,我看到的每个示例都显示了仅使用getter和setter的表示对象。但是,如果我想为表示实现更复杂的功能,该怎么办?我应该将该功能放在表示本身中,还是放在从数据库接收这些表示的服务层中 例如,我有一个tictactoerepresentation对象,它包含一个Tic-Tac-Toe游戏的状态。我想为游戏实现makeMove(player,x,y)功能。我应该将makeMove添加到tictactoempresentation还是应该将其添加到从数据库接收tictactoempresentati

我看到的每个示例都显示了仅使用getter和setter的表示对象。但是,如果我想为表示实现更复杂的功能,该怎么办?我应该将该功能放在表示本身中,还是放在从数据库接收这些表示的服务层中


例如,我有一个
tictactoerepresentation
对象,它包含一个Tic-Tac-Toe游戏的状态。我想为游戏实现
makeMove(player,x,y)
功能。我应该将
makeMove
添加到
tictactoempresentation
还是应该将其添加到从数据库接收
tictactoempresentations
的服务层?我对OO设计原则的理解会告诉我将功能放在
TicTacToeRepresentation
中,但我不确定,因为我在实践中从未见过这样的事情。

A实际上只是一种DTO(数据传输对象)。从更普遍的意义上考虑这个问题,可以看出许多存在的问题在任何情况下,DTO+DAL/服务(“贫血模型”)和DDD/实体作为业务设计之间都有很大的区别。两者都不一定“更好”,但哪种方法(更)合适通常取决于所使用的环境/工具。A实际上只是一种DTO(数据传输对象)。从更普遍的意义上考虑这个问题,可以看出许多存在的问题在任何情况下,DTO+DAL/服务(“贫血模型”)和DDD/实体作为业务设计之间都有很大的区别。两者都不一定“更好”,但哪种方法(更)合适通常取决于所使用的环境/工具。