Je dois écrire un tas de DTO (Data Transfer Objects) - leur seul but est de transférer des données entre application (s) client et l'application serveur, de sorte qu'ils ont un tas de propriétés, une fonction de sérialisation et un fonction de désérialisation.Ça vaut le coup d'utiliser des getters et setters dans les DTO? (C++)
Quand j'ai vu des DTO, ils ont souvent des getters et des setters, mais est-ce que c'est leur but pour ces types de cours? Je me demandais si je mettrais jamais une validation ou des calculs dans les méthodes, mais je ne pense probablement pas que cela semble aller au-delà de leur objectif. Au niveau du serveur, la couche de gestion gère la logique, et dans le client, les DTO seront simplement utilisés dans les modèles de vue (et pour envoyer des données au serveur).
En supposant que je m'occupe de tout cela correctement, que pensent les gens?
Merci!
EDIT: ET si oui, est-ce que leur problème serait de mettre l'implémentation get/set dans la définition de classe? Enregistre la répétition de tout dans le fichier cpp ...
J'étais sûr que vous parliez de C# ici. Par curiosité, comment sérialisez-vous vos classes C++? –
À quoi ressemblent vos objets dans le code? –
@Daniel: Quand sérialisation est appelée, chaque propriété est ajoutée sous sa forme binaire dans un tampon de données croissable (à peu près une copie binaire pour ints par exemple). Des choses simples vraiment - Je code aussi un petit en-tête devant chaque propriété pour permettre la désérialisation des données manquantes/inattendues sans causer de problème (peut-être parce qu'une autre version du DTO est sérialisée à l'autre extrémité). Tout fonctionne bien et je l'ai utilisé dans plusieurs projets. Je peux y ajouter un mécanisme XML pour permettre aux objets d'aller plus facilement vers des logiciels tiers (mais avec beaucoup moins d'efficacité). – Mark