04 February 2007

อารัมภกถา

OOP เป็นคำที่นักเขียนโปรแกรมทุกคนรู้จักดี แต่มีนักเขียนโปรแกรมจำนวนน้อยที่เข้าใจความหมาย และมีนักเขียนโปรแกรมจำนวนน้อยไปกว่านั้นอีกที่นำมันมาประยุกต์ใช้ได้จริงๆ นี่เป็นเรื่องน่าแปลกใจ เพราะหลักการ OOP ไม่ใช่สิ่ง “สูงส่ง” หรือยากเกินกว่าที่คนทั่วไปจะเข้าใจได้ สาเหตุน่าจะเกิดจากเรายังขาดตำราที่เน้นเรื่อง OOP โดยเฉพาะ ตำราที่อธิบายหลักการ OOP โดยละเอียด เป็นภาษาที่เข้าใจได้ง่าย และสาทิตการประยุกต์ใช้ด้วยตัวอย่างงานจริง

หลักการ OOP ไม่ใช่ของใหม่ มันเป็นหลักการที่เริ่มต้นมาพร้อมๆ กับวิธีเขียนโค้ดแบบ procedural แต่เพิ่งจะได้รับความนิยมมากขึ้นในระยะสิบปีที่ผ่านมา ปัจจุบันนักเขียนโค้ดจำนวนมากหันไปหาภาษา OOP อย่าง Java ภาษา .NET (และภาษาอื่นๆ ที่เริ่มได้รับความนิยมเพิ่มขึ้นอย่าง Python และ Ruby) แม้กำลังใช้ภาษาแบบ OOP แต่นักเขียนโปรแกรมจำนวนมาก กลับไม่สามารถเขียนโปรแกรมตามแนวคิด OOP ได้

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


กิตติกรรมประกาศ

ขอขอบคุณ Ole-Johan Dahl และ Kristen Nygaard ผู้สร้างภาษา Simula 67 ซึ่งเป็นภาษาแรกที่ใช้หลักการ OOP ขอขอบคุณ Bjame Stroustrup ผู้สร้างภาษา C++ ซึ่งเป็นภาษาที่ทำให้หลักการ OOP ได้รับความนิยมแพร่หลาย ขอขอบคุณ Anders Hejlsberg ผู้ประดิษฐ์ภาษา C# และบริษัทไมโครซอฟท์ผู้ผลิต .NET Framework และ ASP.NET และขอขอบคุณบุคลากรในวงการคอมพิวเตอร์อีกจำนวนมากเกินกว่าจะกล่าวถึงได้ครบถ้วน ซึ่งเป็นผู้เขียนตำรา และบทความในอินเตอร์เน็ตที่ผู้เขียนใช้ค้นคว้าอ้างอิง และขอขอบคุณ อลิส อิสหาก และคุณบุษบา ที่เข้าใจและอดทนเมื่อผู้เขียน (นั่ง) ทำงานจนดึกทุกคืน

ลาภลอย วานิชอังกูร

No comments:

คำศัพท์ในบทนี้