Object Oriented Programming
Object Oriented Programming หรือที่เรียกสั้นๆว่า OOP นั้นเป็นการแบ่งขอบเขตของงานออกเป็นส่วนย่อย ๆ ที่เป็นอิสระต่อกัน โดยมองส่วนต่าง ๆ เป็นวัตถุหรือ ออบเจ็กต์ที่ไม่ขึ้นต่อกัน แต่มีการทำงานร่วมกัน หากยังไม่เข้าใจมาดูตัวอย่างง่ายๆกันก่อนดีกว่า
หลังจากที่เข้าใจความหมายของ OOP คร่าวๆแล้ว มาดูคุณสมบัติหลักของแนวคิดการพัฒนาโปรแกรมเชิงวัตถุ หรือOOP กัน
- นำกลับมาใช่ใหม่ (Reuse) บนสภาพแวดล้อมของระบบเดิม หรือ ระบบอื่น ๆ ได้
- ประหยัดเวลาในการพัฒนา (Rapid Delivery)
- ใช้งานง่าย (User Friendly)
- ดูแลรักษาได้ง่าย (More Maintainable)
- มีคุณภาพสูง (Greater Quality System) ในเชิงความถูกต้องและความรวดเร็วในการประมวลผล
หลักการของ OOP
ต่อมา มาดูหลักการของ OOP กัน
- ทุกอย่างเป็น Object โดย Object แต่ละตัวจะมีหน้าที่และความสามารถแตกต่างกันไปออกไป
- โปรแกรมก็คือการนำเอากลุ่มของ Object ย่อย ๆ มาทำงานด้วยกัน
- แต่ละ Object เป็น Instance ของ Class
- แต่ละ Object จะมีสถานะของตนเอง (State)
- Object ที่ถูกสร้างมาจาก Class เดียวกันจะมีคุณสมบัติและความสามารถเหมือนกัน
ความแตกต่างระหว่างการเขียนโปรแกรมแบบมีโครงสร้างกับการเขียนโปรแกรมเชิงวัตถุ
เมื่อพูดถึงการเขียนโปรแกรมนั้น สามารถแบ่งออกได้เป็นสองประเภท คือ แบบมีโครงสร้าง กับ เชิงวัตถุ ซึ่งมีความแตกต่างทั้งด้านการออกแบบและการทำงาน ก่อนอื่นมารู้จักการเขียนโปรแกรมแบบมีโครงสร้างกันก่อน
การเขียนโปรแกรมแบบมีโครงสร้าง (Structure Programming) เป็นการเขียนโปรแกรมที่ใช้พัฒนาระบบงาน เน้นในเรื่องหน้าที่การทำงาน (Function) ให้ความสำคัญกับขั้นตอนกระบวนการที่ทำ มีการแยกส่วนของข้อมูลฟังก์ชันอย่างชัดเจน จึงส่งผลให้เกิดความสับสันและความยุ่งยากในการเปลี่ยนแปลงแก้ไขโดยเฉพาะในโปรแกรมที่มีขนาดใหญ่
หลังจากที่รู้จักกับการเขียนโปรแกรมแบบมีโครงสร้างกันไปแล้ว มาทำความรู้จักกับการเขียนโปรแกรมประเภทที่สองกันดีกว่า
การเขียนโปรแกรมเชิงวัตถุ (Object Oriented Programming) มีแนวคิดที่ต้องการลดความซับซ้อนของโปรแกรม จึงแบ่งระบบงานให้เป็นส่วนย่อย ๆ ที่มีอิสระต่อกัน โดยเก็บข้อมูลต่าง ๆ ร่วมกัน เพื่อให้ง่ายต่อการเรียกใช้งาน ง่ายก็ต่อการแก้ไข
หลังจากที่รู้จักทั้งสองประเภทแล้ว แต่ละแบบมีทั้งข้อดีและข้อเสีย มาดูความแตกต่างคร่าวๆกัน
ข้อดีของ OOP
ทุกประเภทของการเขียนโปรแกรมล้วนมีข้อดีตามรูปแบบการทำงานของมันเอง ซึ่งข้อดีของ OOP นั้นมีดังนี้
- สามารถปรับปรุงแก้ไขได้ง่าย
- ใช้งานง่าย
- สามารถพัฒนาเพิ่มเติมได้ง่าย
- ซ่อนรายละเอียดของโปรแกรม