13 กรกฎาคม 2557

Published กรกฎาคม 13, 2557 by with 0 comment

Python OOP อ๊อบเจ็กและคลาส

  สวัสดีครับทุกท่าน หลาย ๆ ท่านคงเคยได้ยินคำว่า OOP การเขียนโปรแกรมเชิงวัตถุกันมาบ้างแล้วครับ OOP ย่อมาจาก Object-Oriented Programming เป็นหลักการที่เหมาะสมกับการพัฒนาโปรแกรมทั้งขนาดเล็ก ขนาดกลาง และขนาดใหญ่
คลาสจะแบ่งปัญหาใหญ่ให้เล็กลงเพื่อแก้ไขในขอบเขตที่จำกัดครับ บทความนี้จะพาทุกท่านไปเขียน OOP ในภาษา Python กันครับ

มาเริ่มกันด้วยคลาสง่าย ๆ บน Python กันครับ
class FC:
    pass

ต่อมาสร้างอ๊อบเจ็ก
a = FC()

เราสามารถนำ a ไปใช้งานได้เลยครับ เหมือนกล่องเปล่า
a.one = 1
a.ten = 10 
 
print (a.ten - a.one)
ผลลัพธ์

ตัวอย่างข้างบนมีข้อเสียตรงที่อ๊อบเจ็กอื่นของคลาส FC จะไม่มี one และ ten สามารถแก้ไขได้โดยการกำหนดค่าเริ่มต้น
class FC:
    one = 1
    ten = 10
เวลาเอาไปใช้
a = FC.one
b = FC.ten 
 
print (b - a)
ผลลัพธ์
ตัวอย่างข้างบน เป็นที่แน่นอนว่า คลาส FC มี one และ ten แน่นอน แต่ยังไม่สามารถกำหนดค่าเริ่มต้นแบบเป็นระเบียบได้ครับ

class FC:
    def __init__(self,one,ten):
        self.one = one
        self.ten = ten

วิธีกำหนดค่าเริ่มต้นจะต้องใช้ constructor เข้ามาช่วย นั้นคือเมธอดชื่อ __init__  ทุกเมธอดในคลาสจะใช้พารามิเตอร์ตัวแรกแทนตัวเอง ชึ่งปกติจะใช้ชื่อ self สำหรับในภาษาซีหรือจาวา self คือ this ครับ
 a = FC(1,10)
ต่อมาใส่เมธอดเพิ่มเติมเข้าไปในคลาส
class FC:
    def __init__(self,one,ten):
        self.one = one
        self.ten = ten
    def show(self):
        print (self.ten,"-",self.one,"=",self.ten - self.one)

นำมาใช้
a = FC(one=1,ten=10)

a.show()
ผลลัพธ์

ขอบคุณครับ

0 ความคิดเห็น:

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

แสดงความคิดเห็นได้ครับ :)