I'm looking at a piece of code that was written a while ago by an experienced developer, and one thing I notice is that he has used private properties to access his private variables
i.e. He has public accessors to expose certain private variables to the outside world, but he also uses private accessors to expose them internally, so that he never directly reads or writes the private variable.
Is that good practice to do so, or is it an unnecessary layer of encapsulation? If so, what are the reasons?
The code itself is written in C#, but does have some unsafe code blocks as it accesses parts of the Windows API...don't know if that makes any difference?