Object Oriented Programming : OOP

Slides:



Advertisements
งานนำเสนอที่คล้ายกัน
เรื่อง องค์ประกอบของคอมพิวเตอร์ จำทำโดย นาย เดชฤทธิ์ ร้อยพรหมมา
Advertisements

หลักการออกแบบของ ADDIE model ADDIE model
สถาปัตยกรรมฐานข้อมูล
ภาษา SQL (Structured Query Language)
Object-Oriented Analysis and Design
การกำหนดลักษณะของตัวอักษร
องค์ประกอบพื้นฐาน ของโปรแกรม Visual Basic
Properties ของคอนโทรล ที่ควรรู้จักในเบื้องต้น
Object-Oriented Programming
การเขียนโปรแกรมภาษาจาวาตอนที่ ๓
Object-Oriented Analysis and Design
ครั้งที่ 7 Composition.
หลักการเชิงวัตถุ อาจารย์ศิริพร ศักดิ์บุญญารัตน์
ความรู้เบื้องต้นเกี่ยวกับ JAVA
SCC : Suthida Chaichomchuen
Classification Abstraction
Selected Topics in IT (Java)
Object-Oriented System Analysis and Design
การสืบทอด (Inheritance)
หน่วยที่ 1 แนวคิดของการเขียนโปรแกรมเชิงวัตถุ
โปรแกรม Microsoft Access
ภาษาที่ใช้ในการเขียนเว็บไซต์
บทที่ 3 Class and Object (1) การสร้างและการใช้งานคลาส
บทที่ 1 หลักการเขียนโปรแกรมเชิงวัตถุ
คลาสและวัตถุ (4) (Class & Object)
OOP (Object-Oriented Programming)
Generalization & Specialization
Lecture 9 Class (คลาส) To do: Hand back assignments
Inheritance การสืบทอดคลาส
การสร้างช่องรับข้อมูล
โปรแกรม DeskTopAuthor
การสร้าง object และ room
การแปลงข้อมูลใน Excel เป็นฐานข้อมูลใน Access
โปรแกรมภาษาจาวาเบื้องต้น Basic Java Programming 3(2-2-5)
บทที่ 3 การวิเคราะห์ Analysis.
ความสัมพันธ์ระหว่างคลาส (Class Relationship)
บทที่ 4 Aggregation Abstraction
สำนักวิชาเทคโนโลยีสารสนเทศและการสื่อสาร มหาวิทยาลัยนเรศวร พะเยา
การวิเคราะห์และออกแบบระบบเชิงวัตถุ (OOAD)
การวิเคราะห์และออกแบบระบบเชิงวัตถุ Object Oriented Analysis and Design
การเขียนโปรแกรมคอมพิวเตอร์ และอัลกอริทึ่ม Lec03 : 25/03/2551 การทำงานกับ Event ต่าง ๆ โดย อ. นัฐพงศ์ ส่งเนียม
Java Desktop Application #4
Lec03 :: หลักการเชิงออปเจ็ค (Object Oriented Concept)
วิชา :: การเขียนโปรแกรมภาษาคอมพิวเตอร์ขั้นสูง
โปรแกรม Microsoft Access
บทที่ 3 การทำงานกับฟอร์ม (Form)
Object-Oriented Programming
Lecture 2 แก้ไขปัญหาด้วย OOP (Solving problems using OOP in Java)
บทที่ 3 การสร้าง Appication แบบ Windows Form
การนำระบบเทคโนโลยีสารสนเทศมาสนับสนุนการทำงาน
Search Engine จัดทำโดย น. ส. กรรณิดา เดิมบางปิด เลขที่ 1 น. ส. เกศินี ศรีอินทร์สุทธิ์ เลขที่ 4 น. ส. เบญจวรรณ แซ่อั๊ง เลขที่ 51 1.
การเขียนโปรแกรมสั่งงานตัวควบคุม (Control)
ความรู้พื้นฐานเกี่ยวกับ Microsoft Visual C#
แบบทดสอบหลังเรียนวิชา เทคโนโลยีสารสนเทศ 2
Java Programming Java Structure and Datatype,Variable
Midterm outline Object-oriented programming Wattanapong suttapak, Software Engineering, school of Information communication Technology, university of phayao.
BCS 121 บท 5 การโปรแกรมเชิงวัตถุ (Object-Oriented Programming)
Polymorphism กนกวรรธน์ เซี่ยงเจ็น
การออกแบบส่วนติดต่อกับผู้ใช้ User Interface Design
บทที่ 9 การใช้งานฟอร์มและคอนโทรลต่าง ๆ
BC305 การวิเคราะห์และออกแบบระบบสารสนเทศ
chapter5 - คลาสนามธรรม - อินเตอร์เฟสคลาส
Class. ทบทวน Object ประกอบด้วย ชื่อ Attributes -> คุณลักษณะ Methods -> การกระทำ ให้ลองเขียน Object โดยใช้รูปแบบดังนี้ ชื่อ Attributes Methods.
Unified Modeling Language
Object-Oriented Programming
คอนสตรัคเตอร์ (Constructor)
การรับข้อมูลใน ภาษา php ศูนย์คอมพิวเตอร์โรงเรียนปลวกแดงพิทยาคม.
chapter 2 - Construction and destruction - Overloading method
การออกแบบสื่อเพื่อการศึกษา ADDIE Model
บทที่ 3 การสืบทอด (Inheritance)
ใบสำเนางานนำเสนอ:

Object Oriented Programming : OOP การเขียนโปรแกรมเชิงวัตถุ

ความหมายการโปรแกรมเชิงวัตถุ การโปรแกรมเชิงวัตถุ (Object Oriented Programming) หรือเรียก สั้น ๆ ว่า OOP เป็นวิธีการเขียนโปรแกรมโดยมองสิ่งต่างๆ ในระบบ เช่น ตัวอักษร, รูปภาพ, หน้าต่าง, แบบฟอร์ม ฯลฯ เป็นวัตถุหนึ่งชิ้น

หลักการเชิงวัตถุ Action Script 3 เป็นภาษาคอมพิวเตอร์ที่รองรับการใช้หลักการ โปรแกรมเชิงวัตถุ

ความสามารถของ OOP การเขียนโปรแกรมแบบ OOP จะเน้น ที่ “Object & Class” นั่นก็หมายความว่า พยายามมองทุกสิ่งทุกอย่างในมุมของการโปรแกรมให้ เป็น Object ซึ่ง Object เป็น สมาชิกของ Class หลักการและความสามารถใน OOP คือ :: วัตถุ (Object) :: คุณสมบัติ (properties ) :: พฤติกรรม (Behavior) :: คลาส (Class) :: ตัวดำเนินการ (Operation) :: อินสแตนซ์ (Instance) :: การห่อหุ้มข้อมูล (Encapsulation) :: การสืบทอด (Inheritance) :: การเปลี่ยนรูป (Polymorphism) :: ความสัมพันธ์ระหว่าง Class (Relationship)

คลาส (Class) เป็นต้นแบบหรือแม่พิมพ์ ที่ใช้ในการผนวกหลาย ๆ Object เข้าด้วยกัน โดยจัด กลุ่ม Object ที่มีความคล้ายคลึงกันอยู่ ใน Class เดียวกัน ตัวอย่างของ “Class: มวยสากล” ซึ่งจะมี Object มี Properties และ Behavior ที่แตกต่างกัน เช่น “Object สมรักษ์” “Properties มีลักษณะตัว สูง พูดจาโอ้อวด” “Behavior มีพฤติกรรมในการชกที่สามารถออกหมัดได้เร็ว และ แม่นยำ ซึ่ง Properties และ Behavior นี้ก็จะมีลักษณะที่แตกต่างไป จาก “Object สามารถ”

คลาส (Class) ตัวอย่าง คลาสบ้าน พิมพ์เขียวของบ้าน = Class วัตถุตามแบบก่อนจึงจะใช้งานได้

Object สิ่งที่ถูกสร้างมาจากต้นแบบเพื่อที่จะนำไปใช้งานตามที่ต้นแบบ ได้ระบุความสามารถว่าจะสามารถทำงานอะไรได้บ้าง เช่นเดียวกับการสร้างบ้านหลังหนึ่ง จะต้องมีการออกแบบบ้านใน กระดาษไว้ก่อน แล้วจึงจะนำไปสร้างเป็นหลังได้ บ้านที่สร้างมาจากแบบบ้าน = Object Object สามารถถูกใช้งานได้โดยตรง Object จะมีคุณสมบัติและความสามารถตามที่ได้กำหนดไว้ในต้นแบบ หรือกำหนดไว้ใน Class นั่นเอง

Properties เป็นคุณสมบัติเฉพาะของ Class นั้นๆ คล้ายๆ ตัวแปรประจำของ Class นั้นๆ เพื่อใช้ในการเก็บค่าต่างๆที่เกี่ยวข้องภายใน Class properties ของคนมีอะไรบ้าง ? ความสูง อายุ น้ำหนัก

วัตถุ (Object) และคุณสมบัติ (properties ) พฤติกรรม (Behavior) เหตุการณ์ (Event) ที่ทำให้ Object  แสดงพฤติกรรมต่าง ๆ   เช่น เหตุการณ์ ของปุ่ม Add  เมื่อถูก Click  จะแสดงพฤติกรรมคือ สั่งให้ Text ว่างเพื่อให้ผู้ใช้ สามารถป้อนข้อมูลได้ การมองภาพสิ่งต่าง ๆ เป็นวัตถุเป้าหมาย ภายใน Object ประกอบด้วย Properties (คุณสมบัติ ของ Object) กับ Behavior (พฤติกรรมการตอบสนองต่อเหตุการณ์ :Event ต่าง ๆ ของ Object) ตัวอย่าง “Object : จักรยาน” ประกอบด้วยคุณสมบัติ (Properties) สีรถ , ขนาด ,รุ่น, ประเภท เป็นต้น และมีพฤติกรรมการตอบสนองต่อเหตุการณ์ (Behavior) เช่น ตอบสนองต่อ การปันจักรยาน ตอบสนองต่อเหตุการณ์เบรก เป็นต้น Object : ปุ่ม ประกอบด้วยคุณสมบัติ (Properties) ข้อความบนปุ่ม ,ขนาดของปุ่ม สีของปุ่ม, Stye ของปุ่ม เป็นต้น และมีพฤติกรรมการตอบสนองต่อเหตุการณ์ (Behavior) เช่น ตอบสนองต่อการถูก Click เป็นต้น

คำถาม Class = แบบแปลนเครื่องบิน Object = Class = แบบแปลนรถยนต์ เครื่องบินประเภทต่างๆ รถประเภทต่างๆ เสือ,วัว

Class กับ Object Class เป็นสิ่งที่ใช้สร้าง Object

Class กับ Object Class ของบ้าน มีรายละเอียดดังนี้ บ้านมี หลังคา บ้านมี ประตู บ้านมี หน้าต่าง Class เป็นเหมือนต้นแบบหรือแบบแปลน แสดงว่า ถ้ามี Class ของบ้าน คนจะเอาไปอยู่ใน Class บ้านได้หรือไม่ ?

Class ส่วนประกอบของคลาส Class Name = ชื่อของ Class Class Body = ส่วนประกอบภายใน Class Properties = คุณสมบัติของ Class Methods = การกระทำของ Class ว่า Class สามารถทำงานอะไรได้บ้าง Constructor = คล้าย Method แต่มีคุณสมบัติแตกต่างจาก method คือ มีชื่อเดียวกับ Class จะทำงานทันที เมื่อมีการสร้าง Class

Class class name constructor methods

ตัวดำเนินการ (Operation) “Method” เป็นวิธีการในการควบคุมหรือ สั่งงาน Behavior ให้ Object นั้นตอบ สองต่อเหตุการณ์หรือคำสั่งตามที่เรา ต้องการ

อินสแตนซ์ (Instance) Object ที่ใช้งานจริง ๆ ถูกสร้างขึ้นใน Class นั้น ๆ เช่น Object ที่ถูกสร้าง (Instantiated) จาก Class A ก็จะเป็น Instance ของ class A

การสืบทอด (Inheritance) “Class แม่” (Super Class) สามารถสืบทอดข้อมูลไปยัง “Class ลูก” (Sub Class) ได้ ซึ่ง Class ลูกจะรับคุณสมบัติทุกอย่างมาจาก Class แม่ และสามารถ เพิ่มเติมคุณสมบัติใหม่เฉพาะตัวของตนเองเข้าไป

ความสัมพันธ์ระหว่าง Class (Relationship)

การห่อหุ้มข้อมูล (Encapsulation) การรวมข้อมูล และ ฟังก์ชัน เข้าไว้ใน Object ตัวเดียว และสามารถปกป้องไม่ให้คน นอก ซึ่งหมายถึง Object อื่นๆ เข้าถึงได้ สามารถ "ห่อหุ้มข้อมูล" ภายใน Class โดยระบุ Keyword ด้วย คำว่า “private” นำหน้า Class นั้น ๆ

การเปลี่ยนรูป (Polymorphism) ความสามารถในการเขียนโปรแกรมให้ Method ใด ๆ ของ Object ที่เราสืบทอดมา จาก “คลาสแม่” นั้นสามารถทำงานแตกต่างไป จาก Object ใน “คลาสแม่” เรียกได้ว่าเป็นการเปลี่ยนรูปร่าง ของ Object หนึ่ง ๆ ตัวอย่างเช่น คลาส Rectangle และคลาส Circle สืบทอดคุณสมบัติในการ วาดรูปมาจาก คลาส Poligon โดยทั้งสองคลาสนี้สามารถเพิ่มเติม คุณลักษณะเฉพาะของตนเอง เข้าไป นั่นก็คือ Operation (Method) draw() ที่ใช้ในการวาดรูป แต่เมื่อ 2 คลาสนี้เรียกใช้ draw() แล้ว จะทำงานจะได้ผลลัพธ์แตกต่างกัน