title: Objective-C/ARC ivar vs property
body: <p>I've been up and down the Google and the Stack and read many articles if not outright debates over ivars and properties.  But still, even after all this reading I remain confused.</p>
  
  <p>I understand ivar's are private and properties are typically used to expose (well) class properties.  But I understand properties to be more than that, they contain Getters and Setters and when it comes to memory management (even under ARC) I can see the benefit to using them exclusively.</p>
  
  <p>But my question is; does any of this matter anymore now that we have ARC?  (see comment in example code below).</p>
  
  <p>Consider:</p>
  
  <pre><code>@interface MyClass
  @property(strong) NSMutableArray *myArray;
  @end
  
  @interface MyClass
  
  -(instancetype)init {
  
      if (self = [super init]) {
  
          self.myArray = [NSMutableArray array];
  
          // OR
  
          // Will this NOT call the Setter?  Hence, leading
          // to possible memory leak issues?
          _myArray = [NSMutableArray array];
  
      }
  
      return self;
  }
  @end
  </code></pre>