Je suis en train d'écrire une application financière où le concept de 'Prix' est beaucoup utilisé. Il est actuellement représenté par le type C# decimal
. Je voudrais le rendre plus explicite et être en mesure de le changer à double
dans le futur, donc je pensais à créer une structure 'Price' qui agirait exactement de la même manière que le type décimal (peut-être ajouter un peu de validation comme doit être supérieur à 0).Utiliser des structures en C# pour des valeurs de domaine simples
Selon vous, quels sont les avantages et les inconvénients de cela?
peut-être devrait-il plutôt être membre d'un prototype/classe virtuelle hérité par la classe d'objets, accessible avec get/setters? –
@Nona: Désolé, je ne comprends pas. Que voulez-vous dire exactement et à quoi cela sert-il? –
bien que je puisse me tromper, mais il me semble (comme moi) qu'une structure devrait être utilisée pour contenir un ensemble de valeurs, et non pour être simplement un emballage pour une seule donnée. Parce que le «prix» est une seule donnée, et parce que le prix est inutile (prix de quoi?), Il devrait plutôt être une propriété de la classe plus grande (prix de l'article). Les g/setters vous permettront de mettre plus tard la logique dans leur récupération/altération. Enfin, j'ai suggéré une classe virtuelle pour vous permettre d'avoir des types d'éléments fondamentalement différents, mais héritant de leurs caractéristiques de base, et vous forçant à remplacer ce que vous savez changer. –