ลักษณะการทำงานของ Object Oriented Programming
ปัจจุบันนักพัฒนาซอฟต์แวร์ (Software developer, Programmer) นิยมใช้วิธีการเขียนโปรแกรมเชิงวัตถุ (object) มากขึ้น อันเนื่องมาจากการเขียนโปรแกรมแบบ Structure นั้นพบปัญหาในเรื่องของการนำกลับมาใช้ใหม่ (Reusable) การแก้ไข (Modify) การขยายเพื่อเพิ่มประสิทธิภาพให้กับโปรแกรมพอเปลี่ยนมาเขียนเชิงวัตถุ (object) ทำให้สามารถแก้ไข นำกลับมาใช้ใหม่ได้อีกทั้งยังมีจำนวน code น้อยลงอย่างมาก
จากการศึกษาติวเตอร์พบว่าการเขียนโปรแกรมเชิงวัตถุ (object) คือการสร้างระบบให้กับ source code ของโปรแกรม โดยแบ่งแยกหน้าที่และงานออกไปเป็นหมวดหมู่หรือกลุ่มของตัวแปรและfunctionที่มีความสัมพันธ์เกี่ยวโยงกัน โดยเรียกกลุ่มเหล่านี้ว่า “Object” โดยการทำงานของภายใน object เอง ต้องไม่กระทบกับ object อื่นๆ การขยายความสามารถของโปรแกรมก็เป็นเพียงเพิ่มความสามารถของ object หรือ เพิ่มจำนวน object เข้าไปในระบบเท่านั้น
การเขียนโปรแกรมเชิงวัตถุ (object) คือการจัดโครงสร้างของข้อมูลที่ใช้ในการเขียนโปรแกรม ให้มีลักษณะเหมือนวัตถุในโลกความเป็นจริง โดย Object ในโปรแกรมก็เหมือนกับสิ่งต่างๆในชีวิตประจำวัน ไม่ว่าจะเป็น หนังสือ, บ้าน, รถยนต์, โต๊ะ แม้กระทั่งตัวของคุณเองก็เป็น object เป็นต้น
โดย Object ทุกตัวต้องมีต้นแบบ ซึ่งต้นแบบเหล่านี้เรียกว่า Class ในโลกของความจริง ต้นแบบหรือ Class ของ Object เช่น ต้นแบบของหนังสือ ก็คือเพลตที่ใช้พิมพ์, แปลนบ้าน, ผังการออกแบบรถยนต์ เป็นต้น
แบบแปลนบ้าน คือ Class และบ้านที่ถูกสร้างจากแปลนบ้านนั้น จะถูกเรียกอีกอย่างว่า instance ถ้าจะบอกว่า “คน” คือ Class ทุกคนบนโลก ก็จะเป็น instance ตัว object จะไม่สามารถทำอะไรได้เลย หากเราไม่มีการสร้าง instance ของ class นั้นๆ เหมือนกับเรามีแปลนบ้าน แต่ไม่มีบ้านจริงๆ
ตอนนี้หลายคนเริ่มสงสัยแล้วละสิ ว่า instance เนี่ยมันคืออะไร ผมขออธิบายง่ายๆ โดย instances นั้นจะถูกสร้างขึ้นตามข้อกำหนดของคลาส นั่นคือ เราต้องสร้างคลาสขึ้นมาก่อน แล้วกำหนดว่าจะมีสมาชิกอะไร (data member) มีพฤติกรรมอะไรบ้าง (method) ซึ่งคลาสหนึ่งจะถูกนำไปสร้าง instances กี่ตัวก็ได้ การสร้าง instances หากพูดง่ายๆคือการนำคลาสนั้นๆไปใช้งาน หรือ อาจจะนำไปเพิ่มเติมความสามารถส่วนอื่นๆให้กับมันอีก
การทำงานของ Object ประกอบด้วย 2 ส่วนคือ คุณลักษณะ (Property) และ พฤติกรรม หรือ การใช้งาน (Method)
คุณลักษณะ หรือ Property หรือ Attribute หรือ field ซึ่งเป็นความหมายเหมือนกัน คือคุณลักษณะ เช่น ยี่ห้อ(Nokia, iPhone, Samsung), รุ่น(Lumia 1520, iPhone 5S, Galaxy S5), สี(ดำ, ขาว) ยิ่ง object มีขนาดใหญ่ จะมีความซับซ้อนของคุณลักษณะ ยิ่งมากตามไปด้วย โดยคุณลักษณะ จะเก็บค่าที่ไว้ใช้ใน object นั้นๆ
พฤติกรรม หรือ Method หรือ Behavior หรือ Operation หรือ Member Function หรือการใช้งานเช่นหากเป็นโทรศัพท์สามารถโทรออกได้, ส่ง sms , ถ่ายรูป, ถ่ายคลิป ดูหนัง และสามารถเก็บเบอร์โทรได้ ยิ่งobject มีความซับซ้อนมาก ก็ยิ่งมี Method มากขึ้นไปด้วยเช่นกัน
ลักษณะการทำงานของ Object Oriented Programming เรียบเรียงจาก : notebookspec, jarticles โดยติวเตอร์คอมพิวเตอร์หน้าตาดีครับ
Tags:
Tech