gpt4 book ai didi

java - 在哪里放置逻辑 - 域类、服务类、其他类?

转载 作者:行者123 更新时间:2023-12-02 03:16:25 24 4
gpt4 key购买 nike

我正在使用 Spring 框架在 Java 中开发一个简单的待办事项应用程序。现在,我添加了一项功能来显示任务是否过期。我不确定在哪里放置检查是否是的逻辑。

这是我的待办事项域类:

public class Todo {
private Long id;
private String body;
private LocalDate doDate;

// Constructors, getters and setters
}

这是我的 TodoService 类:

@Service
public class TodoService {
@Autowired
private TodoRepository todoRepository;

public void save(Todo todo) { // ... }
public void deleteById(Long id) { // ... }
public Iterable<Todo> findAll() { // ... }
public Optional<Todo> findById(Long id) { // ... }
}

我正在考虑 3 种方法:

  1. 向域类添加方法 isOverdue()
  2. 添加一个单独的类 OverdueChecker,其方法为 isOverdue(Todo todo)
  3. 向我现有的 TodoService 类添加一个方法 isOverdue(Todo todo)

以下哪一项被认为是良好的编码实践?

最佳答案

我会推荐第一个解决方案,因为它是一个很容易确定的状态(我猜你只是将 doDate 与 doday 的日期进行比较)并且不需要太多的逻辑,如果需要的话我会建议使用服务。除了 toDo 类中的 public boolean isOverdue(){...} 之类的内容更干净

关于java - 在哪里放置逻辑 - 域类、服务类、其他类?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56959015/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com