Use property (Name). I believe a property should be sole "owner" of underlying field (_name).
Advantages of encapsulating field under a property:
- Readability: Only one region of code where _name is changed or processed before returned.
- Easy to set break-point, debug etc.
- DRY: No code repeated as far as validation and processing is concerned.
- Change resilience: Changing validation and processing will not affect code using
property.