<?xml version="1.0" encoding="UTF-8"?><rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
		>
<channel>
	<title>Comments on: An introduction to Cocoa and Cocoa Touch</title>
	<atom:link href="http://boredzo.org/blog/archives/2010-02-03/cocoa-and-cocoa-touch-intro/feed" rel="self" type="application/rss+xml" />
	<link>http://boredzo.org/blog/archives/2010-02-03/cocoa-and-cocoa-touch-intro</link>
	<description>The personal weblog of Peter Hosey.</description>
	<lastBuildDate>Wed, 09 May 2012 18:26:35 +0000</lastBuildDate>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.1</generator>
	<item>
		<title>By: Peter Hosey</title>
		<link>http://boredzo.org/blog/archives/2010-02-03/cocoa-and-cocoa-touch-intro/comment-page-1#comment-301502</link>
		<dc:creator>Peter Hosey</dc:creator>
		<pubDate>Wed, 03 Feb 2010 20:54:22 +0000</pubDate>
		<guid isPermaLink="false">http://boredzo.org/blog/?p=1241#comment-301502</guid>
		<description>&lt;blockquote&gt;* &quot;Ownership&quot; has a specific meaning here that is not quite like the non-programming meaning of the word. An object can have multiple owners, …&lt;/blockquote&gt;

That&#039;s true in real life as well. Things, both physical and imaginary, can be co-owned by multiple owners.

(IANAL.)

&lt;blockquote&gt;… and be owned multiple times by the same owner.&lt;/blockquote&gt;

True, but unusual. Even so, important to conceptual understanding. I&#039;ll think about how to include this.

&lt;blockquote&gt;* You should be aware of the possibility of retain cycles.&lt;/blockquote&gt;

Good suggestion.

&lt;blockquote&gt;Contrary to common misconception, methods do not have &quot;named&quot; parameters. If they did you would not be able to have a method called performSelector:withObject:withObject:. Which parameter would be the one named &quot;withObject&quot;?&lt;/blockquote&gt;

Both of them.

I get what you&#039;re saying, though: &lt;code&gt;performSelector:withObject:withObject:&lt;/code&gt; is the complete name (selector) of the method, not simply the name followed by two arguments. This is worth including.

&lt;blockquote&gt;It&#039;s perfectly okay to send messages to nil, and to simplify code accordingly. This is something that people new to Objective-C seem to have trouble getting their heads around.&lt;/blockquote&gt;

Also, a variable will not magically become &lt;code&gt;nil&lt;/code&gt; if the object whose pointer is in it dies. As such, you can&#039;t test the variable whether the variable contains &lt;code&gt;nil&lt;/code&gt; to test whether the object is still alive. (This is most likely from people conflating the variable with the object.)

Good suggestions all. Thank you.</description>
		<content:encoded><![CDATA[<blockquote cite="http://boredzo.org/blog/archives/2010-02-03/cocoa-and-cocoa-touch-intro#comment-"><p>* &#8220;Ownership&#8221; has a specific meaning here that is not quite like the non-programming meaning of the word. An object can have multiple owners, …</p>
</blockquote>
<p>That&#8217;s true in real life as well. Things, both physical and imaginary, can be co-owned by multiple owners.</p>
<p>(IANAL.)</p>
<blockquote cite="http://boredzo.org/blog/archives/2010-02-03/cocoa-and-cocoa-touch-intro#comment-"><p>… and be owned multiple times by the same owner.</p>
</blockquote>
<p>True, but unusual. Even so, important to conceptual understanding. I&#8217;ll think about how to include this.</p>
<blockquote cite="http://boredzo.org/blog/archives/2010-02-03/cocoa-and-cocoa-touch-intro#comment-"><p>* You should be aware of the possibility of retain cycles.</p>
</blockquote>
<p>Good suggestion.</p>
<blockquote cite="http://boredzo.org/blog/archives/2010-02-03/cocoa-and-cocoa-touch-intro#comment-"><p>Contrary to common misconception, methods do not have &#8220;named&#8221; parameters. If they did you would not be able to have a method called performSelector:withObject:withObject:. Which parameter would be the one named &#8220;withObject&#8221;?</p>
</blockquote>
<p>Both of them.</p>
<p>I get what you&#8217;re saying, though: <code>performSelector:withObject:withObject:</code> is the complete name (selector) of the method, not simply the name followed by two arguments. This is worth including.</p>
<blockquote cite="http://boredzo.org/blog/archives/2010-02-03/cocoa-and-cocoa-touch-intro#comment-"><p>It&#8217;s perfectly okay to send messages to nil, and to simplify code accordingly. This is something that people new to Objective-C seem to have trouble getting their heads around.</p>
</blockquote>
<p>Also, a variable will not magically become <code>nil</code> if the object whose pointer is in it dies. As such, you can&#8217;t test the variable whether the variable contains <code>nil</code> to test whether the object is still alive. (This is most likely from people conflating the variable with the object.)</p>
<p>Good suggestions all. Thank you.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Andy Lee</title>
		<link>http://boredzo.org/blog/archives/2010-02-03/cocoa-and-cocoa-touch-intro/comment-page-1#comment-301495</link>
		<dc:creator>Andy Lee</dc:creator>
		<pubDate>Wed, 03 Feb 2010 20:28:58 +0000</pubDate>
		<guid isPermaLink="false">http://boredzo.org/blog/?p=1241#comment-301495</guid>
		<description>Great collection of bullet points that every Cocoa developer should internalize.  A handful of others come to mind (of course it&#039;s up to you where to draw the line -- otherwise the list would never end).

Regarding memory management:

* &quot;Ownership&quot; has a specific meaning here that is not quite like the non-programming meaning of the word.  An object can have multiple owners, and be owned multiple times by the same owner.

* You should be aware of the possibility of retain cycles.

Regarding Objective-C (though it seems you&#039;re addressing framework issues more than language issues):

* Contrary to common misconception, methods do not have &quot;named&quot; parameters.  If they did you would not be able to have a method called performSelector:withObject:withObject:.  Which parameter would be the one named &quot;withObject&quot;?

* It&#039;s perfectly okay to send messages to nil, and to simplify code accordingly.  This is something that people new to Objective-C seem to have trouble getting their heads around.</description>
		<content:encoded><![CDATA[<p>Great collection of bullet points that every Cocoa developer should internalize.  A handful of others come to mind (of course it&#8217;s up to you where to draw the line &#8212; otherwise the list would never end).</p>
<p>Regarding memory management:</p>
<p>* &#8220;Ownership&#8221; has a specific meaning here that is not quite like the non-programming meaning of the word.  An object can have multiple owners, and be owned multiple times by the same owner.</p>
<p>* You should be aware of the possibility of retain cycles.</p>
<p>Regarding Objective-C (though it seems you&#8217;re addressing framework issues more than language issues):</p>
<p>* Contrary to common misconception, methods do not have &#8220;named&#8221; parameters.  If they did you would not be able to have a method called performSelector:withObject:withObject:.  Which parameter would be the one named &#8220;withObject&#8221;?</p>
<p>* It&#8217;s perfectly okay to send messages to nil, and to simplify code accordingly.  This is something that people new to Objective-C seem to have trouble getting their heads around.</p>
]]></content:encoded>
	</item>
</channel>
</rss>

<!-- Dynamic Page Served (once) in 0.263 seconds -->

