<?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>Ayarafun &#187; Te</title>
	<atom:link href="http://www.ayarafun.com/author/jabberwock/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.ayarafun.com</link>
	<description>Make , Creative and Let &#039;s fun</description>
	<lastBuildDate>Sun, 05 Feb 2012 07:30:54 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.2.1</generator>
		<item>
		<title>เริ่มต้นเขียนโปรแกมด้วยภาษา Python กันเถอะ (ตอนที่ 2 ภาคติดตั้งอาวุธ)</title>
		<link>http://www.ayarafun.com/2009/09/begin-programming-with-python-part-2/</link>
		<comments>http://www.ayarafun.com/2009/09/begin-programming-with-python-part-2/#comments</comments>
		<pubDate>Sat, 19 Sep 2009 19:02:06 +0000</pubDate>
		<dc:creator>Te</dc:creator>
				<category><![CDATA[Python]]></category>

		<guid isPermaLink="false">http://www.ayarafun.com/?p=1165</guid>
		<description><![CDATA[บทความตอนนี้เราจะมาติดตั้ง python กันครับ แต่ก่อนที่เราจะเริ่มต้นเขียนโปรแกรมกันได้ ก็ต้องติดตั้ง python บนเครื่องก่อนครับ โดย installer ของ python สามารถ download ได้จาก http://www.python.org ซึ่งเมื่อเข้าไปดูก็จะมีอยู่หลาย version ให้เลือกด้วยกัน โดย version ล่าสุดที่มีอยู่ตอนนี้คือ python 3.1.1 (release วันที่ 17 สิงหาคม พ.ศ. 2552) แต่เนื่องจากตั้งแต่ version 3.0 เป็นต้นมา มีการเปลี่ยนแปลงทางโครงสร้างของภาษาค่อนข้างมาก ถ้าเป็นรถยนต์ก็เรียกได้ว่าเป็น major change เลยทีเดียว และยังเพิ่งออกมาได้ไม่นานนัก (version 3.0.1 เพิ่งถูก release ออกมาวันที่ 13 กุมภาพันธ์ พ.ศ. 2552 ) ทำให้ extension package ต่างๆ ที่ทำโดย third


No related posts.

Related posts brought to you by <a href='http://yarpp.org'>Yet Another Related Posts Plugin</a>.]]></description>
			<content:encoded><![CDATA[<p>บทความตอนนี้เราจะมาติดตั้ง python กันครับ</p>
<p style="text-align: justify;">แต่ก่อนที่เราจะเริ่มต้นเขียนโปรแกรมกันได้ ก็ต้องติดตั้ง python บนเครื่องก่อนครับ โดย installer ของ python สามารถ download ได้จาก <a title="python official site" href="http://www.python.org" target="_blank">http://www.python.org</a> ซึ่งเมื่อเข้าไปดูก็จะมีอยู่หลาย version ให้เลือกด้วยกัน โดย version ล่าสุดที่มีอยู่ตอนนี้คือ python 3.1.1 (release วันที่ 17 สิงหาคม พ.ศ. 2552) แต่เนื่องจากตั้งแต่ version 3.0 เป็นต้นมา มีการเปลี่ยนแปลงทางโครงสร้างของภาษาค่อนข้างมาก ถ้าเป็นรถยนต์ก็เรียกได้ว่าเป็น major change เลยทีเดียว และยังเพิ่งออกมาได้ไม่นานนัก (version 3.0.1 เพิ่งถูก release ออกมาวันที่ 13 กุมภาพันธ์ พ.ศ. 2552 )<span style="color: #000000;"><span style="text-decoration: underline;"><strong> ทำให้ extension package ต่างๆ ที่ทำโดย third party นั้นยังไม่ support </strong></span></span>ดังนั้นผมจึงแนะนำให้ใครก็ตามที่เริ่มเล่น python ในช่วงนี้เล่น version 2.6 ไปก่อนครับ <img src='http://www.ayarafun.com/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </p>
<p style="text-align: justify;">นอกจากเรื่อง version แล้ว ก็ต้องดูในเรื่องของ OS platform ด้วย ซึ่งแต่ละ OS ก็จะมี package และวิธีการติดตั้งของใครของมัน ซึ่งตัวผมเองใช้ทั้ง MS Windows และ Linux แต่สำหรับในบทความนี้ผมจะเอาใจคนที่ใช้เป็น windows platform ครับ <img src='http://www.ayarafun.com/wp-includes/images/smilies/icon_razz.gif' alt=':P' class='wp-smiley' /> ? เพราะงั้นแล้วตอน download ก็ให้มองหาหัวข้อที่เป็น windows installer ซึ่งจะมีหน้าตาเหมือนกับในรูปนี้ครับ<a href="http://www.ayarafun.com/wp-content/uploads/2009/09/download-installer1.jpg"><br />
</a></p>
<p style="text-align: center;"><a href="http://www.ayarafun.com/wp-content/uploads/2009/09/download-installer1.jpg"><img class="aligncenter size-full wp-image-1595" title="download-installer1" src="http://www.ayarafun.com/wp-content/uploads/2009/09/download-installer1.jpg" alt="" width="620" height="196" /></a></p>
<p style="text-align: justify;">เนื่องจากใน version 2.6.2 นั้น ตัว windows installer มีปัญหาเล็กน้อย ทำให้ manual ที่แถมมากับ package ไม่สามารถแสดงข้อมูลในบางหน้าได้ ดังนั้นแล้วจึงต้อง download ตัวใหม่มา copy ทับแทนตัวเก่า เพราะฉะนั้นตอนที่ download ตัว installer ให้ทำการ download ตัว manual มาด้วยอีกไฟล์ครับ (python262.chm)</p>
<p style="text-align: right;"><strong>(อ่านต่อคลิกได้เลยครับ)</strong><span id="more-1165"></span></p>
<h5>เริ่มต้นติดตั้ง Python</h5>
<p>หลังจากที่ download ตัว installer แล้ว ให้ double click ตัว installer นั้น แล้วก็ดำเนินการติดตั้งตามขั้นตอนไปเรื่อยๆ จนเสร็จสิ้น</p>
<p><a href="http://www.ayarafun.com/wp-content/uploads/2009/09/installation-begin.jpg"><img class="aligncenter size-full wp-image-1596" title="installation-begin" src="http://www.ayarafun.com/wp-content/uploads/2009/09/installation-begin.jpg" alt="" width="498" height="432" /></a></p>
<p style="text-align: center;"><a href="http://www.ayarafun.com/wp-content/uploads/2009/09/installation-copying.jpg"><img class="aligncenter size-full wp-image-1597" title="installation-copying" src="http://www.ayarafun.com/wp-content/uploads/2009/09/installation-copying.jpg" alt="" width="499" height="432" /></a></p>
<p style="text-align: center;"><a href="../wp-content/uploads/2009/09/installation-end.jpg"><img title="installation-end" src="../wp-content/uploads/2009/09/installation-end.jpg" alt="" width="499" height="432" /></a></p>
<p style="text-align: justify;">เมื่อติดตั้งเสร็จให้เราทำการ copy ตัวไฟล์ manual ที่ชื่อ python262.chm ไปแทนที่ตัวเก่า (ปกติจะเก็บอยู่ที่ c:\Python26\Doc) จากนั้นเราก็จะมี core system ของ python ให้เราเริ่มเล่นได้แล้ว <img src='http://www.ayarafun.com/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </p>
<h5 style="text-align: justify;">ติดตั้ง Core ไปแล้วแล้วต้องใส่อะไรเพิ่มอีกไหม ?</h5>
<p style="text-align: justify;">อย่างที่บอกว่าบทความนี้จะเอาคนใช้ window platform เพราะฉะนั้น ผมจึงแนะนำให้ติดตั้ง extension package เพิ่มก่อน 1 ตัว ซึ่งก็คือ pywin32 ซึ่งสามารถ download ได้จาก <a title="pywin32 download page" href="http://sourceforge.net/projects/pywin32" target="_blank">http://sourceforge.net/projects/pywin32</a> โดยให้ download ตัว package ที่ใช้กับ python 2.6 แล้วทำการ double click ตัว installer แล้วทำการติดตั้งให้เสร็จสิ้น ซึ่ง package นี้จะมีประโยชน์อย่างมากในภายหลัง ในกรณีที่เราต้องการพัฒนาโปรแกรมที่เรียกใช้การจัดการส่วนลึกของ MS Windows ผ่าน win32 api เช่น การเรียกใช้ device ที่ต่อเข้ากับเครื่อง, การสร้าง window service, การจัด priority ของ task เป็นต้น ซึ่งถ้ามีโอกาสก็จะกล่าวถึงในตอนต่อๆ ไปครับ</p>
<p style="text-align: center;"><a href="http://www.ayarafun.com/wp-content/uploads/2009/09/installation-pywin32.jpg"><img class="aligncenter size-full wp-image-1599" title="installation-pywin32" src="http://www.ayarafun.com/wp-content/uploads/2009/09/installation-pywin32.jpg" alt="" width="598" height="395" /></a></p>
<p>หลังจากที่ติดตั้งโปรแกรมเรียบร้อยแล้ว ก็จะมี menu ของ python เพิ่มเข้ามาใน start menu ซึ่งจะรวม link สำหรับเปิดโปรแกรมต่างๆ ที่เกี่ยวข้องรวมถึงเอกสารคู่มือการใช้งานด้วย</p>
<p style="text-align: center;"><a href="http://www.ayarafun.com/wp-content/uploads/2009/09/python-in-start-menu.jpg"><img class="aligncenter size-full wp-image-1594" title="python-in-start-menu" src="http://www.ayarafun.com/wp-content/uploads/2009/09/python-in-start-menu.jpg" alt="" width="451" height="145" /></a></p>
<p>โดยแต่ละ link ที่อยู่ในรายการได้แก่</p>
<ul>
<li><strong>IDLE (Python GUI)? &#8211; </strong>เป็น IDE ขนาดเล็กที่รวมเอา editor และ interactive interpreter เข้าด้วยกัน ใช้สำหรับเขียนโปรแกรม, ทดสอบการทำงานรวมถึงสั่งให้โปรแกรมที่เขียนขึ้นทำงานด้วย</li>
<li><strong>PythonWin</strong> &#8211; เป็น interactive interpreter</li>
<li><strong>Python (command line) </strong>- เป็นการเรียกใช้ interactive interpreter ผ่านจาก window command prompt</li>
<li><strong>Python Manuals</strong> &#8211; เป็นคู่มือการใช้งาน python และรายละเอียด API</li>
<li><strong>Python for Windows Documentation</strong> &#8211; เป็นคู่มือการใช้งานและรายละเอียด API ของ pywin32</li>
<li><strong>Module Docs</strong> &#8211; เป็นโปรแกรมที่ใช้ดูรายละเอียด API ของ built-in modules ที่เราสามารถเรียกใช้ได้ในการเขียนโปรแกรม (ว่ากันง่ายๆ ก็คือ help แบบหนึ่ง แต่เป็น help ที่ใช้ดู API อย่างเดียว ไม่รวม concept ในการเขียนโปรแกรม)</li>
<li>Uninstall Python &#8211; ถอด Python ออกจากระบบ</li>
</ul>
<p style="text-align: justify;">โดยทั่วไปแล้ว เพียง python command line คู่กับ editor ถนัดๆ มือสักตัวก็เพียงพอต่อการพัฒนาระบบแล้ว แต่ถ้าใครที่ชื่นชอบการใช้ IDE ในการเขียนโปรแกรมก็อาจจะใช้ IDLE ซึ่งแถมมาให้แล้วก็ได้ หรืออาจจะไป download ตัว IDE อื่นๆ มาใช้ก็ได้ครับ อันนี้แล้วแต่ถนัด</p>
<p style="text-align: justify;">แต่หัวใจจริงๆ ของ<span style="text-decoration: underline;"><strong> python นั้น อยู่ที่ interpreter ซึ่งเป็นตัวที่ควบคุมและแปลผลการทำงาน code ที่เราเขียนขึ้น</strong></span> ซึ่งในตอนหน้าเราจะเริ่มใช้ interpreter เพื่อเข้าสู่ส่วนของการเขียนโปรแกรมครับ</p>


<p>No related posts.</p>
<p>Related posts brought to you by <a href='http://yarpp.org'>Yet Another Related Posts Plugin</a>.</p>]]></content:encoded>
			<wfw:commentRss>http://www.ayarafun.com/2009/09/begin-programming-with-python-part-2/feed/</wfw:commentRss>
		<slash:comments>11</slash:comments>
		</item>
		<item>
		<title>เริ่มต้นเขียนโปรแกรมด้วยภาษา Python กันเถอะ (ตอนที่ 1)</title>
		<link>http://www.ayarafun.com/2009/08/basic-python-programming-part1/</link>
		<comments>http://www.ayarafun.com/2009/08/basic-python-programming-part1/#comments</comments>
		<pubDate>Fri, 14 Aug 2009 18:13:18 +0000</pubDate>
		<dc:creator>Te</dc:creator>
				<category><![CDATA[Python]]></category>
		<category><![CDATA[programming]]></category>

		<guid isPermaLink="false">http://www.ayarafun.com/?p=843</guid>
		<description><![CDATA[เริ่มต้นกันสักที่บทความทางคอมพิวเตอร์ ตอนแรกว่าจะเขียนเรื่อง การพัฒนา GUI Application ด้วย WxPython แต่ลองมาคิดดูว่า ถ้ายังเล่น Python กันไม่เป็นเนี่ย การที่จู่ๆ จะให้มานั่งอ่านบทความการสร้าง GUI มันคงจะมึนน่าดู ดังนั้นแล้ว ผมก็เลยว่าแนะนำการเขียนโปรแกรมด้วยภาษา Python กันก่อนสัก 2-3 บทความก่อนละกัน เวลาที่ไปดู WxPython จะได้ไม่มึนนัก ทำไมต้อง Python? หลายๆ คนถามผมบ่อยเหมือนกันว่าทำไมต้องใช้ Python ในเมื่อสถาบันศึกษาหลายแห่งก็ไม่เห็นบรรจุในหลักสูตรวิชา Basic Programming (ส่วนใหญ่สอน C, C++, หรือไม่ก็ Java) แสดงว่า Python มันไม่เจ๋งจริงรึเปล่า? ถ้าให้สารภาพตามตรง เมื่อก่อนผมก็คิดว่าในเมื่อ C/C++ กับ Java มันทำได้ตั้งมากมายขนาดนั้นตั้งแต่งาน Low-Level ยัน High-Level แล้วผมจะหัดอีกภาษาเพิ่มให้มึนเพิ่มทำไมกัน แต่จากความบังเอิญ (แกมบังคับ) ที่ได้มาใช้งานมันจนถึงทุกวันนี้ ทำเอาผมแทบขี้เกียจกลับไปเขียน C++


No related posts.

Related posts brought to you by <a href='http://yarpp.org'>Yet Another Related Posts Plugin</a>.]]></description>
			<content:encoded><![CDATA[<p style="margin-left: 0pt; margin-right: 0pt; text-align: justify;">เริ่มต้นกันสักที่บทความทางคอมพิวเตอร์ ตอนแรกว่าจะเขียนเรื่อง <em><strong>การพัฒนา GUI Application ด้วย WxPython</strong></em> แต่ลองมาคิดดูว่า ถ้ายังเล่น Python กันไม่เป็นเนี่ย การที่จู่ๆ จะให้มานั่งอ่านบทความการสร้าง GUI มันคงจะมึนน่าดู ดังนั้นแล้ว ผมก็เลยว่าแนะนำการเขียนโปรแกรมด้วยภาษา Python กันก่อนสัก 2-3 บทความก่อนละกัน เวลาที่ไปดู WxPython จะได้ไม่มึนนัก</p>
<h5 style="margin-left: 0pt; margin-right: 0pt; text-align: left;"><span style="text-decoration: underline;">ทำไมต้อง Python?</span></h5>
<p style="margin-left: 0pt; margin-right: 0pt; text-align: justify;">หลายๆ คนถามผมบ่อยเหมือนกันว่าทำไมต้องใช้ Python ในเมื่อสถาบันศึกษาหลายแห่งก็ไม่เห็นบรรจุในหลักสูตรวิชา <strong>Basic Programming</strong> (ส่วนใหญ่สอน C, C++, หรือไม่ก็ Java) แสดงว่า Python มันไม่เจ๋งจริงรึเปล่า?</p>
<p style="padding-left: 30px;"><em>ถ้าให้สารภาพตามตรง เมื่อก่อนผมก็คิดว่าในเมื่อ C/C++ กับ Java มันทำได้ตั้งมากมายขนาดนั้นตั้งแต่งาน Low-Level ยัน High-Level แล้วผมจะหัดอีกภาษาเพิ่มให้มึนเพิ่มทำไมกัน แต่จากความบังเอิญ (แกมบังคับ) ที่ได้มาใช้งานมันจนถึงทุกวันนี้ ทำเอาผมแทบขี้เกียจกลับไปเขียน C++ เลยทีเดียว</em></p>
<p style="margin-left: 0pt; margin-right: 0pt; text-align: justify;"><strong>Python </strong>เป็นภาษา<strong> Dynamic Object-Oriented Programming</strong> ที่ถูกพัฒนาขึ้นโดย <a href="http://www.python.org/%7Eguido/">Guido von Rossum</a> ในปี ค.ศ. 1990 (ปีนั้นผมยังเพิ่งเริ่มหัดพูดหัดเดินเอง <img src='http://www.ayarafun.com/wp-includes/images/smilies/icon_razz.gif' alt=':P' class='wp-smiley' />  ) และปัจจุบันถูกดูแลโดย Python Software Foundation (PSF) โดย Version ล่าสุดตอนนี้คือ Python 3.1 หรือเรียกอีกอย่างว่า Python 3000 หรือ Py3k (ไม่รู้ว่ากะจะใช้จนถึงปีค.ศ. 3000 รึเปล่า 555 <img src='http://www.ayarafun.com/wp-includes/images/smilies/icon_razz.gif' alt=':P' class='wp-smiley' /> ) รายละเอียดเพิ่มเติมสามารถที่จะดูได้ที่ Official Site ที่ <a href="http://www.python.org/">http://www.python.org</a></p>
<p style="margin-left: 0pt; margin-right: 0pt; text-align: center;"><a href="http://www.ibiblio.org/"><img class="aligncenter" src="http://www.ibiblio.org/Dave/Dr-Fun/df200004/df20000406.jpg" alt="" width="553" height="411" /></a></p>
<p style="margin-left: 0pt; margin-right: 0pt; text-align: left;">สิ่งที่ดึงดูดผมให้ชอบ Python ก็คือมันเป็นทั้ง Cross Platform และมี Open Source License ดังนั้นแล้วหมายความว่า</p>
<p style="margin-left: 0pt; margin-right: 0pt; text-align: justify; padding-left: 30px;"><em><strong>&#8220;ถ้าผมพัฒนาโปรแกรมสักตัวด้วย Python ผมสามารถที่จะเอาไปทำงานบน? Operating System ได้หลากหลาย ไม่ว่าจะเป็น? MS Windows, Linux, หรือ OS/X เป็นต้น (Cross Platform) โดยที่ผมมีอิสระในการแก้ไข Library ต่างๆ ที่ Python ให้มา รวมถึงการนำ Software ที่พัฒนาขึ้นจาก Python ไปทำประโยชน์ทางธุรกิจได้อย่างเต็มที่โดย ไม่เสียเงิน ครับ ^___^ (Open Source License)&#8221;</strong></em></p>
<p style="margin-left: 0pt; margin-right: 0pt; text-align: justify;">นอกจากนี้ตัวโครงสร้างและ Syntax ของภาษาค่อนข้างอ่านง่าย เข้าใจง่าย และมี Object ด้าน Data Structure รองรับอยู่หลายแบบแล้ว ทำให้ Python เป็นของ <strong>ฟรี</strong> และของ<strong> ดี</strong> ที่ช่วยให้พัฒนาโปรแกรมได้เร็วขึ้น มันจึงเพิ่มความมันส์ในการเขียนโปรแกรมให้กับ Programmer หลายคน (รวมถึงผมด้วย ^___^)</p>
<p style="margin-left: 0pt; margin-right: 0pt; text-align: justify;">เพื่อให้เข้าใจได้ง่ายขึ้นว่า โครงสร้างมันเขียนง่ายอ่านง่ายยังไง ลองมาดูตัวอย่างกันนิดหน่อยดีกว่า ว่าระหว่าง Java กับ Python เขียนอ่านยากง่ายต่างกันยังไง</p>
<p style="margin-left: 0pt; margin-right: 0pt; text-align: left;">เริ่มจะสนุกแล้วคลิกข้างล่าง เพื่ออ่านต่อได้เลยนะครับ &#8212;&#8212;&gt;&gt;&gt;&gt;<span id="more-843"></span></p>
<p style="margin-left: 0pt; margin-right: 0pt; text-align: left;"><strong>ตัวอย่างที่ 1:</strong> ตัวอย่างโปรแกรมยอดฮิต &#8220;Hello world !&#8221; (อีกแล้วเหรอ :-p )</p>
<p style="text-align: left;"><strong>สำหรับ Java</strong></p>
<pre class="brush : java">public class
{
   public static void main(String[]args)
   {
         System.out.println("Hello, world!");
   }
}</pre>
<p style="text-align: left;"><strong>สำหรับ Python</strong></p>
<pre class="brush : python">print "Hello, world!"</pre>
<p style="margin-left: 0pt; margin-right: 0pt; text-align: left;">จะเห็นได้ชัดเจนว่าทางฝั่ง Java เขียนได้ยาวกว่ามาก ยิ่งถ้านับถึงความวุ่นวายในการเรียก method แล้ว ทาง Python เขียนสั้นและอ่านง่ายกว่าอย่างชัดเจน ผู้อ่านบางคนอาจจะบอกว่าทางฝั่ง Java ผมยกเอาทั้ง main function มาเต็มรูปแบบมันก็ต้องยาวสิ แต่ผมก็จะบอกเหมือนกันว่า ทางของ Python นั้น ก็เป็น main function เต็มรูปแบบเหมือนกันครับ</p>
<p style="margin-left: 0pt; margin-right: 0pt; text-align: left;">ลองดูตัวอย่างต่อไปก็จะเห็นได้เช่นกันว่า แม้กระทั่งการประกาศตัวแปรหรือการใช้ Conditional Statement ก็ยังดูกระทัดรัดกว่า</p>
<p style="margin-left: 0pt; margin-right: 0pt; text-align: left;">
<p style="margin-left: 0pt; margin-right: 0pt; text-align: left;"><strong>ตัวอย่างที่ 2:</strong> การประกาศตัวแปรและลักษณะการใช้ Conditional Statement</p>
<p style="margin-left: 0pt; margin-right: 0pt; text-align: left;"><strong>สำหรับ Java</strong></p>
<pre class="brush : java">int myCounter = 0;
String myString=String.valueOf(myCounter);
if (myString.equals(?0?))

              . . .</pre>
<p><strong>สำหรับ Python</strong></p>
<pre class="brush : python">myCounter = 0
myString = str(myCounter)
if myString == ?0?:

              . . .</pre>
<p>ใน Java และ C/C++ การประกาศตัวแปรจะต้องระบุชนิดของตัวแปรอย่างชัดเจน แต่ใน Python นั้น การใช้งานตัวแปรต่างๆ ไม่จำเป็นต้องมีการประกาศและกำหนดชนิดของตัวแปรก่อน นอกจากนั้นการเปรียบเทียบค่าของตัวแปรก็ใช้ operator แทนการใช้ method ทำให้เขียนอ่านเข้าใจง่ายกว่า</p>
<p>ในเรื่องของตัวแปรที่เกี่ยวข้องกับ Data Structure ยกตัวอย่างเช่น Linked List ทาง Python เองก็มีลักษณะที่กะทัดรัดกว่าเช่นกัน สังเกตได้จากตัวอย่างที่ 3 ข้างล่าง การประกาศใช้ Linked List ของ Python ไม่จำเป็นต้องกำหนดประเภทของข้อมูลของ Linked List ล่วงหน้า ทำเพียงแค่ประกาศขึ้นมาลอยๆ แล้วสามารถที่จะทำข้อมูลมาใส่เพื่อใช้งานได้เลย ^___^</p>
<p><strong>ตัวอย่างที่ 3:</strong> การใช้งาน Data Structure ประเภท Linked List</p>
<p><strong>สำหรับ Java</strong></p>
<pre class="brush : java">public Vector aList = new Vector;
public int aNumber = 5;
public int anotherNumber;

aList.addElement(aNumber);

anotherNumber = aList.getElement(0);</pre>
<p><strong>สำหรับ Python</strong></p>
<pre class="brush : python">aList = []
aNumber = 5

aList.append( aNumber )

anotherNumner = aList[0]</pre>
<p style="text-align: center;">อ้างอิงตัวอย่างการเปรียบเทียบจาก <a href="http://www.ferg.org/projects/python_java_side-by-side.html">http://www.ferg.org/projects/python_java_side-by-side.html</a>)</p>
<h4><span style="text-decoration: underline;">แล้ว Python มันดีกว่า Java หรือ C/C++ ในทุกๆ ด้านจริงเหรอ?</span></h4>
<p>แน่นอนครับว่า Python มีข้อดีมาก แต่ก็ใช่ว่าจะไม่มีข้อเสียเลยเมื่อเทียบกับ C/C++? <img src='http://www.ayarafun.com/wp-includes/images/smilies/icon_razz.gif' alt=':P' class='wp-smiley' /> </p>
<p><strong>ประการแรกเลยครับ</strong> Python เป็น Scripting Language ซึ่งทำงานโดยมี Interpreter แปลงคำสั่งในแต่ละบรรทัดของโปรแกรมให้เป็น machine code ในระหว่างที่โปรแกรมทำงาน โดยไม่มีการ compile ตัว source code ทั้งหมดเป็น machine code ก่อนเริ่มการทำงานของโปรแกรม ดังนั้นสิ่งที่จะพบแน่ๆ คือ มันจะทำงานช้ากว่า C/C++ (รวมถึง Java ด้วย )</p>
<p><strong>ประการที่สอง</strong> ที่เป็นผลพวงตามมาจากข้อแรกคือ มันไม่มีการตรวจสอบความถูกต้องของการเรียกใช้ตัวแปรทั้งหมดของโปรแกรมก่อนเริ่มทำงาน ดังนั้นแล้ว ถ้าผู้เขียนขาดความระมัดระวังในระหว่างพัฒนาโปรแกรม จะทำให้โอกาสเกิด Runtime Error จากการเรียกใช้ตัวแปรที่ไม่ได้ประกาศหรือใช้งานตัวแปรผิดประเภทได้ง่าย (สาเหตุส่วนใหญ่ของกรณีพวกนี้เท่าที่ผมพบก็คือ พิมพ์ชื่อตัวแปรผิด) ซึ่งความผิดพลาดพวกนี้จะไม่ถูกค้นพบจนกว่าโปรแกรมจะถูกสั่งให้ทำงานจนถึงบรรทัดที่มีปัญหานั้น</p>
<p>อย่างไรก็ตามแม้ว่าโปรแกรมที่พัฒนาด้วย Python จะมีความเร็วในการทำงานช้ากว่า C/C++ และ Java แต่สิ่งแลกกลับมาก็คือ<em><strong> ความเร็วในการพัฒนาโปรแกรม</strong></em> ลองคิดดูครับว่า ถึงแม้ C/C++ จะทำงานเร็ว แต่ใช้เวลาในการพัฒนาโปรแกรมค่อนข้างนาน โดยเฉพาะอย่างยิ่ง งานที่ต้องใช้ Data Structure ที่มีความซับซ้อนมาก ซึ่งไอ้ความนานของการพัฒนานี่เองที่ทำให้ผู้เขียนอาจจะเบื่อที่จะพัฒนาโปรแกรมไปก่อน (เพราะทำไม่เสร็จสักที) ยิ่งถ้าเป็นงานที่เกี่ยวกับธุรกิจแล้ว อาจจะส่งผลความเบื่อนี้ให้กับลูกค้าของเราด้วย ^^; ซึ่งในหลายๆ ครั้ง สิ่งที่พบในงานจริงๆ นั้น ลูกค้ามักจะอยากได้โปรแกรมไปใช้เร็วๆ มากกว่าได้โปรแกรมเร็วๆ แต่ไม่รู้ว่าพัฒนาเสร็จเมื่อไหร่ ดังนั้นเรื่องความเร็วในการทำงานจึงไม่เป็นปัญหามากนัก ยกเว้นว่าโปรแกรมมันจะทำงานช้ามากๆๆๆๆๆ จนคนใช้โปรแกรมรำคาญ <img src='http://www.ayarafun.com/wp-includes/images/smilies/icon_razz.gif' alt=':P' class='wp-smiley' /> </p>
<p>จริงๆ แล้วมันมีเทคนิคในการนำ C/C++ มาผสมกับ Python เพื่อนำข้อดีด้านความเร็วในการทำงานของ C/C++ กับความยืดหยุ่นและความง่ายในการเขียนของ Python มารวมเข้าด้วยกันโดยใช้ tools เสริม ซึ่งไว้โอกาสหลังๆ ผมจะพูดถึงเรื่องนี้อีกทีหนึ่งตอนที่เราทำกันเรื่องที่ Advance มากๆ แล้วครับ ^___^</p>
<p>เป็นยังไงบ้างครับ หวังว่าทุกท่านที่แวะผ่านเข้ามาที่นี่ น่าจะมีความรู้จักเบื้องต้นกับ Python แล้ว ^___^ ในบทความหน้า ผมจะเขียนถึงวิธีการติดตั้งโปรแกรมและ tools สำหรับการพัฒนาโปรแกรมเบื้องต้นด้วย Python ครับ สำหรับตอนนี้ผมขอจบเท่านี้ก่อนล่ะน่อ สวัสดีครับ</p>


<p>No related posts.</p>
<p>Related posts brought to you by <a href='http://yarpp.org'>Yet Another Related Posts Plugin</a>.</p>]]></content:encoded>
			<wfw:commentRss>http://www.ayarafun.com/2009/08/basic-python-programming-part1/feed/</wfw:commentRss>
		<slash:comments>16</slash:comments>
		</item>
	</channel>
</rss>

