Podczas pracy z MVVM i Prism znajdę się robić dużo odlewania, jak większość parametry są interfejsyCo Koszt parametrów odlewania
Ex
public void AddCrSubSystemsToPlant(IPlantItem plantItm, CRArticleItem crItm)
{
OSiteSubSystem itm = (OSiteSubSystem)crItm;
itm.PartData.Order = ((OSiteEquipment)plantItm).SubSystems.Count() + 1;
((OSiteEquipment)plantItm).SubSystems.Add(itm);
}
lub
public void DeletePart(IPlantItem plantItem)
{
IEnumerable<IPlantItem> itmParent = GetParentPartByObjectId(_siteDocument, plantItem);
if (plantItem is OSiteEquipment)
((ObservableCollection<OSiteEquipment>)itmParent).Remove((OSiteEquipment)plantItem);
if (plantItem is OSiteSubSystem)
((ObservableCollection<OSiteSubSystem>)itmParent).Remove((OSiteSubSystem)plantItem);
if (plantItem is OSiteComponent)
((ObservableCollection<OSiteComponent>)itmParent).Remove((OSiteComponent)plantItem);
}
My Pytanie brzmi, jaki jest koszt. Czy te operacje są kosztowne, czy też procesorowe, należy ich unikać.
Jakieś widoki?
Dlaczego trzeba wszystkie te odlewy? Czy interfejsy nie ujawniają wymaganych operacji? Jeśli nie, dlaczego nie? – Oded
Prawdopodobnie możesz sfałszować niektóre przypadki testowe z odlewaniem i bez niego i zmierzyć wydajność. Nie sądzę, by jakakolwiek indywidualna obsada miała duży wpływ na wydajność, ale zależy od tego, jak często to robisz. –
Zobacz tę odpowiedź: http://stackoverflow.com/a/9366456/414076 –