Each @property and conventional getters and setters have their strengths. It will depend on your use circumstance. the class. The information obtain interface remains precisely the same so that there's no need to modify client code. This distinction in syntax is really really refined and can result in a "gotcha" https://elanimperial.blogspot.com