Kiedy należy umieścić dane typu Klucz / Wartość we własnej klasie zamiast korzystać ze wstępnie zbudowanej struktury ogólnej, takiej jak a KeyValuePair
lub a Tuple
?
Na przykład większość tworzonych przeze mnie pojemników ComboBox zawiera DisplayName i Value. Jest to rodzaj danych, które próbuję zdecydować, kiedy wprowadzić nową klasę, a kiedy tylko użyć KeyValuePair.
Obecnie pracuję nad czymś, co wykorzystuje iCalendar
, a dane wybranego użytkownika ostatecznie zostają połączone w key1=value1;key2=value2;
rodzaj ciągu. Zacząłem od umieszczenia danych w KeyValuePair<string,string>
, ale teraz zastanawiam się, czy powinna to być własna klasa.
Ogólnie rzecz biorąc, jestem zainteresowany ustaleniem, jakie wytyczne są stosowane przy podejmowaniu decyzji o użyciu istniejącej struktury / klasy, takiej jak obiekt o KeyValuePair
ponad 2 właściwościach, oraz w jakich sytuacjach zastosowalibyście jeden nad drugim.
iCalendar
i chciałem mieć przedmioty dla BYDAY
i BYSETPOS
. Pojawiają się w ComboBox, ale rzeczywiste dane są łączone w ciąg regułu, który jest key=value;
rodzajem ciągu
tuple
typ.