我对 Typescript 没有太多经验,也没有用它实现架构模式,但我们正在一个项目中工作,我们想使用 Clean Architecture,但我对使用class
或interface
声明 DTO 和域对象有疑问。
我的假设是,Domain Objects
拥有它是一个好主意,class
因为它们可以在其中包含业务逻辑。例子:
export class Person {
id: string;
firstName: string;
lastName: string;
title: string;
constructor() {}
someBusinessLogic() {
// Implement some business logic
}
但是对于DTO
,因为他们不应该有任何逻辑,我正在使用interface
:
export interface PersonEntityDto {
id: string;
firstName: string;
lastName: string;
title: string;
updatedAt: string;
createdAt: string;
}
我对吗?