วันจันทร์ที่ 22 เมษายน พ.ศ. 2556

OOP for JavaScript


Object คืออะไร

          ในชีวิตจริงเนี่ย ถ้าผมจะบอกว่า...
  • รถยนต์เป็นวัตถุชิ้นหนึ่ง
  • ลำโพงก็เป็นวัตถุชิ้นหนึ่ง
  • หนังสือ ก็เป็นวัตถุอีกชิ้นหนึ่ง
คุณก็ไม่งงใช่ไหมครับ Object ในโลกของ Computer ก็คล้ายๆกันนะ คือการเขียนโปรแกรมแบบใหม่เนี่ย จะพยายามสมมุติให้ทุกๆอย่างในโปรแกรม เป็นวัตถุ (Objects)ให้หมดเลย ตัวอย่างก็เช่น ภาพ,browser,แบบฟอร์มต่างๆ ทั้งนี้ก็เพื่อความง่ายในการทำความเข้าใจ และการเขียนโปรแกรมครับ
          เมื่อเราสมมุติใหเป็นวัตถุแล้ว วัตถุแต่ละชนิฃดก็จะมีคุณสมบัติที่สำคัญอย่างน้อย 2 อย่างคือ...

1. Properties

Properties ก็คือคุณสมบัติของ Object นั้นเช่น
สมมุติว่า Object เป็นรถยนต์ Propeties ก็ของรถยนต์ก็คือยี่ห้อ รุ่น สี ความเร็ว แรงม้า
สมมุติว่า Object เป็นวิทยุ์ Propeties ก็ของวิทยุก็คือ ยี่ห้อ รุ่น สี ราคา ความดัง
สมมุติว่า Object เป็นหนังสือ Propeties ก็ของวิทยุก็คือ ชื่อเรื่อง ผู้แต่ง จำนวนหน้า
สมมุติว่า Object เป็นตัวคุณ Propeties ก็ของตัวคุณก็คือ เพศ อายุ น้ำหนัก ส่วนสูง
สมมุติว่า Object เป็นWebpage Propeties ก็ของWebpageก็คือ title bgcolor links
พอจะเข้าใจ Properties หรือยังครับ ที่นี้วิธีเขียนเขียนก็จะใช้ชื่อของ Object นำหน้า แล้วก็ จุด ตบท้ายด้วย Properties ที่จะอ้างถึง เช่น
รถยนต์.สี หมายถึงสีของรถยนต์
วิทยุ.ราคา หมายถึงราคาวิทยุ
document.bgcolor หมายถึงสีพื้นหลังของ Webpage
และ Properties บางตัวก็อาจเป็น Objects ก็ได้ ลองพิจารณาตัวอย่างนี้ดูนะ
รถยนต์.ประตูรถ.สี=แดง
รถยนต์.ประตูรถ.ระบบlock=Central Lock
รถยนต์.ประตูรถ.ระบบlock.สถานะ=lock อยู่
จะเห็นได้ว่า ประตูรถ เป็น Object มี Properties คือ สี และ ระบบlockประตู แต่ก็เป็น Properties ของรถยนต์เช่นกัน จากตัวอย่างเป็นการกำหนดว่า ให้มีประตูรถสีแดง ระบบ lock แบบ Central lock โดยที่กำลัง Lock อยู่ ใน JavaScript ก็มีการใช้ Object เป็น Properties ของ Object อีกชนิด เช่นกัน

2. Method

Methods ก็คือฟังก์ชั่นที่ใช้กับ Object โดยจะมีผลกับ Object นั้นๆเช่น
วิทยุ.play() สั่งให้วิทยุเล่นเทป
วิทยุ.stop() สั่งให้วิทยุหยุด
ซึ่งคุณก็เคยใช้ Method ไปบางตัวแล้วนะครับ เช่น document.write() ที่ใช้เขียนข้อความลงใน Webpage และ window.alert() ที่ใช้แสดงข้อความ alert

Class คืออะไร

          Class ก็คือ แม่แบบของ Object ในการใช้งาน Object เราจะต้องประกาศก่อนว่า Object นั้นอยู่ใน Class ใด
Object ที่อยู่ใน Class เดียวกันจะมี Properties และ Method เหมือนๆกัน แต่จะมีค่าใน Properties เหมือนกันหรือไม่ก็ได้ เช่น
รถยนต์A และ รถยนต์B ต่างก็อยู่ในคลาส รถยนต์
รถยนต์A อาจจะมีสีแดง แต่ รถยนต์B อาจจะมีสีดำก็ได้
*ในบทความนี้ บางครั้งผมจะใช้คำว่า "Object Type" แทนคำว่าคลาสนะครับ
จบ Part 1
ตอนนี้คุณเข้าใจลักษณะของ Object แล้วนะ ในบทต่อๆไปจะแนะนำคุณเกี่ยวกับ Object ที่มีอยู่ใน JavaScript ครับ

ไม่มีความคิดเห็น:

แสดงความคิดเห็น