Monthly Archives: November 2008 - Page 2

เขียน UI อย่างง่ายๆ ด้วย XUL

XUL คืออะไร
XUL อ่านว่า ซูล เป็น User Interface Language ที่พัฒนาโดย Mozilla หรือการพูดให้ง่ายๆ ก็คือ XUL เป็นเครื่องมือในการสร้าง UI ด้วยการใช้ XML นั่นเอง

ถ้าหากใครได้เคยลองเขียนโปรแกรมแล้วมีการสร้าง UI ด้วยละก็ จะพบว่าไม่ง่ายนักที่เราจะเขียน UI ขึ้นมาใช้ในโปรแกรมหนึ่งๆ การวางโครงสร้างของ UI มักจะซับซ้อน และยุ่งยากมากขึ้น เมื่อโปรแกรมมีคุณสมบัติเพิ่มขึ้น

ตัวอย่าง UI ที่เขียนด้วยภาษา Java
ยกตัวอย่างในภาษา Java หาเราจะสร้าง UI เล็กๆ ที่ใช้แทนเครื่องคิดเลขดังรูปข้างล่างนี้

เราจะต้องเขียน Code,

TextField n1 = new TextField();
TextField n2 = new TextField();
Lable plus = new Lable("+");
Button eq = new Button("=");
TextField result = new TextField();
//สร้าง Panel เพื่อรองรับ Component ทั้งหมด
Panel p = new Panel();
p.add(n1);
p.add(plus);
p.add(n2);
p.add(eq);
p.add(result);

จะเห็นว่ามีขั้นตอนต่างๆ มากมายในการสร้าง UI ขึ้นมาตัวหนึ่ง และถ้ามีความจำเป็นต้องแก้ไข เพิ่ม หรือลบ Component บางตัวออกจาก UI ก็ทำได้ยาก โดยเฉพาะโปรแกรมขนาดใหญ่ที่มี UI หลากหลายแบบ

สร้าง UI ด้วย Thinlet (XUL for java)
Thinlet คือ Library ของภาษา Java ที่ใช้มารตฐาน XUL จากตัวอย่างข้างต้นเราสามารถแปลง โค้ดของ Java ให้อยู่ในรูปแบบของ XUL ได้ดังนี้



< panel gap="4" top="4" left="4">
< textfield name="number1" columns="4" />
< label text="+" />
< textfield name="number2" columns="4" />
< button text="=" action="calculate(number1.text, number2.text, result)" />
< textfield name="result" editable="false" />

จะเห็นได้ว่าเมื่อเรานำ XML มากำหนดโครงสร้างของ UI ด้วย Library ของ Thinlet  โค้ดเราก็สามารถอ่านได้ง่ายขึ้นด้วยมุมมองของ XML

หากใครสนใจเกี่ยวกับการใช้งาน Thinlet สามารถศึกษาเพิ่มเติมได้ที่

http://thinlet.sourceforge.net/home.html

ในเว็บไซต์จะมีการใช้งานอย่างละเอียดของแต่ละ component ต่างๆ และตัวอย่าง Application อื่นที่นำ Thinlet ไปใช้งานร่วมด้วย

Share

สวัสดี ขอนแก่น

มาถึงขอนแก่นแล้วเช้านี้

อากาศค่อนข้างเย็น ไม่ถึงกับหนาวสั่นมากนัก
เนื่องจากฝนตกต่อเนื่องในหลายวันที่ผ่านมา
การเดินทางเที่ยวนี้คงไม่มีกิจกรรมอะไรมากมาย

นั่ง เล่น กิน นอน พักผ่อนตามอัธยาศัย
ไปงานลอยกระทง ม.ขอนแก่น วันที่ 12 พฤศจิกายน 51
เดินทางไป จ.เลย เพื่อไปรับหลวงพี่ (สหายเก่า) ที่มีกำหนดการลาสิกขาเสาร์นี้ 15 พย. หลังจากบวชมา 4 เดือนตลอดเข้าพรรษา

สหายผู้ใดว่างอาจมีโอกาสได้พบปะสังสรรค์ ระหว่างช่วงหยุดยาวของผมนี้

สวัสดี มอขอ
สวัสดี ขอนแก่น

Share

ReadCamp พร้อมแล้ว

ตอนนี้ ReadCamp ได้ข้อสรุปแล้ว จะจัดขึ้น ณ หอศิลปวัฒนธรรมกรุงเทพฯ ในวันที่ 29 พ.ย. 2551 นี้ ตั้งแต่เวลา 10:00-19:00 น. ใครว่างก็มาแจมกัน กิจกรรมดีๆ แบบนี้ไม่ควรพลาด

ได้รู้จักเพื่อนใหม่
ใช้เวลาว่างให้เกิดประโยชน์

ลงทะเบียนเข้างานได้ที่นี่ -> คลิ๊กที่นี่

ReadCamp Logo

ปล. คุณการะเกต์ นักเขียนก็มาร่วมงานนี้ แถมมีการ์ตูนน่ารักๆ มาฝากชาว ReadCamp ไปชมข้างล่างกันได้เลย

Readcamp by Garagay

View SlideShare document or Upload your own. (tags: readcamp bangkok)
Share

สายลับ 007 กับเทคโนโลยี

เดินทางกลับอพาร์ทเมนท์ดังเช่นปกติเช่นทุกวัน ต้องผ่านโรงภาพยนต์เซ็นจูรี่ ตรงอนุสาวรีย์ เหลือบไปเห็นตารางภาพยนต์  007 – Quantum of Solace

โอ้ว้าว ตาฝาดไปเหรอนี่!

ไม่ฝาด ไม่ฝาก มองอีกที
เข้าแล้วเหรอนึกในใจ วันนี้เพิ่งวันพุธเองนะ
(ถ้าคนดูหนังบ่อยๆ จะรู้ว่า ปกติหนังใหม่จะเข้าทุกวันพฤหัสฯ)

จากที่ตั้งใจจะไปวิ่ง ก็กลายเป็นเดินเข้าไปต่อแถวซื้อตั๋วหนัง 007 ฉะนั้นแล

ไม่มีอะไรมากมาย จุดขายของหนังก็คือชื่อเรื่อง เจมส์ บอนด์ 007

ก็ใครๆ ก็อยากดู 007 นี่นา ..
มาดูซิว่าภาคนี้มีอะไร ???

เปิดเรื่องก็เริ่มด้วยฉากแอ็คชั่น
แล้วก็แอ็คชั่น

แอ็คชั่น แอ็คชั่น แอ็คชั่น แอ็คชั่น แอ็คชั่น แอ็คชั่น

แอักชั่นอีกแล้ว ..
จากต้นจนจบเรื่อง มีแต่แอ็คชั่น!!!

นั่งมองหาคำคมเด็ดๆ ตามสไตล์ฮอลลีวู้ดที่สอดแทรกเพื่อให้หนังดูดี เช่น

Great power comes with Great Responsibility (Spider man)
พลังที่ยิ่งใหญ่ ย่อมมาพร้อมกับความรับผิดชอบที่ยิ่งใหญ่ (ไอ้แมงมุม)

ไม่มี ไม่มี ไม่มีเลย
จะมีก็แต่ฉากบางตอนทีแสดงถึงมิตรภาพ หรือการให้กำลังใจระหว่างบอนด์กับสาวบอน แต่การแสดง และการสื่อความหมายก็ละหลวมเกินไป

โดยรวมแล้วหนังถือว่าแย่ แต่กราฟฟิกสวยๆ และการดำเนินเรื่องที่ไม่อืดนัก ก็ถือว่าถูไถ

แต่อย่างไร ก็ยังมีประทับใจอยู่บ้าง ….

Read more »

Share

ประธานาธิปดี สหรัฐฯ คนใหม่ – บารัค โอบาม่า

และแล้วผลการเลือกตั้งประธานาิธิปดี สหรัฐฯ คนใหม่ก็ออกมาอย่างเป็นไม่เป็นทางการ บารัค โอบาม่า ประธานาธิปดีผิวสี คนแรกของอเมริกา

ถึงแม้จะไม่ได้เป็นชาวอเมริกัน แต่ก็รู้สึกโล่งใจจริงๆ ที่ จอน แมคเคน ตัวแทนจากพรรครีพับลิกันไม่ได้

นึกถึงรีพับลิกัน แล้วทำให้นึกถึงบุช  แล้วนึกถึง  ….. สงคราม!

หวังว่างต่อไปคงจะไม่มีสงครามดังเช่น สงครามอิรัคอีกนะ

Share

อเมริกา – การเลือกตั้ง ปี 2008

พรุ่งนี้ (5 พย. 2551) ใครจะอยู่ใครจะไประหว่าง Barack Obama (รูปซ้าย) ผู้สมัครชิงตำแหน่งประธานาธิบดีสหรัฐจากพรรค Democrat และ John McCain (รูปขวา) ผู้สมัครจากพรรค Republican

อนาคตโลกจะเป็นอย่างไร?
ทิศทางเศรษฐกิจโลกจะไปทางไหน?

ติดตามข่าวสาร Update จากชาว Twitter แบบ Real-time ได้ที่ http://election.twitter.com/

Share

ปัญหา Flash Plugin บน FireFox บน Ubuntu 8.10 (Intrepid)

สืบเนื่องจากความเดินตอนที่แล้ว

ปัญหา Flash Plugin บน FireFox บน Ubutu 7.1 (Gutsy)

คราวนี้ปัญหากลับมาอีกครั้งในเวอร์ชั่น 8.10 (Intrepid) แต่ครั้งนี้เราสามารถลง Flash Plugin บน Firefox ได้สำหรับผ่าน FireFox Add-ons Manager แต่ไม่สามาถใช้งานได้

โดยปกติแล้ว FireFox Add-ons Manager จะติดตั้ง Flash Plugin ที่ชื่อว่า flashplugin-nonfree แต่ใน Ubuntu 8.10 นี้ flashpugin-nonfree จะทำงานเข้ากันกับตัว FireFox ที่ Release มาพร้อม Ubuntu ไม่ได้

atthakorn@chaos:~$ aptitude search flash
i   adobe-flashplugin               – Adobe Flash Player plugin version 10
p   flashblock                      – mozilla extension that replaces flash plug
p   flashplugin-nonfree             – Adobe Flash Player plugin installer

วิธีแก้ไขก็คือ ลองค้นหา Package จาก Repository โดยใช้คำสั่ง aptitude search flash แล้ว ให้มองหา Package ที่ชื่อว่า adobe-flashplugin  แล้วทำการติดตั้งโดยใช้คำสั่งดังนี้

atthakorn@chaos:~$ sudo aptitude install adobe-flashplugin

จากนั้นลองรัน Firefox แล้ว Browse ไปยังเวบไซต์ที่มี Flash ทดสอบดูจะพบว่า Flash Application สามารถใช้งานได้แล้ว

Share

นครชัยแอร์เปิดเส้นทาง กรุงเทพฯ – สุรินทร์แล้ว

ในที่สุดหลังจากรอมานานกว่า 4 ปีเต็ม การเดินทางที่แสนจะยากเย็นแสนเข็นจากกรุงเทพฯ ถึงภูมิลำเนา – สุรินทร์ ก็จะไม่ลำบากอีกต่อไป

ไม่ต้องนั่งรถไฟแอร์เสียบ่อยๆ หรือบางครั้งก็เสียเวลาเพิ่ม 1-4 ชั่วโมง ในการดินทางแต่ละครั้ง และปัญหาต่างต่างนานาอีกจะปาถะ

ต่อไปจะได้หลีกเลี่ยงบริษัทรถทัวร์ค่ายอื่น ที่ส่วนใหญ่ขับเร็ว และมีระบบจัดการที่แย่ เกิดอุบัติเหตบ่อยครั้ง ถึงแม้จะดีกว่า เร็วกว่ารถไฟ แต่คนสุรินทร์ส่วนใหญ่ก็ไม่เลือกรถทัวร์ในการเดินทางเข้ากรุงเทพฯ เนื่องจากเหตุผลทางด้านความปลอดภัย

ต่อไปนี้นครชัยแอร์ บริษัททัวร์อับดับหนึ่งของภาคอีสาน ที่มีเริ่มต้นจากสาย กรุงเทพฯ-ขอนแก่น บริการดี มีไมตรีจิต คนขับสองคน (ผลัดกันขับคนละครึ่งทาง) เวลาออกแน่นอน รถใหม่สะอาด มีศูนย์ลูกค้า ที่ไม่ต้องไปเบียดเสียดที่หมอชิตช่วงเทศกาล ได้เปิดให้บริการสายกรุงเทพฯ-สุรินทร์  เริ่มตั้งแต่วันที่ 5 ธันวาคม 2551 นี้ โดยรถจะออกวันละสองเที่ยว เช้า 9:25 น. และ เย็น 21:25 น. รับผู้โดยสารต่อคันได้ 32 คน เฉลี่ย 64 คนต่อวัน

พ่อแม่พี่น้องชาวสุรินทร์ลองไปใช้บริการได้เลยครับ

โฆษณาให้เลย ไม่ต้องเสียค่าใช้จ่าย เพื่อจะให้คนมาใช้มากๆ บริษัทเค้าจะได้เพิ่มรอบให้อีก เนื่องจากผมคิดว่า 64 คนยังน้อยไปต่อจังหวัดที่มีคนเดินทางไปกลับกรุงเทพฯ จำนวนมาก

ดูข้อมูลการเดินทางได้ที่ นครชัยแอร์ทัวร์ –>> www.nca.co.th

Share

Google DevFest in Bangkok

วันศุกร์ที่ผ่านมาทีม Google ได้มาจัดสัมนาที่ ม.จุฬาฯ โดยชื่องานว่า Google DevFest เนื้อหาในการสัมนาจะเกี่ยวกับ Google Web API และแนะนำบริษัทในเครือที่ Google สนับสนุน หรือเป็นพันธมิตรกับ Google

OpenSocial
OpenSocial คือ API ส่วนกลางที่ Google ได้พัฒนาขึ้นเพื่อพัฒนา Application ที่ใช้ในเว็บ Social Network เช่น Hi5, Friendster, Linkedln, Yahoo!, Orkut, Ning และอีกมากมาย

ตัวอย่าง Application ที่ถูกพัฒนาโดย OpenSocial API ของ Google ใน Hi5 ได้แก่ SuperPoke Pets, BuddyPoke, Buddy List

ข้อดีของ OpenSocial API ก็คือเราสามารถพัฒนา Application สำหรับเว็บไซต์ Social network เหล่านี้ได้ โดยใช้ API กลางเพียงตัวเดียว ไม่จำเป็นต้องเรียนรู้ API สำหรับแต่ละเว็บไซต์

Maps API
จนถึงตอนนี้เหล่านักท่องอินเตอร์เนทคงจะไม่มีใครไม่รู้จัก Google Map ซึ่งจะเห็นได้ตามเวบไซต์ต่างๆ มากมายที่นำไปประยุกต์ใช้

ใน Session นี้เป็นการแนะนำเกี่ยวกับพื้นฐานการใช้งาน Maps API ตั้งแต่ง่าย จนไปหายาก หรือการนำไปใช้ร่วมกันกับ Flash/Flex เพื่อเพิ่มประสิทธิภาพของ Map API เพราะ Flash/Flex สามารถพัฒนาต่อกับ Socket ได้  ตัวอย่างเว็บไซต์ต่างๆ ที่นำ Maps API ไปใช้ เช่น Meetways, StartTutor รวมไปถึง Simulator ที่ใช้ 3D map (Google Earth) เช่น Driving Simulator

App Engine
ในส่วนของ App Engine, Google ได้พัฒนาตัว Framework ที่รวม Library ต่างๆ เพื่อที่ผู้พัฒนาเวบไซต์ไม่ต้องเริ่มพัฒนาตั้งแต่ศูนย์ในการสร้างเวบไซต์ใหม่ โดย Framework ที่ว่านี้ก็คือ App Engine นั่นเอง

โครงสร้าง Google App Engine จะประกอบด้วย

1. สถาปัตยกรรมแบบพัฒนาต่อยอดได้ง่าย (Scalable Serving Architecture)
2. ฐานข้อมูลแบบกระจาย Distributed Datastore (Big Table – SQL like)
3. ตัวรันไทมน์ของ Python
4. สามารถใช้บริการ Service  จาก App Engine ได้โดยใช้ Ajax web devopment technique ผ่าน Webservice
5. SDK ที่เปิดเป็น OpenSource
6. มีหน้าต่างผู้ควบคุมระบบเป็น Web-base
7. APIs ต่างๆ

ความ API หลักๆ ของ App Engine เช่น

1. ระบบ User/Authentication ซึ่งผู้พัฒนาสามารถใช้ User Login เดียวกับ Google Account (Gmail/Greader) ได้เลย
2. Memchache เพื่อปรับปรุงประสิทธิภาพของเวบไซต์
3. รับส่งอีเมล
4. การจัดการภาพ

จะเห็นได้ว่า Application Engine และ API ต่างๆ ได้ถูกพัฒนามาเพื่อสนับสนุนการเติบโตของเว็บไซต์ในยุคของ Web 2.0 โดย API เหล่านี้สามารถทำให้การเติบโตของเวบไซต์เป็นไปได้รวดเร็ว และมีประสิทธิภาพ ผู้พัฒนาไม่ต้องกังวล หรือเสียเวลาในการพัฒนาตัว API และระบบพื้นฐานต่างๆ ซึ่งสิ่งเหล่านี้สามารถทำให้ผู้พัฒนามีเวลาในการคิดค้นบริการ (Feature) ใหม่ๆ ได้มากขึ้น

Share
Page 2 of 212