Скажемо, у мене 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 # є подібні речі).