title: dealloc, use release or set to nil for properties?
body: <p>I have noticed a little confusion when looking at various bits of code both in books and on the web when it comes to implementing dealloc. My question is when using @property which of the following should I be using. Up until now I have been using VERSION_001.</p>
  
  <pre><code>@property(nonatomic, retain) NSString *name;
  @property(nonatomic, retain) NSString *type;
  @property(nonatomic, retain) NSString *payload;
  @property(nonatomic, retain) NSString *orbit;
  </code></pre>
  
  <p>VERSION 001</p>
  
  <pre><code>- (void)dealloc {
      [name release];
      [type release];
      [payload release];
      [orbit release];
      [super dealloc];
  }
  </code></pre>
  
  <p>VERSION 002</p>
  
  <pre><code>- (void)dealloc {
      [self setName:nil];
      [self setType:nil];
      [self setPayload:nil];
      [self setOrbit:nil];
      [super dealloc];
  }
  </code></pre>