<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	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/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>PUPASOFT BLOG! &#187; Objective-c</title>
	<atom:link href="http://blog.pupasoft.com/category/programming/objective-c/feed/" rel="self" type="application/rss+xml" />
	<link>http://blog.pupasoft.com</link>
	<description>Proactive Units for Practical Applications</description>
	<lastBuildDate>Tue, 27 Apr 2010 08:31:51 +0000</lastBuildDate>
	<generator>http://wordpress.org/?v=2.9.2</generator>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
			<item>
		<title>มาเริ่มเขียน Objective-C กับ Xcode ซึโค่ย IDE</title>
		<link>http://blog.pupasoft.com/2009/10/30/%e0%b8%a1%e0%b8%b2%e0%b9%80%e0%b8%a3%e0%b8%b4%e0%b9%88%e0%b8%a1%e0%b9%80%e0%b8%82%e0%b8%b5%e0%b8%a2%e0%b8%99-objective-c-%e0%b8%81%e0%b8%b1%e0%b8%9a-xcode-%e0%b8%8b%e0%b8%b6%e0%b9%82%e0%b8%84%e0%b9%88/</link>
		<comments>http://blog.pupasoft.com/2009/10/30/%e0%b8%a1%e0%b8%b2%e0%b9%80%e0%b8%a3%e0%b8%b4%e0%b9%88%e0%b8%a1%e0%b9%80%e0%b8%82%e0%b8%b5%e0%b8%a2%e0%b8%99-objective-c-%e0%b8%81%e0%b8%b1%e0%b8%9a-xcode-%e0%b8%8b%e0%b8%b6%e0%b9%82%e0%b8%84%e0%b9%88/#comments</comments>
		<pubDate>Thu, 29 Oct 2009 18:31:15 +0000</pubDate>
		<dc:creator>Emperor_bear</dc:creator>
				<category><![CDATA[Objective-c]]></category>
		<category><![CDATA[iPhone]]></category>
<category>Adder</category><category>obj-c</category><category>objective-c</category><category>Xcode</category>
		<guid isPermaLink="false">http://blog.pupasoft.com/?p=2664</guid>
		<description><![CDATA[

ก่อนอื่นเลย เปิดโปรแกรม Xcode ขึ้นมานะครับ
เลือก File -&#62; New Project&#8230;

ให้เราเลือก ที่ Application -&#62; Cocoa Application
ตั้งชื่อ และเลือกที่เก็บ(save) โปรเจคของเรา ขอตั้งชื่อว่า Adder ละกัน
จะได้หน้าตาประมาณนี้ออกมา

จะเห็นไฟล์เยอะแยะเลย จะขอไม่กล่าวถึงละกันเพราะยังไม่โปรพอกลัวอธิบายผิด มาสนใจไฟล์ main.m
จะมีโค้ดอยู่ได้ในดังนี้
#import &#60;Cocoa/Cocoa.h&#62;
int main(int argc, char *argv[])
{
return NSApplicationMain(argc,  (const char **) argv);
}
ทีนี้เราลองมาดูว่า ภาษา Objective-c จะคล้ายกับภาษา C บ้างอ๊ะเป่า ลองเพิ่มดู ( หลัง { ก่อน return )
printf(&#8220;Hello World&#8221;);
ลองรันดู กด command + enter
ผลลัพธ์
[Session started at 2009-10-30 01:13:54 +0700.]
Hello World
อืมๅ ทีนี้เราลองมาเขียนในในแบบ [...]]]></description>
			<content:encoded><![CDATA[<br />
<b>Warning</b>:  array_keys() [<a href='function.array-keys'>function.array-keys</a>]: The first argument should be an array in <b>/home/pupasoft/domains/pupasoft.com/public_html/blog/wp-content/plugins/simple-tags/inc/client.php</b> on line <b>1310</b><br />
<br />
<b>Warning</b>:  shuffle() expects parameter 1 to be array, null given in <b>/home/pupasoft/domains/pupasoft.com/public_html/blog/wp-content/plugins/simple-tags/inc/client.php</b> on line <b>1311</b><br />
<br />
<b>Warning</b>:  Invalid argument supplied for foreach() in <b>/home/pupasoft/domains/pupasoft.com/public_html/blog/wp-content/plugins/simple-tags/inc/client.php</b> on line <b>1312</b><br />
<p><img class="size-full wp-image-2668" title="xcode4" src="http://blog.pupasoft.com/wp-content/uploads/2009/10/xcode4.png" alt="xcode - logo" width="256" height="256" /></p>
<p><span id="more-2664"></span></p>
<p>ก่อนอื่นเลย เปิดโปรแกรม Xcode ขึ้นมานะครับ</p>
<p>เลือก File -&gt; New Project&#8230;</p>
<p><img class="alignnone size-medium wp-image-2671" title="screen-shot-2009-10-30-at-10247-am" src="http://blog.pupasoft.com/wp-content/uploads/2009/10/screen-shot-2009-10-30-at-10247-am-300x81.png" alt="screen-shot-2009-10-30-at-10247-am" width="300" height="81" /></p>
<p>ให้เราเลือก ที่ Application -&gt; Cocoa Application</p>
<p>ตั้งชื่อ และเลือกที่เก็บ(save) โปรเจคของเรา ขอตั้งชื่อว่า Adder ละกัน</p>
<p>จะได้หน้าตาประมาณนี้ออกมา</p>
<p><img class="alignnone size-medium wp-image-2672" title="screen-shot-2009-10-30-at-10823-am" src="http://blog.pupasoft.com/wp-content/uploads/2009/10/screen-shot-2009-10-30-at-10823-am-300x281.png" alt="screen-shot-2009-10-30-at-10823-am" width="300" height="281" /></p>
<p>จะเห็นไฟล์เยอะแยะเลย จะขอไม่กล่าวถึงละกันเพราะยังไม่โปรพอกลัวอธิบายผิด มาสนใจไฟล์ main.m</p>
<p>จะมีโค้ดอยู่ได้ในดังนี้</p>
<p>#import &lt;Cocoa/Cocoa.h&gt;</p>
<p>int main(int argc, char *argv[])<br />
{<br />
return NSApplicationMain(argc,  (const char **) argv);<br />
}</p>
<p>ทีนี้เราลองมาดูว่า ภาษา Objective-c จะคล้ายกับภาษา C บ้างอ๊ะเป่า ลองเพิ่มดู ( หลัง { ก่อน return )</p>
<p>printf(&#8220;Hello World&#8221;);</p>
<p>ลองรันดู กด command + enter</p>
<p>ผลลัพธ์</p>
<p>[Session started at 2009-10-30 01:13:54 +0700.]<br />
Hello World</p>
<p>อืมๅ ทีนี้เราลองมาเขียนในในแบบ Objective-C ดีกว่าเอาง่ายๆ ก่อนละกัน ลองสร้างตัวเลขมา 2 ตัวเป็นแบบจำนวนเต็ม ทีนี้ให้แสดงผลบวกออกมา</p>
<p>ลบบรรทัด printf ไปก่อน(ไม่ลบก็ได้นะตามใจ จะเติมต่อด้านหลังเลยก็ได้)</p>
<p>int a = 1;</p>
<p>int b = 2;</p>
<p>NSLog (@&#8221;The result is %d&#8221;,a+b);</p>
<p>ผลลัพธ์</p>
<p>the result is 3</p>
<p>เราจะใช้ method หรือ ฟังก์ชั่น NSLog เป็นตัวแสดง output ออกมาคล้าย printf แต่สังเกตได้ว่าเราต้องใส่ @ หน้า double-quote(&#8220;) หากเราลองเปิด doc ดูของ NSLog จะเห็นว่าเป็นแบบนี้</p>
<p><code>NSLog(NSString* format,...)</code></p>
<p>เห็นมั้ยว่าเราต้องส่ง object ซึ่งเป็น NSString ไป ซึ่ง @ มีความสามารถแปลง string ธรรมดาไปเป็น NSString นะ ส่วนเรื่อง object เดี๋ยวจะพูดในกาลต่อไป</p>
<p>วันนี้ขอจบแค่นี้ก่อนละกันง่วงละ บ้ายบาย</p>
<p>reference:</p>
<p>http://borkware.com/rants/agentm/mlog/</p>
<p>Programming in Objective-C 2.0,Stephen G. Kochan</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.pupasoft.com/2009/10/30/%e0%b8%a1%e0%b8%b2%e0%b9%80%e0%b8%a3%e0%b8%b4%e0%b9%88%e0%b8%a1%e0%b9%80%e0%b8%82%e0%b8%b5%e0%b8%a2%e0%b8%99-objective-c-%e0%b8%81%e0%b8%b1%e0%b8%9a-xcode-%e0%b8%8b%e0%b8%b6%e0%b9%82%e0%b8%84%e0%b9%88/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>
