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이 지원 목록 클래스를 확장하지 않거나 심지어 Collection 인터페이스를 구현하지 않는다는 점을 감안할 때 (C #이 비슷한 것을 확신합니다).