Click here to Skip to main content
15,891,003 members

Welcome to the Lounge

   

For discussing anything related to a software developer's life but is not for programming questions. Got a programming question?

The Lounge is rated Safe For Work. If you're about to post something inappropriate for a shared office environment, then don't post it. No ads, no abuse, and no programming questions. Trolling, (political, climate, religious or whatever) will result in your account being removed.

 
GeneralRe: C# code survey Pin
Eddy Vluggen30-Oct-18 2:03
professionalEddy Vluggen30-Oct-18 2:03 
GeneralRe: C# code survey Pin
Super Lloyd30-Oct-18 2:29
Super Lloyd30-Oct-18 2:29 
GeneralRe: C# code survey Pin
Eddy Vluggen30-Oct-18 2:33
professionalEddy Vluggen30-Oct-18 2:33 
GeneralRe: C# code survey Pin
Marc Clifton30-Oct-18 2:53
mvaMarc Clifton30-Oct-18 2:53 
GeneralRe: C# code survey Pin
Dan Neely30-Oct-18 2:55
Dan Neely30-Oct-18 2:55 
JokeRe: C# code survey Pin
Foothill30-Oct-18 4:26
professionalFoothill30-Oct-18 4:26 
GeneralRe: C# code survey Pin
Gary Wheeler30-Oct-18 6:29
Gary Wheeler30-Oct-18 6:29 
GeneralRe: C# code survey Pin
Rob Philpott30-Oct-18 6:34
Rob Philpott30-Oct-18 6:34 
So option 1 gives you simplicity, whereas option 2 gives you immutability. There are arguments for both, the immutability one being that one DTO can be safely shared by many things as none of them can alter it. With option 1, by rights you need to keep cloning the thing to prevent any badly behaved code messing up the 'master' copy. So there's a memory/performance trade off with all that. You often get that cloning for free through serialization mind.

That said, when you wish to change one property on option 2, it becomes a screaming nightmare of reconstructing a new one with one difference in the constructor parameter list. We had option 2, but it was too much to stomach in the end.
Regards,
Rob Philpott.

GeneralRe: C# code survey Pin
ScottM130-Oct-18 23:10
ScottM130-Oct-18 23:10 
GeneralRe: C# code survey Pin
Sander Rossel31-Oct-18 0:49
professionalSander Rossel31-Oct-18 0:49 
GeneralRe: C# code survey Pin
DerekT-P31-Oct-18 1:31
professionalDerekT-P31-Oct-18 1:31 
GeneralRe: C# code survey Pin
Super Lloyd31-Oct-18 6:38
Super Lloyd31-Oct-18 6:38 
GeneralRe: C# code survey Pin
DerekT-P31-Oct-18 8:34
professionalDerekT-P31-Oct-18 8:34 
GeneralRe: C# code survey Pin
Super Lloyd31-Oct-18 9:12
Super Lloyd31-Oct-18 9:12 
GeneralRe: C# code survey Pin
jhunley31-Oct-18 3:37
jhunley31-Oct-18 3:37 
GeneralRe: C# code survey Pin
michaelakin31-Oct-18 4:08
michaelakin31-Oct-18 4:08 
GeneralRe: C# code survey Pin
michaelakin31-Oct-18 4:08
michaelakin31-Oct-18 4:08 
GeneralRe: C# code survey Pin
jhunley31-Oct-18 4:17
jhunley31-Oct-18 4:17 
GeneralRe: C# code survey Pin
michaelakin31-Oct-18 4:29
michaelakin31-Oct-18 4:29 
GeneralRe: C# code survey Pin
jhunley31-Oct-18 5:00
jhunley31-Oct-18 5:00 
GeneralRe: C# code survey Pin
Bruce Patin31-Oct-18 3:44
Bruce Patin31-Oct-18 3:44 
GeneralRe: C# code survey Pin
michaelakin31-Oct-18 4:19
michaelakin31-Oct-18 4:19 
AnswerRe: C# code survey Pin
Leonardo Pessoa31-Oct-18 6:43
Leonardo Pessoa31-Oct-18 6:43 
GeneralRe: C# code survey Pin
Leng Vang31-Oct-18 8:06
Leng Vang31-Oct-18 8:06 
GeneralRe: C# code survey Pin
Super Lloyd31-Oct-18 9:17
Super Lloyd31-Oct-18 9:17 

General General    News News    Suggestion Suggestion    Question Question    Bug Bug    Answer Answer    Joke Joke    Praise Praise    Rant Rant    Admin Admin   

Use Ctrl+Left/Right to switch messages, Ctrl+Up/Down to switch threads, Ctrl+Shift+Left/Right to switch pages.