Question: what is the difference between property and instance variable?
Answer: The concept of instance variables (and properties) has a lot to do with data encapsulation, which we'll cover towards the end of this post. Properties are simply variables that are backed by their ivars - by declaring a property, we create an instance variable and automatically generate setter and getter methods.