งานนำเสนอกำลังจะดาวน์โหลด โปรดรอ

งานนำเสนอกำลังจะดาวน์โหลด โปรดรอ

1 Object-Oriented PHP กนกวรรธน์ เซี่ยงเจ็น สำนักวิชาเทคโนโลยีสารสนเทศ และการสื่อสาร มหาวิทยาลัยนเรศวร พะเยา.

งานนำเสนอที่คล้ายกัน


งานนำเสนอเรื่อง: "1 Object-Oriented PHP กนกวรรธน์ เซี่ยงเจ็น สำนักวิชาเทคโนโลยีสารสนเทศ และการสื่อสาร มหาวิทยาลัยนเรศวร พะเยา."— ใบสำเนางานนำเสนอ:

1 1 Object-Oriented PHP กนกวรรธน์ เซี่ยงเจ็น สำนักวิชาเทคโนโลยีสารสนเทศ และการสื่อสาร มหาวิทยาลัยนเรศวร พะเยา

2 2 เนื้อหา  หลักการของ Object-Oriented  การสร้าง Class, Attribute และ Operation ใน PHP  การเรียกใช้ Class Attribute  การเรียกใช้ Class Operation  การถ่ายทอดคุณสมบัติ Inheritance  การออกแบบ Class

3 3 หลักการของ Object-Oriented  ภาษาในการเขียนโปรแกรมสมัยจะ อยู่ในรูปแบบของวิธีการเชิงวัตถุ Object-Oriented การพัฒนาเชิงวัตถุ เป็นการสร้างความสัมพันธ์ แยก การกระทำ และสร้าง คุณสมบัติเฉพาะของวัตถุ เพื่อช่วย ให้สะดวกในการพัฒนารวมกัน รวมไปถึงการนำกลับมาใช้ใหม่ ประกอบด้วย  Class and Object  Polymorphism  Inheritance

4 4 Class and Object  Class คือแม่แบบของ Object ที่ ประกอบด้วย  คุณสมบัติ (Attribute): เช่นตัวแปรต่างๆ ที่ประกาศขึ้นใช้งาน  วิธีการดำเนินการ (Operation): เช่น ฟังก์ชันการทำงานต่างๆ ที่กระทำกับ คุณสมบัติที่นิสิตกำหนดขึ้นมา

5 5 Inheritance Inheritance คือ คุณสมบัติในการ ถ่ายทอดลักษณะ และ Member จาก Class หนึ่งที่อยู่เหนือกว่า (Super class) ไปยังอีก Class หนึ่งที่อยู่ระดับล่าง (Sub class) โดย Class ที่รับการถ่ายทอด จะมีลักษณะ เช่นเดียวกัน Class ต้นแบบทุกประการ โดยที่เราสามารถปรับปรุง เปลี่ยนแปลงลักษณะและ Member จาก Class ต้นแบบ ให้มีความสามารถใหม่ๆ ขึ้นมา ช่วยให้ประหยัดเวลาในการ พัฒนา

6 6  Class ต้นแบบ เรียกว่า "Base Class" หรือ "Parent Class" หรือ "Parent Class"  Class ที่รับการถ่ายทอด เรียกว่า "Derived Class" หรือ "Child Class" หรือ "Child Class" Parent Class Child Class

7 7  Class ต้นแบบ คือ Person  Class ที่รับการถ่ายทอด คือ Student, Nurse, Doctor ซึ่งจะมีคุณลักษณะ เหมือน Person Person Nurse Doctor Student

8 8 Inheritance  ข้อดี  สามารถนำ code กลับมาใช้ใหม่ได้ โดยไม่ต้องเขียนใหม่  สามารถแก้ไขที่ super class ที่เดียว โดยไม่ต้องแก้ไขทุกๆ sub class ที่ ได้รับการ extend มา  ลดความซับซ้อนของโปรแกรม  ข้อเสีย  ถ้าออกแบบไม่ดี มีผลกระทบที่ ร้ายแรงในภายหลัง

9 9 การสร้าง Class, Attribute และ Operation ใน PHP class classname { var $attribute_name; function func_name(){ } // end function } // end class class classname { var $attribute_name; function func_name(){ } // end function } // end class การประกาศเพื่อสร้าง class สร้าง attribute ต้องมี var สร้าง operation

10 10 ตัวอย่าง class student { var $student_id; function show_student_id(){ } // end function } // end class class student { var $student_id; function show_student_id(){ } // end function } // end class การประกาศเพื่อสร้าง class สร้าง attribute ต้องมี var สร้าง operation

11 11 Constructor  เป็นฟังก์ชันที่จะถูกเรียกใช้งานโดย อัตโนมัติ เมื่อมีการสร้าง Object ใหม่ โดย ที่ Constructor มีรูปแบบคือ หรืออาจกำหนดชื่อของฟังก์ชัน ให้ตรง กับชื่อ Class ก็ได้ เรานิยมใช้สำหรับ กำหนดค่าเริ่มต้นให้กับ attribute หรือ method หรืออาจกำหนดชื่อของฟังก์ชัน ให้ตรง กับชื่อ Class ก็ได้ เรานิยมใช้สำหรับ กำหนดค่าเริ่มต้นให้กับ attribute หรือ method function __construct(){ } function __construct(){ } รูปแบบ

12 12 Example: __construct() class student { var $student_id; function __construct($param){ echo "Constructor with parameter $param"; } // end function } // end class class student { var $student_id; function __construct($param){ echo "Constructor with parameter $param"; } // end function } // end class การประกาศเพื่อสร้าง class สร้าง attribute สร้าง constructor

13 13 Destructor  เป็นฟังก์ชันที่จะถูกเรียกใช้งานโดย อัตโนมัติ ก่อนการทำลาย Class ที่ใช้ งานอยู่ โดยที่ Destructor มีรูปแบบคือ จะถูกเรียกใช้เมื่อมีการ unset ตัวแปร Class ที่เราสร้างขึ้น function __destruct(){ } function __destruct(){ } รูปแบบ

14 14 Example: __destruct() class student { var $student_id; function __destruct($param){ echo "You are Destroy Class"; } // end function } // end class class student { var $student_id; function __destruct($param){ echo "You are Destroy Class"; } // end function } // end class การประกาศเพื่อสร้าง class สร้าง attribute สร้าง destructor

15 15 Example: construct & destruct class student{ function __construct($param){ echo "Construct Class for $param "; } // end constructor function __destruct(){ function __destruct(){ echo "Destroy Class!!"; echo "Destroy Class!!"; } // end destructor } // end class $stu = new student('uthai');// create instance unset($stu);// destroy class Construct Class for uthai Destroy Class!!

16 16 การเรียกใช้ Class Attribute  ในการใช้งาน Class เมื่อเราต้องการ ที่จะอ้างอิง Attribute ที่อยู่ภายใน Class สามารถทำได้ โดยใช้ Pointer พิเศษที่ชื่อว่า $this ชี้ไปที่ชื่อของ Attribute ที่เราต้องการ var $attribute_name;... $this -> attribute_name; var $attribute_name;... $this -> attribute_name; รูปแบบ

17 17 การเรียกใช้ Class Operation  การเรียกใช้งาน Class Operation จะ ทำได้ก็ต่อมีการเรียกใช้งานผ่าน instance ที่เราสร้างขึ้นมาจาก Class

18 18 Example: Class Attribute & Operation class student{ var $student_id; var $student_id; function __construct($param){ $this -> student_id = $param; } // end constructor function show_id(){ echo "student id = ". $this -> student_id; } // end function } // end class $stu = new student( );// create instance $stu -> show_id();// show student id student id = Class Attribute Class Operation

19 19 การถ่ายทอดคุณสมบัติ Inheritance  เป็นการถ่ายทอด Attribute และ Operation จาก Class แม่แบบ โดยเราต้องใช้คำสั่ง extends ตามหลังชื่อ Class แล้วปิดท้าย ด้วยชื่อ Class ต้นแบบ สร้าง Class student โดยถ่ายทอด Attribute และ Operation จาก Class person class student extends person { } class student extends person { } รูปแบบ

20 20 Example: Inheritance class person{ var $firstname; var $lastname; function __construct($fname, $lname){ $this -> firstname = $fname;// assign value to firstname $this -> lastname = $lname;// assign value to lastname } // end function function show_detail(){ echo "Hello, " ; echo $this -> firstname. " ". $this -> lastname; } // end function } // end class $detail = new person("Uthai", "ShiangJan"); $detail -> show_detail(); Hello, Uthai ShiangJan

21 21 Example: Inheritance class person{ var $firstname; var $lastname; function __construct($fname, $lname){ $this -> firstname = $fname;// assign value to firstname $this -> lastname = $lname;// assign value to lastname } // end function function show_detail(){ echo "Hello, " ; echo $this -> firstname. " ". $this -> lastname; } // end function } // end class class student extends person{ // inheritance } // end class $detail = new student("Uthai", "ShiangJan"); $detail -> show_detail(); Hello, Uthai ShiangJan Person Student

22 22 Overriding ในการ Inheritance Class มาเพื่อใช้ งานบางครั้งเราจำเป็นต้องมีการ เปลี่ยนแปลง (Modify) function การทำ ให้ให้สอดคล้องกับ Class ใหม่ที่เรา สร้างขึ้น การทำ Overriding คือการสร้าง Function ใน Sub Class ที่มีชื่อเหมือน Function ของ Class แม่แบบ เพื่อให้ ทำงานที่แตกต่างไปจาก Function ของ Class แม่แบบ

23 23 การออกแบบ Class  โดยทั่วไปเราจะนำ Class แทน Object ที่มีอยู่ในชีวิตจริง เช่น หาก เราต้องการออกแบบ E-Commerce เราก็ควรแบ่งส่วนประกอบของ E- Commerce เป็นส่วนๆ เช่น Shopping cart ก็แยกออกมาสร้างเป็น Class เพื่อให้สามารถนำเอา Shopping cart ไปใช้งานได้กับเว็บ E-Commerce อื่นๆ ได้อีก

24 24 Example: Overriding class person{ function show_detail(){ echo "Hello World " ; } // end function } // end class class student extends person{ } // end class $detail = new student(); $detail -> show_detail(); class person{ function show_detail(){ echo "Hello World " ; } // end function } // end class class student extends person{ function show_detail(){ echo “Hi World " ; } // end function } // end class $detail = new student(); $detail -> show_detail(); Hello World Hi World


ดาวน์โหลด ppt 1 Object-Oriented PHP กนกวรรธน์ เซี่ยงเจ็น สำนักวิชาเทคโนโลยีสารสนเทศ และการสื่อสาร มหาวิทยาลัยนเรศวร พะเยา.

งานนำเสนอที่คล้ายกัน


Ads by Google