<?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>facebook application &#8211; PARINYA.NET</title>
	<atom:link href="https://www.parinya.net/node/tag/facebook-application/feed" rel="self" type="application/rss+xml" />
	<link>https://www.parinya.net</link>
	<description>ทฤษฎีการคำนวณสำหรับคอมพิวเตอร์และทฤษฎีการประมวลผลสารสนเทศ</description>
	<lastBuildDate>Sun, 16 Oct 2011 10:23:14 +0000</lastBuildDate>
	<language>th</language>
	<sy:updatePeriod>
	hourly	</sy:updatePeriod>
	<sy:updateFrequency>
	1	</sy:updateFrequency>
	<generator>https://wordpress.org/?v=6.7.2</generator>
	<item>
		<title>เกาะไส้ติ่ง Facebook Platform for Developer</title>
		<link>https://www.parinya.net/node/1616</link>
					<comments>https://www.parinya.net/node/1616#respond</comments>
		
		<dc:creator><![CDATA[ไท้ ปริญญา]]></dc:creator>
		<pubDate>Wed, 21 Sep 2011 03:07:22 +0000</pubDate>
				<category><![CDATA[Facebook]]></category>
		<category><![CDATA[Programming]]></category>
		<category><![CDATA[ไส้ติ่ง]]></category>
		<category><![CDATA[facebook]]></category>
		<category><![CDATA[facebook app]]></category>
		<category><![CDATA[facebook application]]></category>
		<category><![CDATA[facebook platform]]></category>
		<guid isPermaLink="false">http://www.parinya.net/?p=1616</guid>

					<description><![CDATA[Facebook Platform for Dev]]></description>
										<content:encoded><![CDATA[<p>Facebook Platform for Developer มีการปรับเปลี่ยนอยู่เรื่อย ๆ ครับ ออกแนวสามวันจาก Facebook เป็นอื่น แต่ถึงจะปรับเปลี่ยนบ่อยยังไง มันก็ต้องมีอยู่จุด ๆ หนึ่งที่ถือว่าเป็นการปรับเปลี่ยนใหญ่ ซึ่งผมนับได้เป็นจำนวนสามจุด ได้แก่ </p>
<ol>
<li>การที่ Facebook ขอให้ใคร ๆ เลิกใช้ FBML ซึ่งตัวเองปั้นมาเองกับมือ แต่ยังคงสนับสนุนอยู่อีกพักใหญ่ ๆ และไม่รู้ว่าจะถึงเมื่อไหร่ที่จะให้เลิกใช้เด็ดขาดไปเลย</li>
<li>บังคับให้แอปทุกตัวต้องเปลี่ยนการชำระเงินในทุก ๆ วิธี มาเป็นใช้ Facebook Credits แทน โดยทาง Facebook จะหักหัวคิวอร่อยเหาะที่ 30% ของมูลค่าการซื้อขายในแต่ล่ะครั้ง และถ้าใครไม่ทำตามแล้วตรวจเจอก็จะโดนแบน เรียกว่าโดนไม่ใช่น้อย</li>
<li>สั่งให้ทุกแอปต้องมี HTTP Secure เพื่อการรักษาความปลอดภัยที่ล้ำลึก จนไม่ว่าหน้าไหนก็ไม่สามารถจะล่วงล้ำก้ำเกินเข้าไปได้ (ทำให้เหมือนว่าแอปที่สร้างขึ้นมา สำคัญขนาดแอปของสถาบันการเงินเลยทีเดียวเชียว)</li>
</ol>
<p>พวกเราเคยเอะใจกันมั้ยครับว่า การที่เราต้องเปลี่ยนโน่นนี่นั่นตามเจ้าของ Platform มันทำให้เราเกิดต้นทุน แถมต้นทุนดังกล่าวก็ไม่มีใครมาจ่ายให้เราซะด้วย เราต้องเป็นคนแบกรับเอาไว้เอง!!!</p>
<p>ผมเลยเริ่มมองว่า การทำแอปเพื่อเชื่อมกับ Facebook นั้น เราต้องมากำหนดความสัมพันธ์กันแล้วล่ะ ว่าเราจะสนิทสนมสนุกสนานกับ Facebook แค่ไหน จะเกาะ Facebook ทั้งตัว หรือจะเกาะแค่ลำไส้ใหญ่ หรือจะเกาะแค่ไส้ติ่งของ Facebook ดี?</p>
<p>พอมอง ๆ ไปว่ากลไกในการต่อเชื่อมกับ Facebook มันมีกี่ระดับบ้าง ก็พอจะคลี่ออกมาได้เป็นสามแบบเหมือนกัน ได้แก่</p>
<ol>
<li>ใช้ Authentication, ใช้ Graph API, วางไว้ใน Canvas และต้องใช้ Facebook Credits &#8211; แบบนี้เห็นกันอย่างเยอะ เช่น พวกเกมที่ต้องเล่นผ่านหน้าจอของ Facebook เป็นต้น</li>
<li>ใช้ Authentication, ใช้ Graph API, ไม่วางไว้ใน Canvas แต่ใช้หน้าเว็บของตัวเอง และไม่ใช้ Facebook Credits &#8211; แบบนี้เป็นเฉพาะบางเกมหรือบางแอป ที่ต้องการระบบเครือข่ายสังคมของ Facebook แต่ปฏิเสธที่จะอยู่ในอาณาบริเวณหน้าจอของ Facebook เพราะว่าหน้าจอของ Facebook มันไม่เหมาะสมหรือสอดคล้องกับภาพลักษณ์ของเกมหรือแอป</li>
<li>ใช้ Authentication, ไม่ใช้ Graph API, ไม่วางไว้ใน Canvas แต่ใช้หน้าเว็บของตัวเอง และไม่ใช้ Facebook Credits &#8211; เราจะไม่เห็นแบบนี้ในเกมหรือแอป แต่จะเห็นในเว็บจำพวก BLOG ที่เขาเอาไว้เขียนเล่าเรื่องราวส่วนตัว อะไรประมาณนั้น</li>
</ol>
<p>ทั้งสามแบบล้วนต้องใช้ Authentication ของ Facebook และต้องลงทะเบียนแอปกับ Facebook อยู่ดี ซึ่งมันก็คงหนีไม่พ้นที่จะต้องทำตามนโยบายของ Facebook ต่อไป ไม่ว่าจะเป็นการเพิ่ม HTTP Secure เพื่อให้เกิดความปลอดภัย บลา ๆ ๆ เป็นต้น</p>
<p>โดยสรุปแล้วผมมองว่าการเกาะกับ Platform ที่มันเป็นที่นิยมและมีชื่อเสียงนั้น มันเป็นเรื่องที่ดี เพราะเราจะทุ่นแรงในการปฏิบัติหลาย ๆ อย่าง เพราะ Platform มันจัดการให้หมดแล้ว แต่ทว่า ถ้า Platform มันเปลี่ยนบ่อยซะเหลือเกิน แถมเปลี่ยนแต่ล่ะครั้งก็เกิดต้นทุนเงินตราและต้นทุนแรงงาน อันนี้เราก็คงต้องมาพิจารณากันแล้วล่ะมั้ง ว่าเราจะเกาะลำไส้ใหญ่เขา หรือเราจะเกาะเขาแค่ปลายไส้ติ่งดี เพื่อเวลาที่เราจะฉีกตัวออกมาใหญ่ของเราเอง พังผืดจากลำไส้ใหญ่ของเขา มันจะได้ไม่มายึดติดเราจนเราขยับไม่ได้อ่ะ</p>
]]></content:encoded>
					
					<wfw:commentRss>https://www.parinya.net/node/1616/feed</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
		<item>
		<title>คุยไปเรื่อย Facebook Application</title>
		<link>https://www.parinya.net/node/1563</link>
					<comments>https://www.parinya.net/node/1563#comments</comments>
		
		<dc:creator><![CDATA[ไท้ ปริญญา]]></dc:creator>
		<pubDate>Sun, 17 Jul 2011 10:31:31 +0000</pubDate>
				<category><![CDATA[Facebook]]></category>
		<category><![CDATA[Programming]]></category>
		<category><![CDATA[Video Log]]></category>
		<category><![CDATA[Web Service]]></category>
		<category><![CDATA[คุยไปเรื่อย]]></category>
		<category><![CDATA[facebook application]]></category>
		<guid isPermaLink="false">http://www.tai-parinya.com/?p=1563</guid>

					<description><![CDATA[พอดีผมเพิ่งซื้อขาตั้งกล้อ]]></description>
										<content:encoded><![CDATA[<p>พอดีผมเพิ่งซื้อขาตั้งกล้องมา เห่อมาก เลยเอามาลองทำ Video Log ดู เพราะเปิดบล็อกแห่งนี้มาก็ 6 ปีแล้ว ไม่อยากนำเสนอแบบซ้ำซากจำเจแล้ว เลยซัดซะหนึ่งดอก</p>
<p>โดยจะชวนพวกเราคุยสั้น ๆ เกี่ยวกับ Facebook Application แบบว่าสั้นจริง ๆ เพราะแบตกล้องมันเล่นหมดดื้อ ๆ ก็เลยถ่ายมาได้แค่นี้</p>
<p>httpv://www.youtube.com/watch?v=9ZlxrYeUYTg</p>
]]></content:encoded>
					
					<wfw:commentRss>https://www.parinya.net/node/1563/feed</wfw:commentRss>
			<slash:comments>5</slash:comments>
		
		
			</item>
		<item>
		<title>วิธีใช้ Amazon EC2 เพื่อประมวลผล Facebook Application</title>
		<link>https://www.parinya.net/node/1436</link>
					<comments>https://www.parinya.net/node/1436#comments</comments>
		
		<dc:creator><![CDATA[ไท้ ปริญญา]]></dc:creator>
		<pubDate>Thu, 09 Sep 2010 10:32:38 +0000</pubDate>
				<category><![CDATA[AWS]]></category>
		<category><![CDATA[Facebook]]></category>
		<category><![CDATA[Feature]]></category>
		<category><![CDATA[Web Service]]></category>
		<category><![CDATA[amazon ec2]]></category>
		<category><![CDATA[ประมวลผล]]></category>
		<category><![CDATA[cloud computing]]></category>
		<category><![CDATA[facebook]]></category>
		<category><![CDATA[facebook application]]></category>
		<category><![CDATA[web application]]></category>
		<guid isPermaLink="false">http://www.tai-parinya.com/?p=1436</guid>

					<description><![CDATA[ผมเขียนภาพข้างล่างนี้ขึ้น]]></description>
										<content:encoded><![CDATA[<p>ผมเขียนภาพข้างล่างนี้ขึ้นมาอย่างพื้นฐานและง่ายที่สุด เพื่อแจกแจงว่า ถ้าหากเราต้องการใช้ Amazon EC2 เพื่อประมวลผล Facebook Application แล้วล่ะก็ มันจะมีรูปภาพออกมาเป็นยังไง?</p>
<p><a href="https://www.parinya.net/wp-content/uploads/2010/09/facebook_via_aws.jpg"><img fetchpriority="high" decoding="async" src="https://www.parinya.net/wp-content/uploads/2010/09/facebook_via_aws.jpg" alt="" title="Facebook โดย Amazon Web Service" width="638" height="295" class="aligncenter size-full wp-image-1437" srcset="https://www.parinya.net/wp-content/uploads/2010/09/facebook_via_aws.jpg 638w, https://www.parinya.net/wp-content/uploads/2010/09/facebook_via_aws-300x138.jpg 300w" sizes="(max-width: 638px) 100vw, 638px" /></a></p>
<p>อธิบายภาพข้างบนสั้น ๆ ได้ดังนี้</p>
<ol>
<li>คุณต้องติดตั้ง Facebook Canvas เป็น, เข้าใจใน Facebook Graph API และเข้าใจใน Facebook Client Libraries (ทั้งหมดฟรี)</li>
<li>คุณต้องจดทะเบียน Domain (เสียตังค์) กับ Domain Registrar (Domain ที่ว่าก็คือ ไอ้พวก http://www.yourdomain.com อะไรเทือกนั้นแหล่ะ) เช่น Godaddy เป็นต้น</li>
<li>คุณต้องจดทะเบียน DNS (เสียตังค์) กับ DNS Provider เพื่อที่คุณจะได้ผูก Domain ของคุณเข้ากับ Amazon EC2 ได้</li>
<li>คุณต้องสมัครเพื่อใช้งาน Amazon EC2 (ไม่ต้องเสียตังค์) แล้วเข้าไปสร้าง Application + Db Instance (เสียตังค์ตามการใช้งาน) โดยสร้างขึ้นมาแค่ Instance เดียวก็พอ (ต่อไปถ้าคุณเก่ง คุณสามารถสร้างเยอะ ๆ ก็ได้นะเออ)</li>
<li>คุณต้องสร้าง Elastic IP ขึ้นมา (เสียตังค์) เพื่อให้ Instance ของคุณ สามารถติดต่อกับโลกภายนอกได้ โดยสร้างแค่ IP เดียวก็พอ (ก็ใช้แค่ Instance เดียวไง ก็เลยใช้แค่ IP เดียวก็พอ)</li>
<li>บังเอิญว่า Instance ใน Amazon EC2 เป็นพวกความจำสั้น ดังนั้น ถ้ามันโดน Restart หรือ Terminate เมื่อไหร่ล่ะก็ มันจะลืมทุกอย่างไปหมดเลย (รวมทั้ง Code และ DB ด้วย) ดังนั้น น่าจะเป็นการดี หากเราจะสร้าง Elastic Block Store ขึ้นมา (เสียตังค์) เพื่อเอามาเป็นที่พักข้อมูลจาก Instance เผื่อว่า Instance มันล่มหรืออะไรยังไง มันจะได้มีตัวสำรอง</li>
<li>แต่ถ้าคุณคิดว่า Elastic Block Store จะไม่ชัวร์ กลัวว่าตัวมันเองก็อาจจะล่ม คุณก็สามารถจะติดตั้ง Snapshot To S3 (เสียตังค์) เพื่อให้มันทยอยโอนข้อมูลของคุณ ไปเก็บไว้ใน Bucket (เสียตังค์) ของ Amazon S3 ก็ได้ (คุณต้องสมัครเพื่อขอใช้ Amazon S3 อันนี้ฟรี ไม่เสียตังค์)</li>
</ol>
<p>สรุปว่าจะประมวลผล Facebook Application บน Amazon EC2 ก็ต้องจ่ายพอตัวเหมือนกัน แต่ถ้าทำออกมาดี ๆ ก็น่่าจะคุ้มอ่ะนะ เพราะถ้าให้ไปประมวลผลบน Shared Hosting ก็คงไม่ได้ เพราะทรัพยากรจำกัดจำเขี่ยเหลือเกิน เกิดผีเข้าผีออก มีคนเข้า Facebook Application ของเราเยอะขึ้นมา ไปทำ Shared Hosting เขาล่ม เดี๋ยวเขาจะเฉดหัวออกมาแทบไม่ทัน</p>
<p>ส่วนจะไปประมวลผลบน Dedicated Server หรือ Virtual Private Server ก็ยุ่งยาก ต้องติดตั้งทุกอย่างเองทั้งหมด (Amazon EC2 มันเทพ สั่งสร้าง Instance โป้งเดียว มันติดตั้งระบบปฏิบัติการและปรับแต่งทุกอย่างให้หมดเลย)</p>
<p>ยิ่งเป็น Co-Location ก็ยิ่งแล้วใหญ่ เพราะเดี๋ยวนี้ฮาร์ดแวร์มันทันสมัยขึ้นแทบทุกวี่ทุกวัน จะให้เช่าซื้อ Server มาเป็นของตัวเองมันจะไม่คุ้ม แบบว่ายังไม่ทันไร Server ที่มีก็ตกยุคซะแล้ว หรือถ้าไม่ตกยุค แต่ต้องมาอัด RAM ทำ Server Farm เองก็หลังแอ่นเหมือนกัน</p>
]]></content:encoded>
					
					<wfw:commentRss>https://www.parinya.net/node/1436/feed</wfw:commentRss>
			<slash:comments>4</slash:comments>
		
		
			</item>
		<item>
		<title>วิธีเขียน Facebook Application แบบ Web Application ภาคเร่งรัด</title>
		<link>https://www.parinya.net/node/1409</link>
					<comments>https://www.parinya.net/node/1409#comments</comments>
		
		<dc:creator><![CDATA[ไท้ ปริญญา]]></dc:creator>
		<pubDate>Fri, 03 Sep 2010 05:10:27 +0000</pubDate>
				<category><![CDATA[Facebook]]></category>
		<category><![CDATA[Programming]]></category>
		<category><![CDATA[Web Service]]></category>
		<category><![CDATA[เขียนโปรแกรม]]></category>
		<category><![CDATA[facebook]]></category>
		<category><![CDATA[facebook application]]></category>
		<category><![CDATA[web application]]></category>
		<guid isPermaLink="false">http://www.tai-parinya.com/?p=1409</guid>

					<description><![CDATA[ถ้าคุณเป็นคนหนึ่งที่สนใจอ]]></description>
										<content:encoded><![CDATA[<p>ถ้าคุณเป็นคนหนึ่งที่สนใจอยากจะเขียน Facebook Application คุณจำเป็นที่จะต้องมีพื้นฐานดังต่อไปนี้</p>
<ol>
<li>คุณต้องรู้และเข้าใจภาษา PHP ในระดับหนึ่ง (ยิ่งเก่งยิ่งดี) เพราะมันเป็นภาษาทางการในการพัฒนา Facebook Application (ภาษาอื่นก็มี แต่ไม่นับเป็นภาษาทางการ)</li>
<li>คุณต้องรู้และเข้าใจหลักการของ Object Oriented Programming ซึ่งผมคิดว่าคนที่เรียนคอมพิวเตอร์มาทุกคน ล้วนเคยถูกกำหนดให้เรียนวิชานี้ทั้งนั้น (สมัยนี้นะ) ส่วนจะเรียนเป็นบทหนึ่งบทในรายวิชา หรือจะเรียนเป็นรายวิชาสามหน่วยกิต อันนี้ก็สุดแล้วแต่</li>
<li>คุณต้องรู้และเข้าใจภาษา Javascript ในระดับหนึ่ง (ยิ่งเก่งยิ่งดี) เพราะมันเป็นภาษาที่สร้างลูกเล่นเสริมให้กับ Facebook Application ของคุณ</li>
<li>คุณต้องรู้และเข้าใจหลักการของ Web Service เพราะมันเป็นกุญแจสำคัญในการสื่อสารระหว่าง Facebook Application กับ Facebook Platform</li>
</ol>
<p>ทีนี้เรามาดูเรื่องที่น่าสนใจเรื่องหนึ่งกัน นั่นก็คือ Facebook Application มีทั้งหมด 3 แบบ แบบแรกเป็น Desktop Application, แบบสองเป็น Web Application และแบบสามเป็น Mobile Application</p>
<p>แต่ล่ะแบบล้วนมีพื้นฐานทาง Web Service ที่เหมือนกัน แต่ว่ามีกลไกปลีกย่อยที่แตกต่างกันตาม Platform ของตัวเอง โดยหัวข้อนี้จะเน้นเกี่ยวกับแบบ Web Application เป็นสำคัญ</p>
<p>วิธีการเรียนรู้ที่ดีที่สุดก็คือการเรียนจากคนอื่น (ผมขี้เกียจเขียนอธิบาย) ดังนั้น ขอให้พวกเราเข้าไปดูบทความที่กูรูเขียนเอาไว้แล้วก่อน (เพื่อเป็นการปูพื้นฐาน) ตามหัวข้อข้างล่างนี้</p>
<p><span id="more-1409"></span></p>
<ol>
<li><a href="http://blog.levelup.in.th/2009/06/30/start-facebook-application-tutorial-for-beginner-php%E0%B9%80%E0%B8%A3%E0%B8%B4%E0%B9%88%E0%B8%A1%E0%B8%95%E0%B9%89%E0%B8%99%E0%B8%81%E0%B8%B1%E0%B8%9A%E0%B8%81%E0%B8%B2%E0%B8%A3%E0%B9%80%E0%B8%82/">เริ่มต้นกับการเขียน Facebook Application สำหรับผู้เริ่มต้น (PHP)</a></li>
<li><a href="http://blog.levelup.in.th/2009/07/31/start-facebook-application-tutorial-for-beginner-php-2%E0%B9%80%E0%B8%A3%E0%B8%B4%E0%B9%88%E0%B8%A1%E0%B8%95%E0%B9%89%E0%B8%99%E0%B8%81%E0%B8%B1%E0%B8%9A%E0%B8%81%E0%B8%B2%E0%B8%A3%E0%B9%80/">เริ่มต้นกับการเขียน Facebook Application สำหรับผู้เริ่มต้น (PHP) (2)</a></li>
<li><a href="http://blog.levelup.in.th/2009/08/27/start-facebook-application-tutorial-for-beginner-php-3%E0%B9%80%E0%B8%A3%E0%B8%B4%E0%B9%88%E0%B8%A1%E0%B8%95%E0%B9%89%E0%B8%99%E0%B8%81%E0%B8%B1%E0%B8%9A%E0%B8%81%E0%B8%B2%E0%B8%A3%E0%B9%80/">เริ่มต้นกับการเขียน Facebook Application สำหรับผู้เริ่มต้น (PHP) (3)</a></li>
<li><a href="http://blog.levelup.in.th/2009/11/30/start-facebook-application-tutorial-for-beginner-php-4%E0%B9%80%E0%B8%A3%E0%B8%B4%E0%B9%88%E0%B8%A1%E0%B8%95%E0%B9%89%E0%B8%99%E0%B8%81%E0%B8%B1%E0%B8%9A%E0%B8%81%E0%B8%B2%E0%B8%A3%E0%B9%80/">เริ่มต้นกับการเขียน Facebook Application สำหรับผู้เริ่มต้น (PHP) (4)</a></li>
<li><a href="http://blog.levelup.in.th/2010/08/30/start-facebook-application-tutorial-for-beginner-php-updated-graph-api%E0%B9%80%E0%B8%A3%E0%B8%B4%E0%B9%88%E0%B8%A1%E0%B8%95%E0%B9%89%E0%B8%99%E0%B8%81%E0%B8%B1%E0%B8%9A%E0%B8%81%E0%B8%B2%E0%B8%A3/">เริ่มต้นกับการเขียน Facebook Application สำหรับผู้เริ่มต้น (PHP) ฉบับปรับปรุง Graph API</a></li>
</ol>
<p>โอเค ผมจะัถือว่าพวกเราได้อ่านบทความในย่อหน้าข้างบนครบทุกอันแล้วนะ ทีนี้เรามาอธิบายส่วนของพื้นฐาน, การขยายความ และ ส่วนเสริมกันดีกว่า</p>
<p>สิ่งแรกที่จะบอกก็คือ Facebook เขาก็มีพัฒนาการของเขา ดังนั้น เขาย่อมไม่หยุดอยู่กับที่ ปรับโน่นเปลี่ยนนี่ไปเรื่อย ๆ รวมทั้ง API ของเขาด้วย โดยหลังจากที่ปล่อยให้มี API เดิมให้ใช้มาราวสองถึงสามปี จนกระทั่งผู้พัฒนา Facebook Application ใช้กันจนคล่อง ติดกันจนงอมแงมแล้ว เมื่อกลาง (ค่อนปลาย) ปี พ.ศ. 2553 ที่ผ่านมา ทาง Facebook ก็ออก API ตัวใหม่ออกมา นัยว่าเพื่อจะได้ใช้ง่ายขึ้น ดีขึ้น สะดวกขึ้น บลา ๆ ๆ ๆ ๆ โดยประกาศว่าให้ Facebook Application ใหม่ ๆ ที่ถูกสร้างขึ้น จงสร้างด้วย API ใหม่โดยพลัน ส่วน Facebook Application เก่า ๆ จะยังใช้ API เดิมได้อยู่ (แต่คงอีกไม่นาน)</p>
<p>นอกจากนี้ทาง Facebook ก็ตัดสินใจยกเลิกภาษาของตัวเอง (Facebook สร้างภาษา FBML ออกมา มันแบบ คล้าย ๆ กับ HTML แต่ไม่เป็นที่นิยม เลยต้องเลิกไป) แล้วหันไปสนับสนุน IFrame อย่างสุดแรงม้า (เว่อร์จริง ๆ)</p>
<p>ทีนี้มันก็จะเกิดเป็นประเด็นขึ้นมา เพราะ Facebook จำเป็นจะต้องรักพี่เสียดายน้อง เขาก็เลยยังคงต้องเก็บคู่มือในการใช้งาน API เก่า กับคู่มือในการใช้ API ใหม่เอาไว้ แถมดันเก็บรวม ๆ กันไว้อีกต่างหาก และที่สำคัญดันอธิบายแบบแยกส่วนด้วย (เออ เอากันเข้าไป)</p>
<p>และที่สำคัญ มีสิ่งหนึ่งที่นักพัฒนา Facebook Application เขารู้ แต่เขาไม่ค่อยเล่าให้ฟังกัน เนื่องจากมองว่ามันเป็นพื้นฐาน มันง่าย ใคร ๆ ก็น่าจะรู้ (ไม่จริงหรอก เรื่องเล็ก ๆ ง่าย ๆ นี่แหล่ะ มีคนไม่รู้เยอะ) นั่นก็คือ Facebook API มองได้เป็น 2 ส่วนใหญ่ ๆ คือ <strong>ส่วนของ ข้อตกลง Web Service</strong> และ<strong>ส่วนของ SDK</strong>!!!</p>
<p><strong>ส่วนของข้อตกลง Web Service</strong> อ่ะนะ เป็นมาตรฐานวิธีในการเชื่อมโยงข้อมูลระหว่าง Facebook กับ Facebook Application ของเรา ซึ่งทาง Facebook ทำคู่มือออกมาให้เราอ่านกัน (แบบโคตรละเอียด แต่ กูงง กูงง กูงง) ไม่่ว่าจะเป็นคู่มือที่ชื่อ <a href="http://developers.facebook.com/docs/guides/canvas/">Apps on Facebook.com</a> (อธิบายตั้งแต่การแสดงตน, ขอใช้สิทธิ์ และทำนู่นทำนี่) หรือ <a href="http://developers.facebook.com/docs/api">Grarph API</a> (อธิบายว่าการแสดงตน, ขอใช้สิทธิ์ และทำนู่นทำนี่ ต้องส่ง Request แบบ Web Service ไปหา Facebook เป็นจำนวนกี่ท่อน และแต่ล่ะท่อนต้องยัดอะไรใส่เข้าไปบ้าง)</p>
<p><strong>ส่วนของ SDK</strong> เป็นโค้ดของโปรแกรมแบบ Open Source ซึ่งพัฒนาขึ้นด้วยภาษาต่าง ๆ เช่น PHP หรือ Javascript เป็นต้น เพื่ออำนวยความสะดวกให้กับเรา ทำให้เราไม่จำเป็นต้องเขียนโค้ดเพื่อทำตามข้อตกลง Web Service ที่ Facebook กำหนดไว้ (มีชาวบ้านเขียนไว้ให้ ว่างั้น)</p>
<p>ถ้าถามว่า แบบนี้ เราก็ไม่จำเป็นต้องไปดาวน์โหลดโค้ด SDK มาก็ได้นี่หว่า เพราะถ้าเราแตกฉานในข้อตกลง Web Service ของ Facebook แล้ว เราก็สามารถจะเขียน SDK เองได้? ซึ่งผมก็คิดว่าอันนั้นก็จริงอ่ะนะ แต่จะลงมือทำไปทำติ่งอะไรล่ะ ในเมื่อเราเขียนเอง เขียนไปเขียนมา สุดท้ายมันก็ออกมาเหมือนกับ SDK ที่ำเขาทำให้อยู่ดี งั้นอย่าเสียเวลาเลยว่ะ ไปใช้ SDK ที่เขาทำก็สิ้นเรื่อง</p>
<p>โดย SDK ที่ว่าก็สามารถไปดาวน์โหลดได้ที่ <a href="http://github.com/facebook">GitHub</a> เลือกโหลดเฉพาะ <a href="http://github.com/facebook/php-sdk">PHP-SDK</a> (PHP Client Library) กับ <a href="http://github.com/facebook/connect-js">Connect-JS</a> (Javascript Client Library) นะ เพราะเป็นสิ่งที่โม้ ๆ อยู่ในหัวข้อนี้ (พอเข้าไปที่หน้าจอได้แล้ว อย่าลืมเหลือบไปดูที่เยื้อง ๆ มุมขวาของ Browser ด้วยล่ะ เพราะแถว ๆ นั้นมีปุ่ม &#8220;Download Source&#8221; ให้กด ก็กดตรงนั้นนั่นแหล่ะ จะได้ดาวน์โหลดมาทั้งยวงเลย!!!)</p>
<p>ต้องทำความเข้าใจก่อนว่า SDK ก็คือโค้ดที่มาเขียนเพื่อครอบข้อตกลงฯ ดังนั้น มันก็อาจจะเป็นชุดของ Function หรือเป็นชุดของ Class ก็ได้ โดยในที่นี้โค้ดของ PHP Client Library อ่ะเป็น Class ในขณะที่ Javascript Client Library อ่ะเป็น Function</p>
<p>ทีนี้ขึ้นชื่อว่าเป็น Class หรือ Function มันก็ต้องมีคู่มือประกอบใช่แมะ ว่ามันมีพารามิเตอร์อะไรบ้าง, มี Properties อะไรบ้าง หรือมี Method อะไรให้เรียกใช้ได้บ้าง?</p>
<p>ข่าวดีคือ Facebook ทำคู่มือ <a href="http://developers.facebook.com/docs/reference/javascript/">Javascript Client Library</a> เอาไว้ให้เราอ่านเพื่อทำความเข้าใจนะ แต่ข่าวร้ายคือ Facebook ไม่ได้ทำคู่มือ PHP Client Library เอาไว้ให้อ่ะ <strong>มันยังไม่มี ต้องเข้าไปดูในโค้ดของ SDK เอาเอง!!!</strong></p>
<p>มันก็เลยทำให้เราเกิดภาระเล็ก ๆ ขึ้นมา เพราะกลายเป็นว่า นอกจากเราจะต้องเรียนรู้ API ในส่วนของข้อตกลง Web Service แล้ว เรายังต้องมาเรียนรู้เพิ่มเติม (อีกเล็กน้อย) ในการใช้งาน PHP Client Library อีกหรือนี่???</p>
<p>ข้อสรุปอีกอย่างหนึ่งที่เกี่ยวกับ Facebook Application ก็คือ เราสามารถจะเขียน Facebook Application ด้วย PHP Client Library ล้วน ๆ ก็ได้ หรือจะเขียนผสม ๆ กันกับ Javascript Client Library ก็ได้ (อันนี้แล้้วแต่ความจำเป็น) นอกจากนี้ ถ้าเราเขียนมันจนชำนาญแล้ว เราก็ไม่จำเป็นต้องเขียนแบบ Pure PHP อีกต่อไป เพราะเราสามารถใช้ Web Application Framework (ไม่ว่าจะเป็น CakePHP หรือ CodeIgniter) เพื่ออำนวยความสะดวกให้เราเขียน Web Application ได้ง่ายและเร็วอีกด้วย</p>
]]></content:encoded>
					
					<wfw:commentRss>https://www.parinya.net/node/1409/feed</wfw:commentRss>
			<slash:comments>12</slash:comments>
		
		
			</item>
	</channel>
</rss>
