Object Oriented programming

Get Started. It's Free
or sign up with your email address
Object Oriented programming by Mind Map: Object Oriented programming

1. Procedural VS Object Oriented

1.1. Procedural programming

1.1.1. เขียนโปรแกรมด้วยค่ำสั่ง อ่านจากบนลงล่าง และรวมคำสั่งที่ซ้ำๆเป็น function

1.2. Object Oriented programming

1.2.1. เขียนโปรแกรมเพื่อสร้างวัตถุ เพื่อกำหนดคุณสมบัติและลักษณะการทำงานของวัตถุ

2. Class

2.1. เรามองข้อมูลทั้งชนิด int, float, str ในรูปแบบ class

2.2. Attribute

2.2.1. กำหนดคุณสมบัติที่วัตถุมี

2.3. Method

2.3.1. กำหนดสิ่งที่วัตถุทำได้ โดยในทุก class จะมี method เริ่มต้น ชื่อ __init__

3. Object

3.1. ถูกสร้างมาตากคลาสโดยมีคลาสเป็นต้นแบบ

4. Class Diagram

4.1. แผนภาพที่ใช้แสดง class และความสัมพันธ์ ระหว่าง class ความสัมพันธ์ในนี้จะเป็น Static Relationship ซึ่นเป็นความสัมพันธ์ที่มีอยู๋ปกติ ไม่ใช่ Dynamic Relationship ที่เป็นความสัมพันธ์ที่เกิดขึ้นจากกิจกรรม

4.2. สัญลักษณ์ Class ประกอบด้วย

4.2.1. Class Name

4.2.1.1. ชื่อของ Class

4.2.2. Attributes

4.2.2.1. คุณลักษณะของ Class

4.2.3. Operations / Methods

4.2.3.1. กิจกรรมที่สามารถทำกับ Object นั้นๆได้

4.3. รูปแบบการเขียน

4.3.1. เขียนใส่ในสี่เหลี่ยมโดยเขียนองค์ประกอบเรียงจากบนลงล่าง

5. การกำหนดค่า Attribute ให้กับ Instance

5.1. กำหนดค่า Attribute แทนค่าเริ่มต้นที่ถูกกำหนดใน function __init__

5.2. ชื่อ Instance ของวัตถุ.ชื่อ Attribute ของคลาส = ค่าที่ต้องการ

5.3. __init__ มี parameter เพียงตัวเดียว คือ self

6. การเพิ่ม method ให้กับ Instance

6.1. เหมือนการสร้าง function ใน Class

7. การส่งค่า Argument ด้วย Instance ไปยังฟังก์ชั่น

7.1. สร้าง function อื่นเพื่อรับค่า Instance ป้องกันการคลาดเคลื่อน

8. การ return ค่าฟังก์ชั่น ด้วย Instance

8.1. ใช้คำสั่ง return

9. Vocabulary

9.1. class

9.1.1. พิมพ์เขียว (template) ที่ใช้สร้างวัตถุ (Object)

9.2. constructor

9.2.1. ทุกคลาสจะมีโรงงานสำหรับผลิตวัตถุ (Instance) ขึ นมาใหม่ซึ่งมีชื่อเดียวกับคลาส ซึ่งถ้าคลาสมีเมธอดเริ่มต้น (Initializer method) เมธอดนี จะใช้ในการเข้าถึง แอททริบิวต์ของคลาสนั้นๆ

9.3. initializer method

9.3.1. คือเมธอดชนิดพิเศษในภาษาไพธอนชื่อว่า __init__ ใช้สำหรับกำหนดแอททริ บิวต์เริ่มต้นของวัตถุของคลาส

9.4. object

9.4.1. วัตถุที่สร้างขึ้นมากจากคลาสต้นแบบเพื่อนำไปใช้งานจริง มีรูปแบบตามคลาส

9.5. instance

9.5.1. ตัวแทนของวัตถุ

9.6. method

9.6.1. ฟังก์ชั่นภายในคลาส ซึ่งกำหนดลักษณะการทำงานของวัตถุ

10. หลักการสืบทอดใน python

10.1. Inheritance

10.1.1. หรือการสืบทอด คือการที่คลาสหรือออบเจ็คได้รับการถ่ายทอดแอตทริบิวต์และเมธอด จากคลาสอื่น นั่นจะทำให้คลาสดังกล่าวมีแอตทริบิวต์และเมธอดเหมือนคลาสที่มันสืบทอดมาเรียกคลาสนั้นว่า super class หรือ base class ส่วนคลาสที่ได้รับการสืบทอดเรียกว่า sub class หรือ child class

10.2. Multiple Inheritance

10.2.1. การสืบทอดจากหลายคลาสพร้อมกัน

10.3. Method overriding

10.3.1. override เมธอด ซึ่งคือการที่ sub class ทการกำหนดการทำงานให้กับเมธอดจาก super class ใหม่ โดยยังคงใช้ชื่อเดิม ซึ่งจะทำให้เกิดคลาสใหม่ใน บริบทของ sub class และเมธอดจาก super class จะไม่สามารถเข้าถึงได้

10.4. python GUI

10.4.1. การเขียน GUI program ด้วย python มีการเขียนได้หลายรูปแบบ แต่ในบทนี จะกล่าวถึงการ GUI แบบง่ายๆ ด้วย python โดยการเรียกใช้library ที่ชื่อว่า tkinter ใน python 3.x มีอยู่แล้วสามารถเรียกใช้ได้