Now this is .NET but I am sure the principal should apply to all OOP language, to simplify I take .NET as an example:
R# usually creator constructor and passing incoming variable to private field, which for me mi tend to pass it to Property.
Any opinion on how the different and what is the best practice for that?
Using properties is OK as long as they are not virtual/overridden. Properties are essentially methods, and you should not call virtual methods from within the constructor because the appropriate type may not be constructed yet. Microsoft has listed their own set of guidelines, just scroll down to the bottom to see the relevant guidance and code snippet illustrating the problem (they illustrate it using methods, but as I mentioned .NET properties are essentially special methods).
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With