บทความชุด: จาวาสคริ๊ปท์ คือ HTML ภาคพิศดาร
ผู้เขียน: ธีรพงษ์ สุทธิวราภิรักษ์
"ไม่ต้องเป็นโปรแกรมเมอร์มือทองมาจากไหน คุณก็สามารถใช้จาวาสคริ๊ปท์ สร้างเว็บเพจที่มีลูกเล่นประทับใจผู้คนได้ไม่ยากเลย"
ท่านผู้อ่านที่รัก เชื่อไหมว่า ในบรรดาภาษาโปรแกรมยอดนิยมทั้งหลายนั้น จาวาสคริ๊ปท์เป็นภาษา ที่มีคนนำไปใช้ในวงกว้างมากที่สุดในโลก ผมมองว่าเป็นเพราะจาวาสคริ๊ปท์เปิดโลกโปรแกรมมิ่ง ให้เข้าถึงได้ง่ายขึ้น มันเป็นเพียงหนึ่งเดียวที่คุณหรือใครๆสามารถหยิบมันมาใช้ได้ง่ายๆบนเว็บ ไม่ต้องเป็นโปรแกรมเมอร์มือทองมาจากไหน คุณก็สามารถใช้จาวาสคริ๊ปท์สร้างเว็บเพจที่มีลูกเล่น ประทับใจผู้คนได้ไม่ยากเลย
เนื่องจากจาวาสคริ๊ปท์เป็นภาษาโปรแกรมที่แทรกโค้ดต้นฉบับเป็นส่วนย่อยๆอยู่ในเอกสาร HTML และเปิดช่องให้ใครๆเข้าถึงได้อย่างเปิดเผย จะด้วยข้อจำกัดใดก็ตามที่ทำให้เป็นเช่นนี้ แต่สิ่งหนึ่ง ที่เป็นคุณประโยชน์กับทุกคนบนเว็บก็คือ การเผยความลับที่ได้รับการปกปิดมานาน ความลับที่ว่าคือ แนวคิด (concept)ในการวางโปรแกรม วิธีควบคุมการไหลของโปรแกรม (flow control) การออกแบบฟังก์ชั่น การเรียกใช้ฟังก์ชั่นในรูปแบบต่างๆของนักพัฒนาแต่ละคน คุณจะเห็นแต่ละ บรรทัดของความคิดเหล่านั้น เหมือนกับที่คุณเห็นแต่ละบรรทัดของ HTML ดังนั้นผมจึงเรียก จาวาสคริ๊ปท์ว่า HTML ภาคพิศดาร
แน่นอนว่าบางโค้ดที่เห็นก็ไม่ได้เรื่องได้ราว แต่ก็มีหลายครั้งที่เราพบชิ้นส่วนโปรแกรมที่เขียนขึ้นมา อย่างปราณีตโดยโปรแกรมเมอร์อัจฉริยะ ได้เห็นวิธีเขียน ได้เห็นแนวคิดที่เฉียบคม ทำให้ค้นพบ ไอเดียใหม่ๆได้ไม่สิ้นสุด มีหลายครั้งที่ผมนำแนวคิดหรือวิธีการดีๆเหล่านั้นมาประยุกต์ใช้กับงาน ที่ทำช่วยให้พัฒนางานได้เร็วขึ้น ไม่ต้องเสียเวลาไปครุ่นคิดหาวิธีที่มีคนเคยคิดเอาไว้แล้ว เอาไอเดียดีๆนั้น มาต่อยอดสร้างชิ้นงานแปลกใหม่ออกมาได้อีกไม่รู้จบ
โลกบนเว็บเป็นโลกเสรีที่แท้จริง สิ่งที่คุณเห็นแทบจะทั้งหมด คุณสามารถเอามาเก็บบนเครื่องพีซี ในห้องนอนของคุณได้ ดังนั้นเราจึงพบว่า มีการก๊อปปี้โค้ดจาวาสคริ๊ปท์จากที่ต่างๆไปใช้กันเป็นที่ เอิกเกริก ข้อเขียนชุดนี้ จะเขียนถึงจาวาสคริ๊ปท์ในแง่มุมที่ช่วยให้คุณได้ประโยชน์จากการอ่านและ ตีความโค้ดต้นฉบับ เพื่อจะได้เข้าใจว่าโปรแกรมนั้นๆทำงานอย่างไร และแนะวิธีนำสิ่งที่เห็น มาประยุกต์ใช้อีกที ไม่ใช่เอาแต่ก๊อปกันตะบี้ตะบัน ทำอย่างนั้นเราจะเก่งขึ้นได้อย่างไร
การจะอ่านโค้ดและตีความให้เข้าใจได้ จำเป็นต้องรู้จักโครงสร้างของภาษา, อ๊อบเจ๊กที่มีมา (build-in objects), การประกาศใช้ตัวแปร(variable), รูปแบบฟังก์ชั่นที่มีมา (build-in function), รูปแบบตัวกระทำ (operators), คีย์เวิร์ดหรือคำสงวน(keywords or reserved word) และอะไร ต่ออะไรอีกเป็นกระบุง หากนำมาเขียนตรงนี้ มันจะยาวมากและก็จะกลายเป็นยาขมหม้อใหญ่ อ่านไปเวียนหัวไปน่าเบื่อซะเปล่าๆ
วิธีที่น่าสนุกกว่าจึงเป็นการเรียนรู้จากตัวอย่าง ซึ่งผมจะสรรหามานำเสนอแบบจบในตอน และจะสอดแทรกทำความเข้าใจเรื่องไวยากรณ์และกฎ กติกา ต่างๆของจาวาสคริ๊ปท์ที่เกี่ยวข้อง กับชิ้นงานตัวอย่างนั้น มาเล่าให้ฟังพร้อมๆกันไป เรามาเริ่มกันเลย ดีไหมๆ
ตอนที่ 1 : "ประตูสู่ห้องลับ"