Both of those @property and common getters and setters have their positive aspects. It is determined by your use case. Making the getter, setter procedures for an attribute and afterwards passing these as argument to property perform This is great, isn't it: You can start with The only implementation imaginable, https://primeluxuryprojectingurugram.blogspot.com