html5 อนาคตของเว็บไซต์ในอนาคต

GTUG BootCamp 2011 สำหรับใครที่ไม่มีโอกาสได้ไป

ก็ผ่านไปแล้วสำหรับงาน GTUG BootCamp 2011 เป็นงานเสวนา ที่พูดคุย แลกเปลี่ยน และแสดงเทคโนโลยีของ Google ตลอดจนพบปะกับเหล่านักพัฒนาที่เข้ามาร่วมงาน โดยในครั้งนี้มีหัวข้อสำหรับเสวนา ได้แก่ Android , Chrome Extension & Developer Tools, และ Google App Engine สำหรับใครที่ไม่มีโอกาสได้ไปงาน GTUG BootCamp 2011 เมื่อวาน (15 มกราคม 2554) หรือคนที่กลับก่อนที่ผมจะพูด และคนที่ฟังผมพูดแล้วไม่รู้เรื่อง 5555 ผมเอามาลงในเว็บให้เพื่อใครสนใจอ่านครับ ซึ่งผมพูดเกี่ยวกับ ความสามารถของเทคโนโลยี

html5

HTML ที่เราใช้ในการพัฒนาเว็บไซต์ในปัจุบันคือ html เวอร์ชั่น 4 ซึ่งเราใช้มาตั้งแต่ ปี 1997 ซึ่งเป็นระยะเวลา 14 ปีแล้ว ซึ่งผมคิดว่ามันถึงเวลาแล้วละ ที่ควรจะมีมาตรฐานใหม่เกิดขึ้นมา ถ้าผมจำไม่ผิด html เริ่มใช้ในปี 1991 ผมเกิดมาอายุครบ 4 ขวบพอดี และมาเปลี่ยนเป็น html เวอร์ชั่น 2 ในปี 1994 ในอีก 2 ปีต่อมาก็เกิด css เวอร์ชั่นแรก พร้อมกับ จาวาสคริป หลายอย่างที่บอกพอมาถึงปี 1997 ก็กลายเป็น html เวอร์ชั่น 4 และก็มีอีกหลายๆอย่างที่เกิดขึ้นมาหลังจากที่มี html เวอร์ชั่น 4 อย่างเช่น css เวอร์ชั่น 2 XHTML เวอร์ชั่นแรก Ajax (เอเจกหรืออาเจก ที่เรารู้จักกัน) จนมาถึงปี 2009 คำว่า HTML5 ก็ได้เริ่มเข้ามา มีกระแสมากมายเกิดขึ้น ทำให้หลายๆ คนทั้งที่เป็นนักพัฒนา นักการตลาด และผู้ใช้งาน เริ่มสนใจและศึกษา html5 มีหลายๆ คนจับ html5 ไปเปรียบเทียบกับ flash หรือ ปลั๊กอินตัวอื่นๆ ที่มีบนเว็บ

 

html5

HTML5 นั้นเกิดจากการร่วมมือกันระหว่าง W3C (World Wide Web Consortium) และ WHATWG (Web Hypertext Application Technology Working Group) ซึ่ง ณ ปัจจุบันได้ปล่อยข้อมูลบางส่วนเกี่ยวกับหลักการของ HTML5

html5HTML5 นั้นจะว่าไปมันก้ประมาณว่ามีทั้ง html บวกกับ css และมีจาวาสคริป เกิดการฟิวชั่นกัน จนทำให้กลายเป็น html5 ในที่สุด (ซึ่งอันนี้ผมเอามาพูดมั่วๆ ไปเองนะครับ) ซึ่งความจริงแล้ว html5 นั้น พัฒนาจาก HTML เวอร์ชั่นเดิมให้สามารถทำงานได้ดีขึ้น ไม่ได้เป็นการพัฒนาใหม่ทั้งหมด หรือทิ้งของเก่าไป ยังคงมีโครงสร้างหลายๆ ตัวที่ยังคงมีอยู่เช่นพวก Metadata ต่างๆ เช่น head, tilte, meta, body, link, sytle, script ซึ่งพวกนี้ยังคงมีอยู่ใน HTML5 และก็ยังมี Elements ใหม่ๆ

อาจจะเกิดคำถามว่า html5 มันจะมาแทน html เวอร์ชั่นเดิม คือ เวอร์ชั่น 4 ไหม ตอบว่าใช่ครับ แต่มันไม่ได้มาจากการสร้างขึ้นมาใหม่แล้วมาแทนที่ของเดิมที่มีอยู่ แต่มันคือการ upgrade ให้ใช้งานง่ายขึ้น ลด Tag ที่ไม่มีความหมาย หรือไม่ได้ใช้งานออก และกำหนด Tag ใหม่ขึ้นมา ให้มีความหมาย หรือที่เรียกว่า โดยกำหนดชื่อตามลักษณะการใช้งาน และการแสดงบนในเบราวเซอร์ html5 ก็ยังเป็น HTML ดีๆ นี่เอง ยังคงต้องอาศัยภาษาสคริปในการควบคุม ซึ่งจะทำงานได้ต้องอาศัยภาษา JavaScript และ จะเกิดความสวยงามก็ต้องอาศัย css

ฟีเจอร์สำคัญๆ ของ HTML5 ที่ปล่อยออกมาในตอนนี้ก็มี 7 อย่างหลักๆ

html5
อย่างแรกเลยคือ Semantic Markup ตามความเข้าใจของผมคือ ตัวหนึ่งใน HTML เวอร์ชั่นปัจจุบันๆ ที่เราใช้โครงสร้าง DIV เพื่อแบ่งพื้นที่ให้เป็นสัดเป็นส่วน เพื่อให้เนื้อหาของเว็บไซต์นั้นสวยงามเป็นระเบียบ หรือวางเนื้อหาใว้ตามพื้นที่ที่ต้องการ Semantic Markup มันคือชื่อที่ใช้เรียกแทนตัว Markup ต่างๆ ข้อดีอย่างแรกเลยคือมันจะเป็นมาตรฐานเดียวกัน และเป็นชื่อที่มีความหมาย ให้สื่อสารเข้าใจง่าย ข้อดีอย่างที่ 2 คือมันช่วยในเรื่อง SEO ข้อดีที่ 3 คือมันง่ายต่อการพัฒนาต่อยอด และนำไปใช้งานเพื่อจุดประสงค์อื่นๆ จะเห็นได้ว่าการใช้ div จะถูกแทนที่ด้วย article, footer, header, nav, หรือ section เพื่อที่จะทำให้โครงสร้างของเว็บมีมาตรฐานเดียวกัน ซึ่งการใช้ div นั้นไม่สามารถบอกกับนักพัฒนาหลายๆ ที่จะมาพัฒนาต่อ หรือกับผู้ใช้งานได้ว่า div นั้นๆ คืออะไร ซึ่งการตั้งชื่อ id และ class ของ div นั้นไม่ได้มีมาตรฐานหรือกฏใดๆ บอกว่าจะต้องตั้งยังไง ขึ้นอยู่กับนักพัฒนาคนนั้นๆ ว่าจะตั้งว่าอะไร วันดีขึ้นดีคิดว่าออกก็ตั้งว่า “abcd1” ซึ่งใครจะไปร้ด้วยว่ามันคือกล่องที่แสดงข้อมูลอะไรในนั้น

HTML5HTML5 เมื่อนำไปใช้งานต้องเขียนให้ถูกต้องตามโครงสร้างของภาษา ซึ่งผมเห็นว่าการพัฒนาเว็บไซต์ในบ้านเรายังเขียนกันผิดๆ ถูกๆ อ่านก็ยาก คนที่จะมาพัฒนาต่อต้องเสียเวลาศึกษา code เดิมไม่หน้ำซ้ำยังต้องแก้ไข code เดิมอีก ที่แย่กว่านั้นคือ ลบ แล้วเขียนใหม่ เพราะนักพัฒนาหลายๆ คนให้ความสำคัญกับผลบัพธ์หน้าบ้านมากกว่าความสวยงามของ coding html5 เข้าใกล้มนุษย์มากขึ้น คนทั่วไปสามารถอ่าน Tag html5 แล้วเข้าใจหรือพอเดาได้เลยว่ามันคืออะไร ซึ่งเป็นข้อดีของ html5 มีความเป็น Semantic Web สามารถอ่านเข้าใจง่าย ไม่ต้องเสียเวลาตีความหมาย ตัวอย่างเช่น <heaer>, <footer>, <article>, <nav>, <audio>, <video> แค่มองก็รู้ทันทีว่ามันคืออะไร

HTML5Form Enhancement อันนี้ตรงตัวเลยครับ มันคือการการเพิ่มประสิทธิภาพของฟอร์ม เพื่อให้ใช้งานง่ายขึ้น สามารถสร้าง Form Control อย่างเช่น calendar, date, time, email, url, และ search ได้อย่างง่ายดาย ซึ่งผมว่าโปรแกรมเมอร์หลายคนชอบอะไรง่ายๆ อยู่แล้ว เราไม่ต้องไปนั่งเขียน Code เพื่อ validate แต่ละฟอร์มให้ปวดหัว แทบจะบอกลาจาวาสคริปที่เราชอบเขียนกันเพื่อจัดการฟอร์มทันที

HTML5ยิ่งกว่านั้นรองรับพวก Mobile device ด้วย

Audio/video คิดว่าหลายๆ คนคงจะรู้จัก HTML5 จากฟีเจอร์นี้ ถ้าเปรียบเป็นเพลงก็คงประมาณซิงเกิลเปิดตัว หรือซิงเกิลแรกนั้นเอง และเป็นอีกหนึ่งฟีเจอร์ที่เริ่มเห็นนำมาทดลองใช้งานกันบ้างแล้ว ซึ่งคุณสมบัตินี้ อย่างที่เราทราบกันคือเป้น ฟีเจอร์นี้ทำให้เว็บไซต์สามารถเล่นไฟล์วีดีโอ และไฟล์เสียงได้โดยไม่ต้องติดตั้งปลั๊กอินใดๆ เพิ่มเติม และก็เป็นอีกหนึ่งฟีเจอร์ที่ยังหาข้อสรุปและมาตรฐานไม่ได้ อันนี้ปล่อยไปเป็นหน้าที่ของเขาละกัน
Drag and Drop Event Attributes ซึ่งทำให้เราสามารถสร้าง Event ให้กับ object ใดๆ ได้ ซึ่งจะสามารถตอบสนองกันระหว่างผู้ใช้งานได้ทันที โดยควบคุมผ่านทาง Mouse Events
Canvas เป็นอีกหนึ่งฟีเจอร์ที่ซับซ้อนและทำให้ html5 มีความน่าสนใจมากยิ่งขึ้น ซึ่งเป็นฟีเจอร์ที่นักพัฒนาให้ความสนใจเป็นอย่างมาก ซึ่งเป็นคุณสมบัติทางด้านกราฟฟิกที่มาพร้อมกับ HTML5 ที่จะสามรถพัฒนาไปเป็น เกมส์ หรือโปรแกรมต่างๆ เช่น โปรแกรมวาดภาพ และเล่นได้ทุกระบบปฏิบัติการ โดยที่ไม่จำเป็นต้องลงปลั๊กอินใดๆ เนื่องจาก Canvas ก็คือหนึ่ง element ของ html จะต้องใช้ภาษาสคริป อย่างภาษา JavaScript เป็นตัวควบคุมในการทำงานต่างๆ เช่น สั่งให้วาดเส้นตรง วาดรูปสี่เหลี่ยม หรือขีดเขียนในลักษณะดินสอ

ContentEditable อันนี้ตรงตัวเลยฟีเจอร์นี้ทำให้เราสามารถแก้ไข Content โดยการคลิกที่ข้อความ แล้วสามารถแก้ไขแล้ว save ทันที อันนี้อาจจะงง ซึ่งในตัวอย่างนี้ผมการทำงานของฟีเจอร์นี้ก็จะไปสัมพันธ์กันกับ อีกหนึ่งฟีเจอร์ที่ชื่อว่า Persistent Data Storage เป็นการเก็บข้อมูลสิ่งทีเราต้องการ ไว้ในเครื่องผู้ใช้งาน ซึ่ง (ตัวอย่างที่) การทำงานค้ลายๆกับ cookie แต่มันเก็บได้ถึงระดับดาต้าเบต
HTML5

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

ปัจจุยอย่างแรกเลยที่เหมือนจะควบคุมได้ แต่ควบควบยาก นั้นคือนักพัฒนา อันดับแรกเลย คนที่หันมาพัฒนา html5 ปัจจัยหลักก็คือ ยืดตามส่วนแบ่งการตลาดของลูกค้า ซึ่งตรงนี้แหละที่จะเป็นอีกหนึ่งปัจจัยที่ทำให้ html5 นั้นกลายเป็นเพียงมาตรฐานการทำเว็บไซต์ในอนาคตหรือ html5 จะเป็นมาตรฐานปัจจุบันของเว็บไซต์
อย่างที่ผมบอกครับ ยังมีนักพัฒนาหลายๆ คนพัฒนาเว็บไม่ถูกตามข้อกำหนด หรือมาตรฐานที่ w3c ตั้งไว้ ซึ่งผมเองก็ด้วย เหตุผลงานๆ “งานเร่ง” สองขี้เกียจ ถ้าลูกค้าไม่ กรอกใน requiement ว่า validate w3c หลายๆโปรเจคที่ทำ ผมเชื่อว่านักพัฒนาเป็นคนเลือกเทคโนโลยีที่จะใช้ในการพัฒนาเอง เมื่อ html5 กลายเป็นมาตรฐาน นักพัฒนาเองก็ควรจะหันศึกษา html5 และนำไปใช้งาน

ผู้พัฒนาเว็บเบราวเซอร์ อันนี้คือปัจจัยหลักความก้าว หน้าของเว็บไซต์อันดับต้นๆ หรือจะบอกว่ามันอันดับหนึ่งก็ไม่ผิด HTML5 ไม่ต้องกล่าวถึง IE 6 7 8 เอา IE9 ให้มันรอดซะก่อน (อันนี้อัคติส่วนตัว) ณ ตอนนี้มีเบราวเซอร์ที่สนับสนุนฟีเจอร์ HTML5 5 ตัวด้วยกันก็คือ IE9 รองรับน้อยกว่าเพื่อนเลย ต่อมาก็เป็น firefox, safari, opera, chrome ซึ่งทั้ง 5 ตัวยังไม่มีตัวไหนที่สามารถรองรับฟีเจอร์ html5 ครบทุกฟีเจอร์ ประเด็นคือใครผิด เบราวเซอร์ผิด หรือ html5 อย่างแรกเลยคือ html5 เองผิด ผิดที่กำหนดมาตรฐานไม่เสร็จสักที สองเบราวเซอร์เองก็ผิด ผิดเพราะ แม้ตอนนี้ HTML5 ยังพัฒนาไม่เสร็จ แต่มีหลายๆ คุณสมบัติถูกจับหยั้ดลงไปใบเบราว์เซอร์ตัวหลักๆที่มีในโลกกันแล้วซึ่งผมไม่ รู้ว่ามันเป็นเรื่องที่เราควรจะดีใจหรือเสียใจ เหตุผลที่เรียบเอาใส่เพราะ เรื่องของการตลาดนั้นเอง ประเด็นต่อมาอันนี้ อาการหนัก หลายๆ เบราว์เซอร์ยอมให้การเขียน code ที่ไม่ถูกตามโครงสร้างของภาษานั้นสามารถแสดงผลได้ โดยการพัฒนาเบราว์เซอร์ของตัวเองเพื่อสนับสนุนจุดนี้ จึงมีคำถามต่อมาว่าแล้วทำไหมหลายๆเบราว์เซอร์จึงทำเช่นนี้ คำตอบง่ายคือเหตุผลทางการตลาดนั้นเอง ประเด็นนี้ไม่รวม IE นะครับ เพราะ IE เขียนถูกมันก็แสดงไม่เหมือนชาวบ้านอยู่แล้ว

ผู้ใช้งานหรือ User ก็สำคัญถ้าไม่มีดีมาน ก็ไม่รู้จะพัฒนาระบบมาทำไม และถ้า User ส่วนใหญ่ ยังคงใช้ IE อยู่ HTML5 จบ! ไม่ต้องเกิด แต่ผมเชื่อว่า HTML5 นั้นมีศักยภาพมากพอที่จะทำให้ User ที่ใช้ ie อยู่เห็น ว่าถึงเวลาเปลี่ยนมาใช้เบราว์เซอร์ที่รองรับ html5 เพื่อใช้งานระบบที่ตัวเองต้องการ และอีกหนึ่งปัจจัยที่คือ Search Engine เองก็ต้องพัฒนาระบบของตัวเองให้สามารถเข้าใจโครงสร้างของ html5 ซึ่งอันผมคิดว่าเขาทำอยู่แล้ว

มีคนถามผมว่า แล้ว HTML6 มันจะมาตอนไหน ผมตอบไปว่า วันใดที่ html5 ประกาศบอกว่ามันสมบูรณ์พร้อมสำหรับใช้งานแล้ว วันนี้คือวันเริ่มต้นมาตรฐานใหม่ของการทำเว็บไซต์ และเช่นกันวันนั้นแหละจะเป็นจุดเริ่มต้นอนาคตของ html6 ผมเชื่อว่ายังมีอีกหลายฟีเจอร์หลายความสามารถที่ไม่สามารถใส่เข้ามาใน html5 ได้ เพราะแค่นี้เบราว์เซอร์แต่ละเจ้าก็พัฒนาเบราวเซอร์ของตัวเองให้รองรับความ สามารถของภาษากันไม่ไหวแล้ว คิดว่าคงเอาไปใส่ใน html เวอร์ชั่นถัดไปแทน

บทความจาก http://www.html5.in.th

เรื่องนี้ถูกเขียนใน คอมพิวเตอร์ และติดป้ายกำกับ คั่นหน้า ลิงก์ถาวร

ใส่ความเห็น

อีเมล์ของคุณจะไม่แสดงให้คนอื่นเห็น ช่องที่ต้องการถูกทำเครื่องหมาย *

คุณอาจจะใช้ป้ายกำกับและคุณสมบัติHTML: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>