26.11.09

Google Wave ของเล่นใหม่จาก Google มีกันหรือยัง

เพิ่งได้รับเมล์จาก Google ว่าท่านได้รับสิทธิให้เข้าใช้ Google Wave หลังจากที่ผมได้เข้าไปเขียนๆๆ บอกถึงสิ่งที่เราอยากจะเข้าไปทดลองใช้ Google wave แล้วก็รอๆๆๆ ในที่สุด ก็ได้ account ได้เข้าไปใช้ google wave แล้ว ถ้าเพื่อนๆสนใจอยากทดลองใช้ Google wave ก็ให้เข้าไปเขียนข้อความส่งไปที่ google ได้ที่นี่ Sign up  รอไม่ถึงสามวันก็น่าจะได้รับเมล์ส่งมาบอก

Google wave mail accept

หลังจากคลิกไปตามลิ้งค์ที่เค้าส่งให้มา ก็ถึงเวลาเข้าไปใช้ Google Wave แล้ว แต๊น แตน แต้น………นี่งัย Google Wave

Google Wave 

หลังจากเราได้มาแล้ว เราสามารถ invite เพื่อนๆของเราได้อีก 8 คน

ตอนนี้ก็ยังไม่รู้เลยว่ามันเอาไว้ใช้อะไร แต่รับรองได้เลยว่า Google ออก Application อะไรออกมารับรองไม่ผิดหวัง ฮือฮากันไปตามๆกันครับ

เพื่อนๆสามารถเข้าไปอ่านวิธีใช้งาน Google Wave ได้ ที่นี่ ครับ เดี๋ยวขอตัวไปลองเล่นก่อนนะ บาย

มาอัพเดทเพิ่มนิดหนึ่ง

หลังจากที่เราได้ invite เพื่อนๆเข้ามาแล้ว  แต่ว่า เพื่อนก็ยังต้องไป Sign up เพื่อสมัครขอเข้าใช้ที่ Google Wave เหมือนเดิมนะครับ แต่พอหลังจากที่เพื่อนเราได้ sign up เป็นที่เรียบร้อยแล้ว เราก็จะมองเห็นเพื่อนที่เรา invite ไป มาโผล่ที่ Google Wave application จากนั้นก็ลุยเลยครับ

จากที่ได้ลองเล่นดู ก็คล้ายๆเหมือนกับ web board ผสมกับ Email + Chating room ซึ่งเราสามารถที่จะทิ้งข้อความไว้ให้เพื่อนได้ เหมือนส่ง email นอกจากนี้เรายังสามารถดึงเพื่อนอีกคน เข้ามาในบทสนทนาที่เรากำลังสนทนากับอีกคนอยู่ก็ได้ นอกจากนี้ มันยังเก็บบทสนทนาเป็นหัวข้อๆ เพื่อให้เรากลับมาต่อเติม หรือตอบกลับในภายหลังได้ จะว่าไปแล้ว ก็เหมือน chating room ที่เอาไว้สนทนากัน โดยแบ่งหัวข้อสนทนาเป็นห้องๆนั่นเอง ส่วน feature อื่นๆยังไม่ได้ลองครับ คิดว่าน่าจะทำอะไรได้มากกว่านั้น เดี๋ยวจะพยายาม invite เพื่อนๆที่เรียนในห้องเดียวกันหันมาใช้ Google wave กันดีกว่า อย่างน้อย จะได้แลกเปลี่ยนความรู้ และเป็นแหล่งชุมชน ที่เราได้สนทนากัน ซึ่งมันจะทำให้เกิดความต่อเนื่อง และเป็นสังคมออนไลน์อย่างแท้จริง

Google Wave

อ่านเพิ่มเติม...

13.11.09

py2exe แปลง python ให้เป็น exe file

จริงๆแล้ว py2exe เป็น module ทีแยกออกมาจาก Distribution Utilities “disutils”  (เพราะฉะนั้นจะไม่มีมากับ python ที่เรา install เข้าไป ต้อง download แยกมาต่างหาก) ซึ่งเจ้าตัว py2exe จะทำหน้าที่แปลงโค๊ดที่เราเขียนเป็นภาษา python ให้เป็นไฟล์ exe ซึ่งสามารถนำไปรันบนวินโดวน์เครื่องไหนๆก็ได้ตามที่ต้องการ โดยที่เครื่องนั้นๆ ไม่จำเป็นต้องลงตัวแปลภาษา python แต่อย่างใด

ก่อนจะพาไปสู่การติดตั้งและการใช้งาน py2exe ผมอยากจะเล่าเหตุผลที่ผมสนใจเจ้าตัว python ก็เพราะว่ามันสามารถทำงานได้เกือบจะครอบคลุมทั้งหมดเลยก็ว่าได้ เช่น มีอยู่ครั้งหนึ่งที่ผมพยายามที่จะเขียนหน้าเว็บด้วย PHP แล้วให้ user ทำการ คลิกนู่น คลิกนี่ บนหน้าเว็บแล้วให้มีการส่งคำสั่งไปยัง hardware ที่ต่ออยู่กับเครื่องคอมพิวเตอร์ ลำพังเพียง PHP อย่างเดียวไม่สามารถทำได้แน่นอน จะต้องใช้ PHP ไปเรียกโปรแกรมอื่นๆอีก อาจจะเป็นโปรแกรมที่เราเขียนด้วย Visual basic หรือไม่ก็เขียนด้วยภาษา C หรืออะไรก็ตามแต่ จะเห็นได้ว่า เพื่อนๆจะต้องศึกษา PHP แล้วก้ไปศึกษาโปรแกรมอื่นๆอีก นอกจากนี้ เพื่อนๆยังอาจจะพบปัญหาถึงความที่สองโปรแกรมเข้ากันไม่ได้อีก ก็เลยเป็นที่มาที่ผมอยากจะนำเสนอภาษา python ที่พร้อมสรรพสำหรับทุกเรื่อง มาว่ากันต่อ

อันดับแรกเลยของการใช้ py2exe ก็ให้เพื่อนๆไปดาวน์โหลดตัวโปรแกรมนี้มาก่อนจากที่นี่ โดยเราต้องเลือก version ที่มัน support ตรงกับ python ที่เราได้ติดตั้งไว้แล้วที่เครื่องของเรา เมื่อได้มาแล้ว ก็ทำการติดตั้งโปรแกรมตามสัญชาตญาณดั้งเดิม Nextๆๆๆๆ แล้วก็ Next lol หลังจากติดตั้งเรียบร้อยแล้ว อย่าลืมไป set path ด้วยนะครับ จะได้เรียกใช้ไฟล์ได้ง่ายๆ

C:\Python26\Lib\site-packages\py2exe

set parh py2exe

ในตัวอย่างนี้ ผมก็เอามาจากในเว็บ http://www.py2exe.org/index.cgi/Tutorial นั่นแหละ เป็นตัวอย่างง่ายๆ เพื่อให้เกิดความเข้าใจก่อน หลังจากนั้นก็ค่อยไปประยุกต์เอาเอง เริ่มจากการสร้งโค๊ด python ง่ายๆขึ้นมาก่อน

แล้ว save เป็น ไฟล์ hello.py ลองรันดูด้วยว่าได้ Hello World ออกมาไหม

 



C:\Tutorial>python hello.py
Hello World!

C:\Tutorial>



 


ก่อนที่จะไปขั้นตอนการแปลงไฟล์ python ให้เป็นไฟล์ exe เพื่อนๆจะต้องทำการสร้างไฟล์สำหรับติดตั้งก่อน โดยสร้างไฟล์ดังต่อไปนี้




from distutils.core import setup
import py2exe

setup(console=['hello.py'])



 


แล้ว save เป็นไฟล์ setup.py เอาไว้ที่เดียวกันกะไฟล์ที่บันทึกก่อนหน้านี้



ในขั้นตอนนี้ เราจะทำการ complie โค๊ดที่เราเขีนให้เป็น ไฟล์ exe เพื่อพร้อมไปใช้งาน โดยพิมพ์คำสั่งนี้ที่ command line (




C:\Tutorial>python setup.py py2exe



จะได้ ข้อความขึ้นมาเพียบเลย



C:\Tutorial>python setup.py py2exe
running py2exe
*** searching for required modules ***
*** parsing results ***
creating python loader for extension 'zlib'
creating python loader for extension 'unicodedata'
creating python loader for extension 'bz2'
*** finding dlls needed ***
*** create binaries ***
*** byte compile python files ***
byte-compiling C:\Tutorial\build\bdist.win32\winexe\temp\bz2.py to bz2.pyc
byte-compiling C:\Tutorial\build\bdist.win32\winexe\temp\unicodedata.py to unicodedata.pyc
byte-compiling C:\Tutorial\build\bdist.win32\winexe\temp\zlib.py to zlib.pyc
skipping byte-compilation of c:\Python24\lib\StringIO.py to StringIO.pyc

[skipping many lines for brevity]

skipping byte-compilation of c:\Python24\lib\warnings.py to warnings.pyc
*** copy extensions ***
*** copy dlls ***
copying c:\Python24\lib\site-packages\py2exe\run.exe -> C:\Tutorial\dist\hello.exe

*** binary dependencies ***
Your executable(s) also depend on these dlls which are not included,
you may or may not need to distribute them.

Make sure you have the license if you distribute any of them, and
make sure you don't distribute files belonging to the operating system.

ADVAPI32.dll - C:\WINDOWS\system32\ADVAPI32.dll
USER32.dll - C:\WINDOWS\system32\USER32.dll
SHELL32.dll - C:\WINDOWS\system32\SHELL32.dll
KERNEL32.dll - C:\WINDOWS\system32\KERNEL32.dll

C:\Tutorial>


พอเข้าไปดูใน C:\Tutorial> จะมี folder เพิ่มขึ้นมา 2 folder คื build และ dist ซึ่ง folder build เราสามารถลบทิ้งได้หลังจากสร้าง package เสร็จเรียบร้อยได้เลย ลองทดสอบโปรแกรมที่ได้




C:\Tutorial>cd dist

C:\Tutorial\dist>hello.exe
Hello World



 


ก็พอได้แนวทางกันแล้วนะครับ ลองๆเล่นกันดูนะครับ วันหลังผมจะมาแนะนำการติดตั้งตัวเสริม python อีกตัวหนึ่งที่จะทำให้เพื่อนๆสามารถเขียน python แบบ GUI ได้สะดวกยิ่งขึ้น  วันนี้พอเท่านี้ก่อน เหนื่อยแล้ว สวัสดีครับ

อ่านเพิ่มเติม...

12.11.09

ทำ Python ให้เป็น CGI (Apache+Python)

จากคราวที่แล้วที่ผมเริ่มอยากจะเอาจริงกับภาษาไพธอนแล้ว ผมก็เริ่มที่จะมองหาโปรเจคทำ ซึ่งผมคิดว่าการเรียนรู้ภาษาใดๆ โดยเริ่มจากการเรียนรู้จากการทำโปรเจคทำให้เราสามารถเรียนรู้ภาษานั้นได้เร็วกว่าการที่เรามานั่งอ่านหนังสือแล้วทำตามตัวอย่าง ซึ่งอาจทำให้เกิดการเบื่อหน่ายได้ง่ายๆ สุดท้ายก็อาจจะจบด้วยการล้มเลิกลงกลางคัน

โดยส่วนตัวแล้ว ผมค่อนข้างที่จะถนัดการเขียนโปรแกรมแนว web base ซะมากกว่า windows base วันนี้ผมก็เลยตั้งใจว่าจะทำการ config apache web server ให้สามารถเข้าใจตัวแปลภาษา python สักหน่อย เพื่อที่เราจะได้ลองเขียนภาษา python ให้สามารถทำงานบนเว็บ page ได้ ตอนแรกนั้นผมพยายามที่จะติดตั้งโมดูลตัวหนึ่งที่ชื่อ mod_python แต่ก็ไม่สามารถทำได้สักที

 

 

Mod_python คือ โมดูลที่เอาไว้สำหรับรวมต้วแปลภาษาไพธอนเข้ากับเว็บเซอร์วิส (ในที่นี้คือ Apache) ซึ่งจะทำให้เราสามารถเขียนเว็บ CGI ด้วยภาษาไพธอนได้นั่นเอง

 

หลังจากที่ได้พยายามนานมากหมดไปครึ่งวัน ทั้ง search หาในอินเตอร์เนต ก็พบว่าฝรั่งเค้าก็มีปัญหาเหมือนๆกันกับเรา ปัญหาที่เจอก็คือหลังจากติดตั้งโมดู mod_python นั้น เราไม่พบไฟล์ mod_python.so ซึ่งจริงๆไฟล์นี้น่าจะไปอยู่ใน folder C:\AppServ\Apache2.2\modules ซึ่งในตอนติดตั้งมันก็ถามเราอยู่นะ ว่า folder ที่เราติดตั้ง Apache อยู่ตรงไหน แต่ไหงพอเลือกแล้ว พี่แก error ขึ้นมาเฉยๆ เซ็งเลย

 mod_python

mod_python_error 

สุดท้ายก็มาจบที่วิธีที่ง่ายมากๆ (เวงกรรม แล้ว mod_python ใครคนคิดขึ้นมาเนี่ย!!!) แค่ติดตั้ง python เสร็จ แล้วเข้าไป config ที่ไฟล์ httpd.conf แค่เนี้ย

AddHandler cgi-script .cgi .py .pl

ScriptAlias /cgi-bin/ "c:/apache/cgi-bin/"

แล้วก็เขียน code ด้วย python ขึ้นมาแล้วไปวางไว้ที่ C:\AppServ\www\cgi-bin (เค้าบอกว่าด้วยเหตุผล security)

 

#!C:\Python24\python.exe -u

import cgi
import cgitb; cgitb.enable()  # for troubleshooting

print "Content-type: text/html"
print

print """
<html>

<head><title>Sample CGI Script</title></head>

<body>

  <h3> Sample CGI Script </h3>
"""

form = cgi.FieldStorage()
message = form.getvalue("message", "(no message)")

print """

  <p>Previous message: %s</p>

  <p>form

  <form method="post" action="index.cgi">
    <p>message: <input type="text" name="message"/></p>
  </form>

</body>

</html>
""" % message

 

แล้วก็ทดลอง run ดู

python web programming test

เอาหล่ะ ก็พอได้แนวคิดแล้ว ต่อไปก็ลองๆประยุกต์เอาโค๊ดที่เราเคยเขียนด้วยภาษาอื่น มาแปลงเป็น python ดู น่าจะช่วยให้เกิดความเข้าใจยิ่งขึ้นไปอีก สู้ๆๆ เดี๋ยวก็เขียนเป็นแหละ อย่าไปกลัวๆ

เพิ่มเติมอีกนิดครับ

หากเพื่อนๆต้องการที่จะ config apache เพื่อให้เราสามารถที่จะบันทึกไฟล์ python cgi script อยู่นอก cgi-bin ให้ทำการปรับแต่งไฟล์ httpd.conf ดังนี้

  • ให้ทำการมองหา #AddHandler cgi-script .cgi แล้วเอา comment ออก คือเครื่อง “#” ออกนั่นเอง
  • แล้วทำการปรับแต่ง SSL เพื่อให้สามารถวาง directory โค๊ดของเราที่ก็ได้ใน www directory โดยมองหาบรรทัดนี้ #AddType text/html .shtml และบรรทัดนี้ #AddOutputFilter INCLUDES .shtml โดยให้เราเอาเครื่องหมาย comment ออก “#”
  • ทำการบันทึกไฟล์ httpd.conf แล้ว restart apache
  • ทดลอง เขียนไฟล์ cgi แล้ว save แล้วลองทดสอบที่ browser ดูครับ

#!C:\Python24\python.exe
print "Content-Type: text/html\n\n"
print "Hello, world!"

python cgi script

ถ้าปรากฏแต่คำว่า Hello, World! แสดงว่าสำเร็จแล้วครับ

 

“….The first step is always the hardest
การเริ่มต้นทำสิ่งใดสิ่งที่ยากที่สุดก็คือตอนเริ่มต้นทำ…….”

อ่านเพิ่มเติม...

11.10.09

Pyhton Programming : งานเข้าแล้วครับพี่น้อง

ต้องบอกว่างานเข้าจริงๆ เพราะว่าต้องหันมาจับ Python จริงๆซะแล้ว ด้วยสถานการณ์บังคับ หลังจากที่จดๆจ้องๆ กันมานาน เห็นเค้าคุยกันหนักคุยกันหนา ถึงความสามารถของเจ้า Python ไม่ว่าจะเป็น บริษัทยักษ์ใหญ่อย่าง Google ใช้ Pyhon เป็นตัวหลักในการค้นหาข้อมูล หรือจะเป็นองค์กร NASA ใช้ในการจัดการ Model,Integration และระบบ Transformation ในงาน CAD/PDM/CAE

โดยเจ้าตัวไพธอนนี้ ถูกนำไปใช้ในงานหลากหลายประเภทมาก ไม่ว่าจะเป็นงานทางด้าน Web และ Internet Development, Database Access, Desktop GUI, Scientific และNumeric computation, Network programming, Game และ 3D Graphics Rendering ยกตัวอย่างมาเพียงแค่นี้ ก็พอที่จะทำให้เราอดใจไว้ไม่ไหวแล้ว ที่จะต้องศึกษาตัวนี้ให้ได้ และประการสำคัญเลย ที่บริษัทใช้ python เป็นภาษาหลักในการทดสอบฮาร์ดดิสค์ไดร์ฟ (ใครจะเข้ามาทำงานที่นี่ รู้แล้วใช่ไหม ต้องเก่งอะไรถึงจะได้งานบริษัทนี้ รู้แล้วใช่ไหม );

เมื่อพูดถึงหนังสือภาษาไทยที่เขียนเรื่องไพธอน ก็เห็นจะมีอยู่เล่มเดียวที่วางขายบนแผงหนังสือ ซึ่งจริงๆผมซื้อหนังสือมาไว้แล้วหล่ะ ชื่อหนังสือ “การเขียนโปรแกรมภาษาไพธอนด้วยตนเอง” ซึ่งมีเนื้อหาย่อๆ ประมาณนี้

การเขียนโปรแกรมภาษาไพธอนด้วยตนเอง

“… ภาษาไพธอนเป็นภาษาที่พัฒนาในกลุ่ม Open Source มีข้อเด่น คือ สนับสนุนแนวคิดแบบออปเจกต์โอเรียนเทดและประกอบด้วยมอดูลสำหรับงานด้านต่าง ๆ เช่น Regular Expression, Multi-Threading, Network, XML, การสื่อสารระหว่างไมโครคอนโทรลเลอร์ผ่านอนุกรมและพอร์ตขนาน อื่น ๆ เว็บไซด์ Google ถูกพัฒนาขึ้นจากภาษาไพธอน, บริษัท ILM (Image Light and Magic) ใช้ภาษาไพธอนสร้างเทคนิคคอมพิวเตอร์กราฟิกสำหรับภาพยนตร์แอนนิเมชัน, ระบบปฏิบัติการ Redhat ใช้ภาษาไพธอนเป็นInstaller (ตัวติดตั้งระบบปฏิบัติการ), นาซา (NASA) ใช้ภาษาไพธอนสำหรับโครงการสำรวจอวกาศ, Zope ใช้ไพธอนสร้าง CMS (Content Management System), Bit Torrent เกิดขึ้นจากภาษาไพธอน หนังสือเล่มนี้เป็นหนังสือการเขียนโปรแกรมภาษาไพธอนเล่มแรกของชาวไทย (ฉบับภาษาไทย) เนื้อหาภายในได้วางรากฐานที่เป็นประโยชน์ซึ่งทำให้เข้าใจองค์ความรู้ที่ เกี่ยวข้องกับการเขียนโปรแกรมด้วยภาษาไพธอน ซึ่งอธิบายด้วยภาพประกอบการยกตัวอย่างคำอธิบายมากกว่า 400 ตัวอย่าง …”   

หนังสือเล่มนี้ยังดูไม่จบครับ ที่ดูไม่จบก็เพราะมันต้อดูไปด้วย แล้วทำไปด้วย ไม่ค่อยได้จับจริงๆจังๆ ก็เลยดูไม่จบสักที คราวนี้คงได้ดูจนจบแน่ๆครับ นอกจากนี้ยังมีไฟล์ e-book ที่เป็นไฟล์ pdf ที่อีกไฟล์หนึ่งที่น่าสนใจ “ภาษาโปรแกรมมิ่งไพธอน” (คลิกอ่านที่นี่) ซึ่งเป็นมหาวิทยาลัยนเรศวร ครับก็เป็นอีกทางเลือกหนึ่งไว้ให้เพื่อนศึกษากันครับ

ยังมีอีกเล่มนึงที่ผมคิดว่าน่าสนใจมากๆ ได้อ่านคร่าวๆแล้ว เค้าเขียนอธิบายไม่ยาก ถึงแม้จะเป็น text book ก็ตาม นั่นก็คือ “Beginning Python: From Novice to Professional” ผมชอบเล่มนี้ตรงที่เค้าเขียนด้วยภาษาที่ค่อนข้างทำความเข้าใจได้ไม่ยาก สมกับชื่อแล้วมันเหมาะกับมือใหม่จริงๆ  เพื่อนๆน่าจะหามาเก็บไว้นะ พอดีผมเห็นว่า google book เค้าทำ review เล่มนี้เอาไว้พอดี เพื่อนๆสามารถอ่านดูบางบท เพื่อประกอบการตัดสินใจซื้อเล่มนี้ก่อน

เอาเป็นว่าช่วงนี้ ผมคงจะพยายามเขียนเรื่องไพธอนให้มากขึ้น พูดถึงให้บ่อยขึ้น เพื่อที่ตัวเองจะได้สนใจมากขึ้น เพื่อที่จะได้สำเร็จตามที่วัตถุประสงค์ที่ตั้งไว้

อ่านเพิ่มเติม...

30.9.09

CodeIgniter PHP Framework เครื่องมือช่วยให้งานเสร็จเร็วขึ้น

      คุณเป็นคนหนึ่งใช่ไหม ที่มีพลังมากมายมหาศาลในการเขียนโค๊ด PHP แบบ procedural แบบบ้าพลัง เขียนใหม่ทุกครั้งที่มีโปรเจคใหม่ โค๊ดเก่าๆ ทิ้งไป ก๊อปปี้มาใช้เพียงบางส่วน บางส่วนเอามาวางยาตัวเองอีกตั้งหาก เขียนโค๊ดทีนึงเป็นพันๆบรรทัด เวลากลับมาแก้ไขที แทบอยากจะเขียนใหม่ ถ้าอย่างนั้น คุณกับผมก็หัวอกเดียวกัน   แล้วเราจะทำยังงัยหล่ะทีนี้ ในที่สุดผมก็เจอผู้ช่วย “CodeIgniter” เค้าคือ PHP Framework (โค๊ด)เล็ก เบา ใช้งานง่าย แต่ประสิทธิภาพเกินตัว

CodeIgniter เป็นเครื่องมือที่ทรงประสิทธิภาพ เพื่อนำมาใช้ในการพัฒนาการเขียนเว็บแอปพลิเคชั่นโดย PHP จุดประสงค์หลักของ CodeIgniter Framework นั้นก็คือ ถ้าคุณมีงานที่จะต้องทำเป็นประจำ อย่างเช่น เขียนหน้าเว็บที่รับค่าจาก user โดยจะต้องสร้างฟอร์มขึ้นมา หรือจะต้อวงเขียนโค๊ดเพื่อจัดการตัวแปร Session หรือทำหน้าเว็บเพื่อให้ user ทำการ upload/download ไฟล์บางอย่าง แทนที่เราจะต้องมานั่งเขียนโค๊ดเอง เราก็ใช้ CodeIgniter Framework แทน โดยเจ้าตัว CodeIgniter Framework มันมีเจ้าโค๊ดพวกนี้ และพวก Class ที่รองรับเรื่องพวกนี้อยู่แล้ว จะเห็นได้ว่า แค่เราปรับพฤติกรรมการเขียนโปรแกรมของเรา จากการเขียนโปรแกรมชนิดที่ต้องโปรแกรมเองทั้งหมด มาเป็นการเรียกใช้ Library หรือให้ใช้ class โดยศึกษาจากคู่มือ CodeIgniter เพียงเท่านี้ งานของเราก็จะเสร็จเร็วขึ้น หมดปัญหากับการวางยาตัวเองอีกต่อไป (เวลาเขียนโค๊ดเยอะๆ แล้วมันงงฉิบ)

CodeIgniter Feature

ในขณะที่ผมกำลังเขียนบทความนี้ ตอนนี้ CodeIgniter เค้าได้ออกเวอร์ชั่น 1.7.2 เรียบร้อยแล้ว ซึ่งในส่วนที่เพิ่มเข้ามาได้แก่

  • เข้ากันได้ดีกับ PHP 5.3.0 (ซึ่งโดยทั่วไป เค้ารองรับ PHP ตั้งแต่เวอร์ชั่น 4.3.2 ขึ้นไป )
  • เพิ่ม Class เกี่ยวกับ Shopping Cart เข้ามาด้วย (ถูกใจ คนที่ทำ e-commerce หล่ะทีนี้)
  • ปรับปรุงโดยเพิ่ม ส่วนของการช่วยเหลือในเรื่องการสร้าง form
  • เพิ่มคำสั่ง is_php('version_number') เอาไว้เช็คว่า runอยู่บน PHP เวอร์ชั่นอะไร
  • ปรับปรุงคำสั่ง show_error() ให้สามารถแสดง HTTP status ได้
  • แล้วก็แก้ไข Bug จากเวอร์ชั่นก่อนหน้านี้ (อันนี้เป็นเรื่องธรรมดา)

เพื่อนๆสามารถดาวน์โหลดได้ฟรีจากเว็บ CodeIgniter โดยตรง  image  Current Version

 

เหตุผลที่คุณต้องใช้ CodeIgniter :

* คุณต้องการเฟรมเวิร์คที่เรียนรู้ง่าย
* คุณต้องการประสิทธิภาพที่ยอดเยี่ยม
* คุณต้องการการรองรับกับโฮสพื้นฐานที่ถูกดำเนินการด้วย PHP หลากหลายรุ่นและการปรับแต่งที่ต่างกัน
* คุณต้องการเฟรมเวิร์คที่แทบจะไม่ต้องปรับแต่งค่าพารามิเตอร์ สำหรับการใช้งาน
* คุณต้องการเฟรมเวิร์คที่ไม่ต้องให้คุณใช้ Command Line
* คุณต้องการเฟรมเวิร์คที่ไม่ต้องยึดติดกับกฎการเขียนโค้ด
* คุณไม่สนใจไลบราีรี่ที่มีขนาดใหญ่มากอย่าง PEAR
* คุณไม่ต้องการถูกบังคับให้เรียนภาษาเทมเพลต (แต่เรามี template parser รองรับอยู่ ถ้าคุณต้องการ)
* คุณเหลีกเลี่ยงความสลับซ้อบซ้อน และชอบแก้ปัญหาด้วยวิธีง่ายๆ
* คุณต้องการเอกสารประกอบที่ละเอียดถี่ถ้วน

ข้อมูลจาก www.codeigniter.in.th

การทำงานของ CodeIgniter 

สมมุติว่าเราต้องการหน้าเว็บแอปพลิเคชั่น(สมมุติชื่อไฟล์ index.php) ซึ่งทำงานอะไรบางอย่าง เมื่อเรามีการเรียกใช้ CodeIgniter ในหน้าเว็บนั้น การทำงานจะเริ่มจาก หน้าใส่โค๊ดของเรา

CodeIgniter Work Flow

  1. หน้า index.php เป็นส่วนที่เราทำการออกแบบให้ไปเรียกใช้ CodeIgniter.
  2. Rounting : ตัว Router ทำการตรวจสอบ HTTP request กำหนดว่าควรจะทำอะไรกับมัน นอกจากนี้มันจะคอยตรวจสอบว่าข้อมมูลนี้เคยถูกเรียกใช้แล้วหรือยัง หากว่าเคยถูกเรียกใช้แล้ว มันจะไปดึงในส่วนของ Caching กลับไปให้ User ซึ่งตรงจุดนี้เองที่ทำให้ CodeIgniter Framework ทำงานได้เร็วกว่าการเขียนโค๊ดเอง
  3. Caching : ถ้ามีไฟล์แคชอยู่ ตัวมันจะถูกส่งกลับทันทีไปยังบราวเซอร์ โดยไม่ผ่านการทำงานปกติของระบบ
  4. Security : ก่อนที่จะโหลดตัวควบคุมของแอพพลิเคชั่น (Application Controller) HTTP request และผู้ใช้ใดๆที่ส่งข้อมูลมาจะถูกกรองข้อมูลเพื่อความปลอดภัย
  5. Application Controller : โหลดแบบจำลอง(Model) , ไลบรารี่หลัก(Libraries) , plugins, ผู้ช่วย (Helpers) และทรัพยากรอื่นๆที่จำเป็นในทำงานที่ถูกร้องขอมา
  6. สุดท้าย View ปฎิบัติงานและถูกส่งกลับไปยังบราวเซอร์เพื่อโชว์หน้าจอ ถ้าระบบแคชถูกใช้งาน หน้าจอจะถูกแคชก่อนแล้วจึงค่อยส่งสิ่งที่ร้องขอมาเป็นลำดับถัดไป

การติดตั้ง CodeIgniter Framework

ในส่วนของการติดตั้ง ผมยังไม่ได้ลองแต่ว่าผมได้ค้นหาข้อมูลในอินเตอร์เนตแล้ว เจอบทความเรื่องการติดตั้ง CodeIgniter ของคุณ “กิตติ เหมือนจันทร์แจ่ม” สำนักส่งเสริมและพัฒนาการเกษตรเขตที่ 2 จังหวัดราชบุรี ซึ่งผมเห็นว่าน่าจะละเอียดที่สุดแล้ว ก็เลยจะไม่ขอเขียนอธิบายในส่วนนี้ ให้เพื่อนๆไปอ่านจากนี้ได้เลยครับ ถ้ามีตรงไหนเพิ่มเติมผมจะมาเขียนเพิ่มในบล๊อกนี้แล้วกัน  คลิกดาวน์โหลด การติดตั้ง CodeIgniter

 

คู่มือการใช้งาน Codeigniter

ส่วนใครที่ไม่ค่อยถนัดอ่าน manual ภาษาอังกฤษ ไม่ต้องเป็นกังวลครับ ตอนนี้มีคนได้แปลคู่มือการใช้งาน CodeIgniter ออกมาเป็นภาษาไทยแล้ว ต้องขอขอบคุณ codeigniter.in.th ที่ทำให้เราทำงานได้ง่ายขึ้น เข้าไปอ่านคู่มือกันได้ที่นี่ครับ http://www.codeigniter.in.th/user_guide/index.html  เนื้อหา สารบัญอยู่ตรง tab ตารางเนื้อหาด้านบนครับ

CodeIgniter content ข้อมูลจาก www.codeigniter.in.th

จริงๆยังมีอะไรอีกมากมาย ไม่ว่าจะเป็นการใช้ Codeigniter กับ jQuery หรือกาารใช้ FormIgniter เพื่อ generate form เพื่อมาใช้กับ Codeigniter และยังมีลูกเล่นอื่นๆอีกมากมาย เอาไว้ให้เพื่อนๆไปศึกษาต่อกันเองครับ แต่ที่สำคัญของบทความนี้ ที่อยากจะยกให้เห็นว่า บางครั้งถ้ามันมี tool อยู่แล้ว เราก็ควรเลือกใช้และใช้ให้เป็น การใช้ tool ช่วย ไม่ได้หมายความว่า เราจะทำอะไรไม่เป็น คนที่ไม่ใช้ tool เลย เขียนเองทั้งหมด ก็ไม่ได้หมายความว่าคนนั้นจะเก่งเป็นเทวดา สุดท้ายแล้ว คนที่รู้จักจัดการและแก้ปัญหาต่างหากหล่ะ ที่ผมคิดว่าเค้าเก่งจริง วันนี้ก็ฝากไว้แค่นี้ก่อน สวัสดีครับ

อ่านเพิ่มเติม...
 

เกี่ยวกับฉัน(ไหมเนี้ย)

รายการบล๊อกอื่นๆ

  • Solved: error: 'TKD2' was not declared in this scope, LIFA_Base compile error - วันนี้ จะมาเล่าถึงปัญหาที่เจอในการเบิร์นโค๊ด LIFA_Base ที่เราใช้ในการทำให้ Arduino ของเราสามารถรับคำสั่งจาก LabVIEW ได้ ปัญหานี้ เริ่มเกิดขึ้นตอนที่ Ard...
  • Type-Fu : Typing practice game online - หากใครที่สนใจ หรือจะต้องทำงานเกี่ยวกับคอมพิวเตอร์ หนึ่งในความจำเป็นก็คือ จะต้องเรียนรู้ที่พิมพ์สัมผัสได้ เพราะการที่พิมพ์สัมผ้สได้ มันได้ประโยชน์หลายๆ อย...

Blog อื่นๆ ที่น่าติดตาม

เหล่าบรรดา Blogger