title: Why don’t iOS classes adopt copyWithZone protocol to encourage active mem mgt?
body: <p>Recently turning to iOS after having worked with Cocoa, I was startled to get a SIGABRT with the following error: “-[UIDeviceRGBColor copyWithZone:]: unrecognized selector sent to instance…” I had called “copy” on a UIColor.</p>
  
  <p>I looked at the class references and, zounds, UIColor does not adopt any protocols, in contrast to NSColor.</p>
  
  <p>Now, this is not a big deal. I was just attempting to be more efficient by taking active ownership of a color instance so as to discard it immediately after use. But I thought the purpose behind Apple’s omitting a garbage collector in iOS was to encourage developers to do exactly what I was doing, to keep a lean memory profile on the memory-starved, battery-challenged portable devices.</p>
  
  <p>Any ideas on Apple’s rationale, or is there some error in my assumptions?</p>