W mojej metodzie fabrycznej używam instrukcji Switch do tworzenia konkretnych obiektów. Powoduje to bardzo wysoką złożoność cykliczną. Oto przykładowy kod:Nie można zredukować złożoności cyklicznej w metodzie Factory bez użycia odbicia
private static UnitDescriptor createUnitDescriptor(string code)
{
switch (code)
{
case UnitCode.DEG_C:
return new UnitDescriptorDegC();
case UnitCode.DEG_F:
return new UnitDescriptorDegF();
:
:
default:
throw new SystemException(string.format("unknown code: {o}", code);
}
}
Jak mogę to zmienić, aby zmniejszyć złożoność cykliczności? Jeśli używam odbicia do tworzenia obiektów lub czegoś innego do budowania obiektów to czy jest to lepsze niż powyższa metoda?
W przypadku domyślnym próbują zwrócić wartość insted rzuca wyjątek i spróbuj AĢIN – Sumeshk