I have been hearing the word deep clone recently when it comes to creating copies of objects. Additionally I have been seeing unexpected behavior sometimes when I would do something like this (super generic example)
Object a = new Object()
Object b = a
b.Name = "Bob"
When I would work with object b, sometimes object a would get set too, in this case, a.Name would be "Bob" Primarily in my experience, the object type would be Images of type Bitmap
I have always come to the understanding that object B exists as its own INDEPENDENT object, but with this new notion of deep cloning I have been hearing about and seeing recently, how can I best tackle this issue so you have INDEPENDENT copies and what design pragmatism should I exert more carefully to eliminate this issue entirely