ข้ามไปที่เนื้อหาหลัก

สิ่งที่คุณควรรู้ใน HTML 5.0

     ในขณะที่หลายๆ คนกำลังปวดหัวกับการแก้ไขเว็บให้สามารถแสดงผลให้ถูกต้องบน IE 6 ได้นั้น และในขณะเดียวกันวงการ Web Standard ก็กำลังสร้างสิ่งใหม่ๆ มาให้วงการพัฒนาเว็บได้เล่น นั้นคือ HTML 5.0 ส่วน Features ต่างๆ ผมแนะนำให้อ่านในเว็บของ w3.org html 5.0 spec เอานะครับ

ทำไม HTML 5 ถึงสำคัญ
     สิ่งที่ทำให้ HTML 5.0 แตกต่างไปจากเดิมคือความเป็น Schematic Web มากขึ้น โดยคำว่า Schematic Web นั้นจะหมายถึงการที่เว็บสามารถให้ความหมายได้ในตัวของมันเอง ซึ่งประโยชน์ตรงนี้เองเราสามารถนำค่าต่างๆ ที่อยู่ใน tag ต่างๆ ของ HTML 5.0 มาใช้งานได้อย่างง่ายดาย หรือที่เราเรียกว่า Web Scraping หรือ Web harvesting ตามแต่ใครจะเรียก ทำให้ลดการเรียกใช้ Web Service API ลง เพราะตัว HTML 5.0 นั้นสามารถเป็น Data ได้อยู่ในตัวแล้วนั่นเอง

อะไรคือเบื้องหลังของ HTML 5.0
     จาก draft ใน link ข้างบน จะพบว่าสิ่งที่ทำให้ HTML 5.0 สามารถทำงานได้คือ การใช้ Scripting API นั่นเอง และด้วยความสามารถนี้ทำให้เราสามารถกำหนด Element Tag ต่างๆ ได้ตามใจชอบ

Features ที่น่าสนใจใน HTML 5.0
     ผมเชื่อว่าหลายๆ คนคงได้ลง Firefox 3.5 กันเรียบร้อยแล้ว หากใครยังไม่ลงก็ไปโหลดได้เลยที่ getfirefox.com สิ่งที่เป็นพระเอกของงานนี้คือ tag audio และ video นั่นเอง

     แต่สิ่งที่น่าสนใจอีกอย่างคือ DOM Storage ซึ่งสามารถทำ Database ย่อมๆ ในฝั่ง client หรือในเครื่องของเราเองได้ เพื่อเป็นการลดการใช้ session ของ server ลงได้บ้าง และทำให้ประสิทธิภาพการทำงานผ่านเว็บดียิ่งขึ้น

     และ Feature อื่นๆ ที่น่าสนใจคือ canvas tag และตัว API ที่เอาไว้สร้างไฟล์ bitmap แบบ realtime กันเลยทีเดียว นอกจากนี้ยังมี datagrid element และตัว script API ของมันจะเป็นประโยชน์มากในการสร้าง Web App ที่ใช้ ตารางเยอะๆ และยังมี nav, header, footer, article, section, aside element ที่ช่วยให้การทำงานของผู้สร้างบทความง่ายยิ่งขึ้น

สรุป
     ผมคิดว่าเมื่อ HTML 5.0 เสร็จเมื่อไหร่รูปแบบการท่องเว็บไซต์ของเราก็จะเปลี่ยนไปอย่างมาก เพราะตัว HTML นั้นไม่ได้มีการเปลี่ยนแปลงเลยภายใน 10 ปีที่ผ่านมา และครั้งนี้จะเป็นการเปลี่ยนแปลงที่ใหญ่ที่สุดของวงการเว็บแน่นอน ใครที่อยากอ่าน draft ของ html 5.0 สามารถอ่านได้ที่ W3 Consortium's Website

ความคิดเห็น

โพสต์ยอดนิยมจากบล็อกนี้

Alfresco กับการ Search ภาษาไทย

เนื่องด้วยการ Search ถือเป็นหัวใจสำคัญของงาน ECM เลยก็ว่าได้ แต่ Alfresco ณ ปัจจุบันยังไม่รองรับการ Search ด้วยภาษาไทย แต่อย่างว่า Opensource เมื่อเรารู้ว่ามันใช้ Lucene เป็น engine ในการค้นหาเอกสาร เราก็เลยแงะไปยังตัว lucene เองพบว่ามีคนส่ง Patch ในการตัดคำไทย ไปให้กับ lucene เรียบร้อยแล้ว โดยคุณสัมพันธ์นั่นเอง วิธีการ Config ให้ Alfresco ตัดคำไทยได้ผมสรุปออกมาเป็นขั้นตอนได้ดังนี้ครับ ไปเพิ่ม Locale ให้ Alfresco รู้จัก ใน tomcat/shared/classes/alfresco/extension/web-client-config-custom.xml ตรง tag <languages> เพิ่ม <language locale="th_TH">Thai</language> เข้าไป directory: tomcat/webapps/alfresco/WEB-INF/classes/alfresco/model แล้วทำการ copy file dataTypeAnalyzers_fr.properties หรือไฟล์อื่นก็ได้ เปลี่ยนชื่อเป็น dataTypeAnalyzers_th.properties แล้วเปิดไฟล์ขึ้นมาแก้ไขให้เป็น d_dictionary.datatype.d_text.analyzer=org.apache.lucene.analysis.th.ThaiAnalyzer d_dictionary.datatype.d_content.analyzer=org.apache.lucene.analysis.th.ThaiAnalyzer หลังจากนั้นเมื่อทำการ...

Spring Roo vs Grails

Spring Roo หรือ Grails ดี ถ้าต้องเลือกระหว่างสองตัวนี้จะเลือกอะไรดี คำตอบแบ่งออกได้เป็นสองส่วน ส่วนแรกคือภาษาที่ถนัด หากใครเขียน Java อยู่แล้วไม่อยากเปลี่ยนก็ควรจะเลือก Spring Roo หากใครต้องการ magic ที่มากับ Dynamic Language ก็คิดว่าน่าจะใช้ Grails มากกว่า ส่วนที่สองคือ ความเร็วในการพัฒนาเนื่องจาก magic ที่มาจากภาษา Groovy ทำให้เราพัฒนา Application ได้เร็วกว่าภาษา Java (แต่อันนี้ก็แล้วแต่ความถนัก หากถนัด Java มากๆ ก็อาจจะเร็วกว่าก็ได้) แต่ส่วนที่คิดว่าเร็วกว่าแน่ๆ คือมันจะ Generate Method ส่วนใหญ่ให้ในขณะ Runtime เช่น findBookById() ซึ่งจะไม่มีโค้ดในส่วนนี้แต่จะเป็นการ Generate ให้เองจากตัว Framework แต่หากใช้ Spring Roo เราต้องมานั่งเขียน Method ส่วนนี้เอง ข้อดี ข้อเสีย Grails อย่างที่รู้ว่า Groovy นั้นจะ Generate Method ระหว่าง Runtime ให้และยังเป็นภาษา Script แม้จะมีการ Compile ให้เป็น Bytecode ของจาวาแล้วก็ตาม แต่ Performance ก็จะด้อยกว่า Pure Java อยู่ดี Spring Roo จะช้าในช่วง Develop time แต่ขณะ Runtime จะมี Performance ดีกว่า Grails เนื่องจากไม่มีส่วนที่ต้องสร้างขึ้นระหว่าง ...

เปลี่ยนเว็บเดิมให้ Pluggable ด้วย OSGi

เป็นบทความภาษาอังกฤษครับลองอ่านดู เปลี่ยน Web application เดิมให้ยืดหยุ่นด้วย OSGi เพิ่มเติ่มให้ครับ OSGi คืออะไร เป็น Specification ครับที่เจ้าใหญ่ของ Java เค้าทำมาเพื่อให้เกิดความเป็น modularized ครับ ซึ่งถ้าจะให้เห็นภาพคือการทำงานของ plugin น่ะครับ ที่เราสามารถเปิดปิดการทำงานของมันได้ตลอดเวลาเมื่อเอามาใส่ web application ก็ทำให้เราสามารถถอดหรือเสียบ plugin ใหม่ๆ ได้ตลอดเวลา โดยที่ plugin นี้ใน OSGi จะเรียกว่า module ครับ หรือถ้าเป็นศัพท์เทคนิคเค้าจะเรียกว่า Bundle ครับ ลองไปอ่านบทความกันดูครับ ซึ่ง OSGi นั้นจริงๆ แล้วมันเป็น Specification เหมือนกับ EJB หรือ Servlet นี่แหละครับ แต่ตัว implement นั้นแล้วแต่ว่าใครจะนำไป implement นะครับ ที่ดังๆ อยู่ในตอนนี้ก็เห็นมีอยู่สองสามเจ้า Equinox อันนี้หลายๆ คนคงจะคุ้นเคยกันดีมันคือเจ้า eclipse ของเรานั่นเองใช้ตัวนี้อยู่ครับ ส่วนอีกตัวเป็นของ Apache Felix ครับ ลักษณะการใช้งานจะแตกต่างกันบาง และตัว module อาจจะเรียกไม่เหมือนกันบางอันเป็น Bundle บางอันอาจไม่ใช่ ผมก็จำไม่ได้แล้วเหมือนกันครับ ลองไปศึกษากันดูครับ น่าสนใจทีเดียว อีกตัวนั้นจะเป็นของ Sp...