
I am using simple class properties facility for some time and found it quite useful. Actually it's nothing fancy - simple helper classes to eliminate repetitive setter/accessor methods (and no need for language extensions).
If you are making designs that would normally have a lot of getters and setters, it suggests that they may have an insufficient level of abstraction. Of course, that isn't neccessarily the case -- but it does seem to be the rule in my code. I personally don't have a need for this facility and I don't think I want a library that would encourage that style.
I don't say they all over the place. But the need to something like this is quite widespread and perfectly valid IMO. For example in my project at work I have adaptation of old iterator_adaptor design to old compiler. Here I am using properties to model base and policies members of adaptor, while you had 4 access methods for them plus 2 definition lines. In general IMO properties better reflect class design, and contrast it with something like overridable behavior. Gennadiy.