可以说我有一Car
堂课:
public class Car
{
public string Engine { get; set; }
public string Seat { get; set; }
public string Tires { get; set; }
}
可以说,我们正在建立一个有关停车场的系统,我将使用很多Car
类,因此我们建立了一个CarCollection
类,它可能有一些类似的方法FindCarByModel
:
public class CarCollection
{
public List<Car> Cars { get; set; }
public Car FindCarByModel(string model)
{
// code here
return new Car();
}
}
如果要上课ParkingLot
,什么是最佳做法?
选项1:
public class ParkingLot
{
public List<Car> Cars { get; set; }
//some other properties
}
选项2:
public class ParkingLot
{
public CarCollection Cars { get; set; }
//some other properties
}
创建ClassCollection
另一个甚至是一个好习惯Class
吗?
public class CarCollection
不实现IList或ICollection等。因此,您不能将其传递给列表可以的东西。作为其名称的一部分,它声称它是一个集合,但未实现任何这些方法。
CarColection
带有TotalTradeValue
属性的。DDD并不是设计系统的唯一方法,只是指出它是一种选择。
CarCollection
而不是传球有什么好处List<Car>
?特别是考虑到CarCollection不会扩展后备List类,甚至不会实现Collection接口(我确信C#具有类似的功能)。