Transcript 02_OOP.ppt

LOGO
หลักการเชิงวัตถุ
(Object Oriented Concept)
07/08/59
Nerissa Onkhum
1
วัตถุประสงค์
แนะนาวัตถุและคลาส
อธิบายคุณลักษณะและเมธอด
อธิบายการเขียนโปรแกรมเชิงวัตถุโดยใช้ ภาษาจาวา
แนะนาการเขียนโปรแกรมโดยใช้ คุณลักษณะเด่ น
ของโปรแกรมเชิงวัตถุ
แนะนา Unified Modelling Language
อธิบายขั้นตอนการพัฒนาโปรแกรม
07/08/59
2
หลักการเชิงวัตถุ
 ภาษาจาวาเป็ นภาษาคอมพิวเตอร์ที่ใช้หลักการเชิงวัตถุ
 OOP (Object Oriented Programming)
 OOP เป็ นขบวนการการพัฒนาโปรแกรมโดยการจาลองปัญหาว่า
ประกอบไปด้วยวัตถุใดบ้าง
 นิยามที่สาคัญคือ
 วัตถุ (object)
 คลาส (class)
07/08/59
3
วัตถุ
วัตถุคือสิ่ งต่ าง ๆ ทีม่ ีอยู่ในชีวติ ประจาวัน
 วัตถุที่เป็ นรู ปธรรมเช่น นักศึกษา ใบลงทะเบียน ปากกา และรถ
 วัตถุที่เป็ นนามธรรมเช่น คะแนน รายชื่อวิชา บัญชีเงินฝาก และ
ตารางเที่ยวบิน
วัตถุประกอบด้ วย
 คุณลักษณะ (attribute) หรื อข้อมูล (data)
 พฤติกรรม (behavior) หรื อเมธอด (method)
07/08/59
4
วัตถุ
คุณลักษณะ
 ข้อมูลของวัตถุ
 แต่ละวัตถุอาจมีค่าของคุณลักษณะที่ต่างกัน
เมธอด
 สิ่ งที่วตั ถุสามารถกระทาได้
 คาสัง่ ในการทางานของโปรแกรมเชิงวัตถุ
 โปรแกรมจะจัดการกับข้อมูลโดยเรี ยกใช้เมธอด
07/08/59
5
ตัวอย่ างของวัถตุ
วัตถุ “พนักงานบริษทั ”
แอตทริ บิวต์
เมธอด
รหัสพนักงาน, เงินเดือน, เวลาเข้างาน
รู ดบัตรพนักงาน, รับเงินเดือน
วัตถุ “โทรทัศน์ ”
แอตทริ บิวต์
เมธอด
07/08/59
ยีห่ อ้ , ขนาด, ระบบเสี ยง, ฟังก์ชนั การทางาน
เปิ ด, ปิ ด, เพิ่ม, ลดเสี ยง, ปรับความคมชัดของภาพ
6
ตัวอย่ างของวัถตุ
วัตถุ “รถจักรยานยนต์ ”
แอตทริ บิวต์
เมธอด
ยีห่ อ้ , รุ่ น, สี , ระบบเกียร์ , ปริ มาตรกระบอกสู บ
ติดเครื่ อง, ออกตัว, เลี้ยว, เปลี่ยนเกียร์ , หยุดรถ
วัตถุ “โทรศัพท์ มือถือ”
แอตทริ บิวต์
เมธอด
07/08/59
ยีห่ อ้ , รุ่ น, จอภาพ, รู ปแบบของเสี ยงเรี ยกเข้า
เปิ ด, ปิ ด, เลือกรู ปแบบของเสี ยงเรี ยกเข้า, ตั้งเวลาปลุก
7
ตัวอย่ างของโปรแกรมเชิงวัตถุ
โปรแกรมระบบจัดการบัญชีเงินฝากของธนาคาร
ตัวอย่ างของวัตถุ
 Account
 Customer
 Transaction
 ATM
Account
 อาจมีคุณลักษณะเช่น เลขที่บญั ชี ชื่อเจ้าของบัญชี วันที่เปิ ดบัญชี
และยอดเงินคงเหลือ

อาจมี
เ
มธอดเช่
น
ฝาก
ถอน
และโอนเงิ
น
07/08/59
8
คลาส
เปรี ยบเสมือนพิมพ์เขียวของวัตถุ
วัตถุจะถูกสร้างมาจากคลาส บางครั้งเรี ยกว่าเป็ น instance
ของคลาส
คลาสหนึ่งคลาสสามารถสร้างวัตถุได้หลายวัตถุ อาทิเช่น
คลาสชื่อ Student อาจสร้างวัตถุชื่อ s1,s2 หรื อ s3 ซึ่ งเป็ น
วัตถุชนิด Student
07/08/59
9
รูปแสดงการสร้ างวัตถุจากคลาส Student
07/08/59
10
คุณลักษณะของวัตถุ
ข้อมูลที่เก็บอยูใ่ นวัตถุแบ่งเป็ นตัวแปร (variable)
และค่าคงที่ (constant)
 ตัวแปรคือคุณลักษณะที่สามารถเปลี่ยนค่าได้
 ค่าคงที่คือคุณลักษณะที่ไม่สามารถเปลี่ยนค่าได้
07/08/59
11
ตัวอย่ างคุณลักษณะของวัตถุ
07/08/59
12
คุณลักษณะของคลาส
เป็ นคุณลักษณะที่ใช้ร่วมกันของทุกวัตถุ
ทุกวัตถุจะใช้คุณลักษณะร่ วมกันทาให้ประหยัดพื้นที่
ในหน่วยความจา
ตัวอย่างเช่น คุณลักษณะที่กาหนดให้เป็ นค่าคงที่ชื่อ
MIN_GPA
07/08/59
13
ตัวอย่ างคุณลักษณะของคลาส
07/08/59
14
เมธอด
วิธีการหรื อการกระทาที่นิยามอยูใ่ นคลาสหรื อวัตถุ
เพื่อใช้ในการจัดการกับคุณลักษณะของวัตถุ
เปรี ยบเทียบได้กบั function, procedure หรื อ subroutine
ของโปรแกรมเชิงกระบวนการ
ตัวอย่างเช่น เมธอด deposit() เพื่อเป็ นเมธอดสาหรับ
ฝากเงิน
07/08/59
15
การสื่ อสารระหว่ างวัตถุ
การสื่ อสารระหว่างกันของวัตถุทาได้โดยการผ่านข่าวสาร (message)
objB คือ ชื่อวัตถุ
method4 คือ ชื่อเมธอด
(1,2) คือ argument
07/08/59
16
การสื่ อสารระหว่ างวัตถุ
ข่าวสารจะส่ งผ่านจากวัตถุ objA ที่เป็ นผูส้ ่ ง (sender)
เพื่อเรี ยกการทางานของเมธอดที่ชื่อ method4 จากวัตถุ objB
ที่เป็ นผูร้ ับ (receiver)
objB อาจส่ งค่า (return value) บางค่ากลับมายัง objA
07/08/59
17
การเขียนโปรแกรมเชิงวัตถุ
โดยใช้ ภาษาจาวา
Modifier ในภาษาจาวา
การประกาศคลาส
การประกาศคุณลักษณะ
การประกาศเมธอด
การประกาศและสร้างวัตถุ
การเรี ยกใช้สมาชิกของวัตถุ
07/08/59
18
Modifier ในภาษาจาวา
Modifier ในภาษาจาวาแบ่งออกเป็ น 2 ประเภท คือ
 Access modifier ได้แก่ private, public, protected และ
package (อาจเรี ยก package ว่า none, default หรื อ friendly)
 Non-access modifier ได้แก่ final, abstract, static, native,
transient, volatile, synchronized, strictfp
07/08/59
19
Modifier ในภาษาจาวา
การนา Access Modifier ไปใช้ งาน
access modifier ใช้กาหนดไว้หน้าคลาส แอตทริ บิวต์ เมธอด
จุดประสงค์ เพื่อกาหนดระดับการเข้าใช้งาน
access modifier : public, protected, package, private
modifier public และ package สามารถใช้กาหนดให้กบั คลาส
แอตทริบิวต์ หรื อเมธอด
 Modifier protected และ private ใช้กาหนดให้กบั คลาสไม่ได้ แต่
สามารถกาหนดให้กบั แอตทริบิวต์ หรื อเมธอดได้




07/08/59
20
Modifier ในภาษาจาวา
สรุปการนา access modifier แต่ ละแบบไปใช้ งาน
Access modifier
public
protected
package
private
07/08/59
ใช้ กบั คลาส
ใช้ กบั แอตทริบิวต์
ใช้ กบั เมธอด












21
Modifier ในภาษาจาวา
จาวาแบ่งระดับของ access modifier ออกเป็ น 4 ระดับ คือ
 public (สาธารณะ) หากกาหนด modifier public ให้กบั คลาส แอตทริ บิวต์
หรื อเมธอดใดแล้ว คลาสอื่น ๆ จะสามารถเข้ าใช้ งานคลาส แอตทริบิวต์
หรื อเมธอดนั้นได้ อสิ ระ ไม่ มีขีดจากัด
 protected (ถูกปกป้ อง) ไม่ได้เปิ ดให้คลาสใด ๆ สามารถเข้าใช้งานได้
อย่างอิสระ แต่ไม่ถึงกับปิ ดไม่ให้ใครเข้าใช้งานเลย
07/08/59
22
Modifier ในภาษาจาวา
 protected มีลกั ษณะการเข้าใช้งาน ดังนี้
07/08/59
• กาหนด modifier เป็ น protected ให้กบั แอตทริ บิวต์และเมธอดของคลาส
คลาสอื่น ๆ ในเพ็กเกจเดียวกันจะสามารถเรียกใช้ งานแอตทริบิวต์ และ
เมธอดได้
• กาหนด modifier เป็ น protected ให้กบั แอตทริ บิวต์และเมธอดของคลาส
คลาสอื่น ๆ ทีอ่ ยู่ต่างเพ็กเกจ จะไม่ สามารถเรียกใช้ งานแอตทริบวิ ต์ และ
เมธอดได้
• กาหนด modifier เป็ น protected ให้กบั แอตทริ บิวต์และเมธอดของคลาส
คลาสอื่น ๆ ที่มีความสั มพันธ์ เป็ นคลาสแม่ คลาสลูกกับคลาสนี้ ถึงแม้จะ
อยู่คนละแพ็กเกจกัน ก็สามารถเรียกใช้ งานแอตทริบิวต์ และเมธอดได้
23
Modifier ในภาษาจาวา
 package
• กรณี ที่ไม่ ได้ กาหนด modifier ใด ๆ ไว้หน้าคลาส แอตทริ บิวต์หรื อเมธอด จะทา
ให้ คลาส แอตทริบิวต์ หรื อเมธอดมีระดับเข้ าถึงเป็ น package
• กาหนด modifier เป็ น package หน้าคลาส แอตทริ บิวต์ หรื อเมธอด จะทาให้
คลาสทีอ่ ยู่ในแพ็กเกจอื่นจะไม่ สามารถเข้ าใช้ งานคลาส แอตทริบิวต์ หรื อเมธอดได้
 private (ส่ วนบุคคล)
07/08/59
• แอตทริบิวต์ และเมธอดของคลาสจะถูกหุ้มห่ อ (Encapsulate) เอาไว้ ปิ ดกั้นไม่ให้
คลาสอื่นเข้ามาใช้งานแอตทริ บิวต์หรื อเมธอดที่กาหนด modifier เป็ น private ได้
• จะมีเฉพาะคลาสของมันเองเท่ านั้นที่มีสิทธิ์ใช้ งานได้ หลักการนี้เรี ยกว่า
information hiding
24
Modifier ในภาษาจาวา
Access
modifier
public
protected
package
private
07/08/59
สรุปการทางาน access modifier แต่ ละแบบ
ต่ างแพ็กเกจกัน
ใช้ ได้
แพ็กเกจ
ต่ าง
แต่ เป็ นคลาสแม่
ทั้งหมด
เดียวกัน แพ็กเกจกัน คลาสลูก
















คลาส
เดียวกัน




25
การประกาศคลาส
โปรแกรมภาษาจาวาแต่ละโปรแกรมจะประกอบไปด้วยคลาสอย่างน้อย
หนึ่งคลาส โดยมีรูปแบบการประกาศ ดังนี้
[modifier] class Classname {
[class member]
}
 modifier คือคียเ์ วิร์ด (keyword) ของภาษาจาวาที่ใช้ในการอธิบายระดับการเข้าถึง
(access modifier)
 class คือคียเ์ วิร์ดของภาษาจาวาเพื่อระบุวา่ เป็ นการประกาศคลาส
 Classname คือชื่อคลาส
 class member คือเมธอดหรื อคุณลักษณะ
26
การประกาศคลาส
ตัวอย่าง
public class Student {
}
07/08/59
27
การประกาศคุณลักษณะ
คุณลักษณะของวัตถุคือตัวแปรหรื อค่าคงที่ซ่ ึงประกาศภายในวัตถุ
โดยมีรูปแบบการประกาศ ดังนี้
[modifier] dataType attributeName;
 modifier คือคียเ์ วิร์ดของภาษาจาวาที่อธิบายคุณสมบัติต่างๆของตัวแปร
หรื อค่าคงที่
 dataType คือชนิดข้อมูลซึ่งอาจเป็ นชนิดข้อมูลพื้นฐานหรื อชนิดคลาส
 attributeName คือชื่อของคุณลักษณะ
07/08/59
28
การประกาศคุณลักษณะ
ตัวอย่าง
public class Student {
public String id;
public String name;
public double gpa;
}
07/08/59
29
การประกาศเมธอด
ภาษาจาวากาหนดรู ปแบบของการประกาศเมธอดที่อยูใ่ นคลาสไว้ดงั นี้
[modifier] return_type methodName([arguments]) {
[method_body]
}
 modifier คือคียเ์ วิร์ดของภาษาจาวาที่ใช้อธิบายระดับการเข้าถึง
 return_type คือชนิดข้อมูลของค่าที่จะมีการส่ งกลับ
 methodName คือชื่อของเมธอด
 arguments คือตัวแปรที่ใช้ในการรับข้อมูลที่วตั ถุส่งมาให้
 method_body คือคาสั่งต่างๆของภาษาจาวาที่อยูใ่ นเมธอด
07/08/59
30
ตัวอย่ างโปรแกรม
public class Student {
public String id;
public String name;
public double gpa;
public void setID(String ID) {
id = ID;
}
public void setName(String n) {
name = n;
}
public void setGPA(double GPA) {
gpa = GPA;
}
public void showDetails() {
System.out.println("ID: "+id);
System.out.println("Name: "+name);
System.out.println("GPA: "+gpa);
}
}
07/08/59
31
เมธอดที่ชื่อ main()
โปรแกรมจาวาประยุกต์ (Java Application) จะเริ่ มต้นการทางาน
ในคลาสที่มีเมธอดที่ชื่อ main โดยมีรูปแบบของเมธอด ดังนี้
public static void main(String args[]) {
[method_body]
}
07/08/59
32
การประกาศวัตถุ
วัตถุทุกวัตถุในโปรแกรมภาษาจาวาจะต้องมีคาสัง่ ประกาศ เพื่อระบุวา่
วัตถุน้ นั เป็ นวัตถุของคลาสใด โดยมีรูปแบบการประกาศ ดังนี้
[modifier] ClassName objectName;
 modifier คือคียเ์ วิร์ดที่อธิบายคุณสมบัติต่าง ๆ ของวัตถุ
 ClassName คือชื่อของคลาสสาหรับวัตถุน้ นั
 objectName คือชื่อของวัตถุ
ตัวอย่าง
Student
s1;
07/08/59
33
การสร้ างวัตถุ
คาสัง่ ที่ใช้ในการสร้างวัตถุจะมีรูปแบบ ดังนี้
objectName = new ClassName([arguments]);
 objectName คือ ชื่อของวัตถุ
 new คือ คียเ์ วิร์ดของภาษาจาวาเพื่อใช้ในการสร้างวัตถุ
 ClassName คือ ชื่อของคลาส
 arguments คือ ค่าที่ตอ้ งการส่ งผ่านในการเรี ยก Constructor
ตัวอย่าง
s1 = new Student();
07/08/59
34
การประกาศและสร้ างวัตถุ
คาสัง่ ในการประกาศและสร้างวัตถุสามารถที่จะรวมเป็ นคาสั่งเดียวกัน
โดยมีรูปแบบคาสัง่ ดังนี้
[modifier] ClassName objectName = new ClassName([arguments]);
ตัวอย่าง
Student s1 = new Student();
07/08/59
35
การเรียกใช้ สมาชิกของวัตถุ
การเรี ยกใช้คุณลักษณะของวัตถุมีรูปแบบ ดังนี้
objectName.attributeName;
การเรี ยกใช้เมธอดของวัตถุมีรูปแบบ ดังนี้
objectName.methodName([arguments]);
 objectName คือชื่อของวัตถุที่สร้างขึ้น
 methodName คือชื่อของเมธอดของวัตถุน้ นั
 arguments คือค่าที่ตอ้ งการส่ งผ่านไปให้กบั เมธอดของวัตถุน้ นั
07/08/59
36
การเรียกใช้ สมาชิกของวัตถุ
ตัวอย่าง
s1.setName("Thana");
07/08/59
37
ตัวอย่ างโปรแกรม
public class Sample {
public static void main(String args[]) {
Student s1 = new Student();
Student s2 = new Student();
Student s3 = new Student();
s1.setID("1234");
s1.setName("Thana");
s1.setGPA(3.25);
s1.showDetails();
s2.setID("1122");
s2.setName("Somchai");
s2.setGPA(2.90);
s2.showDetails();
s3.setID("2211");
s3.setName("Somsri");
s3.setGPA(3.00);
s3.showDetails();
}
}
07/08/59
38
คุณลักษณะเด่ นของโปรแกรมวัตถุ
การห่อหุม้ (Encapsulation)
การสื บทอด (Inheritance)
การมีได้หลายรู ปแบบ (Polymorphism)
07/08/59
39
การห่ อหุ้ม
หมายถึงการจะเรี ยกใช้คุณลักษณะของวัตถุจะทาได้โดยการเรี ยก
ผ่านเมธอดเท่านั้น
หลักการของการห่อหุม้ คือการกาหนดให้คุณลักษณะของวัตถุมี
คุณสมบัติเป็ น private และกาหนดให้เมธอดมีคุณสมบัติเป็ น public
07/08/59
40
ข้ อดีของการห่ อหุ้ม
การซ่ อนเร้ นข้ อมูล (Information Hiding)
 ทาให้วตั ถุสามารถติดต่อกับวัตถุภายนอกผ่านเมธอดที่เป็ น
ส่ วนของ interface เท่านั้น
ความเป็ นโมดูล (Modularity)
 การพัฒนาโปรแกรมเชิงวัตถุจะสามารถกาหนดให้วตั ถุแต่ละ
วัตถุมีความเป็ นอิสระต่อกัน
07/08/59
41
ตัวอย่ างโปรแกรม
public class Student {
private String id;
private String name;
private double gpa;
public void setID(String ID) {
id = ID;
}
public void setName(String n) {
name = n;
}
public void setGPA(double GPA) {
gpa = GPA;
}
public void showDetails() {
System.out.println("ID: "+id);
System.out.println("Name: "+name);
System.out.println("GPA: "+gpa);
}
}
07/08/59
42
การสื บทอด
หมายถึงการนิยามคลาสใหม่จากรู ปแบบของคลาสที่มีอยูแ่ ล้ว โดยคลาสใหม่
สามารถที่จะนาคุณลักษณะและเมธอดของคลาสเดิมมาใช้ได้
โดยในภาษาจาวาจะใช้คียเ์ วิร์ด extends เพื่อระบุการสื บทอด
ตัวอย่าง
07/08/59
43
ตัวอย่ างโปรแกรม
public class PartTimeStudent extends Student { }
public class FullTimeStudent extends Student { }
public class GradStudent extends Student {
private String thesisTitle;
private String supervisor;
public void setThesisTitle(String t) {
thesisTitle = t;
}
public void setSupervisor(String s) {
supervisor = s;
}
}
public class PhDStudent extends GradStudent {
public boolean passQualify;
public boolean isPassQualify() {
return passQualify;
}
}
07/08/59
44
การมีได้ หลายรูปแบบ
หมายถึงการที่สามารถตอบสนองต่อข่าวสาร (เมธอด) เดียวกัน
ด้วยวิธีการที่ต่างกัน และสามารถกาหนดวัตถุได้หลายรู ปแบบ
ตัวอย่าง
07/08/59
45
ตัวอย่ างโปรแกรม
class Ball {
public void throw() { }
}
class SoccerBall extends Ball {
public void throw() {
System.out.println("Throwing soccerball");
}
}
class TennisBall extends Ball {
public void throw() {
System.out.println("Throwing tennisball");
}
}
public class TestBall {
public static void main(String args[]) {
Ball b1 = new Ball();
SoccerBall b2 = new SoccerBall();
Ball b3 = new SoccerBall();
}
07/08/59}
46
Unified Modeling Language (UML)
เป็ นภาษาที่สามารถนารู ปกราฟฟิ กมาจาลองโปรแกรม
เชิงวัตถุได้
ประกอบด้วยสองส่ วนคือ
 ไดอะแกรมของคลาส (Class Diagram)
 ไดอะแกรมของวัตถุ (Object Diagram)
07/08/59
47
ไดอะแกรมของคลาส
เป็ นสัญลักษณ์ทใ่ี ช้แสดงคลาส
ประกอบด้วยส่วนต่างๆ สามส่วนคือ
 ชื่อของคลาส
 คุณลักษณะภายในคลาส
 เมธอดภายในคลาส
07/08/59
48
ไดอะแกรมของวัตถุ
ประกอบไปด้วยส่ วนต่างๆสองส่ วนคือ
 ส่ วนที่ระบุชื่อของวัตถุ
 ส่ วนที่ระบุค่าของคุณลักษณะภายในวัตถุ
07/08/59
49
ขั้นตอนการพัฒนาโปรแกรม
ขั้นตอนการวิเคราะห์ (Analysis)
ขั้นตอนการออกแบบ (Design)
ขั้นตอนการเขียนโปรแกรม (Programming)
ขั้นตอนการทดสอบ (Testing)
ขั้นตอนการทางาน (Operation)
07/08/59
50
รูปแสดงขั้นตอนการพัฒนาโปรแกรม
07/08/59
51
สรุปเนื้อหาของบท
โปรแกรมเชิงวัตถุจะมีคานิยามที่สาคัญสองคาคือวัตถุและคลาส
วัตถุคือสิ่ งต่างๆที่มีอยูใ่ นชีวิตประจาวันจะประกอบไปด้วยคุณลักษณะและเมธอด
คลาสเปรี ยบเสมือนพิมพ์เขียวของวัตถุ วัตถุที่ถูกสร้างมาจากคลาส วัตถุหลายวัตถุ
สามารถถูกสร้างจากคลาสหนึ่งคลาสได้
คุณลักษณะของวัตถุคือข้อมูลที่เก็บอยูใ่ นวัตถุซ่ ึ งจะแบ่งออกเป็ น ตัวแปรและค่าคงที่
คุณลักษณะของคลาสเป็ นคุณลักษณะที่ใช้ร่วมกันของทุกวัตถุ
เมธอดคือวิธีการเพื่อใช้ในการจัดการกับคุณลักษณะของวัตถุหรื อคุณลักษณะของ
คลาส
07/08/59
52
สรุปเนื้อหาของบท
ภาษาจาวามีนิยามในการเขียนโปรแกรมเชิงวัตถุเพื่อประกาศคลาส คุณลักษณะ เมธอด
และวัตถุ
โปรแกรมเชิงวัตถุจะมีคุณลักษณะเด่นอยูส่ ามประการคือ การห่อหุ ม้ การสื บทอด
และการมีได้หลายรู ปแบบ
การห่อหุ ม้ คือการที่ให้คุณลักษณะถูกห่อหุ ม้ อยูภ่ ายในเมธอด โดยกาหนดให้
คุณลักษณะมี access modifier เป็ น private และกาหนดให้เมธอดมี access modifier
เป็ น public
ข้อดีของการห่อหุ ม้ คือการซ่อนเร้นข้อมูลและความเป็ นโมดูล
การสื บทอดคือการที่คลาสใหม่สามารถนาเอาคุณลักษณะและเมธอดของคลาสที่
ออกแบบไว้แล้วมาใช้ได้
07/08/59
53
สรุปเนื้อหาของบท
การมีได้หลายรู ปแบบคือการที่กาหนดให้มีการตอบสนองต่อเมธอดเดียวกันด้วย
วิธีการที่ต่างกัน และสามารถกาหนดวัตถุได้หลายรู ปแบบ
Unified Modeling Language (UML) เป็ นภาษาที่ใช้รูปกราฟฟิ กเพื่อจาลองระบบ
ซอฟต์แวร์ ในที่น้ ีได้แนะนาสัญลักษณ์ของ UML ที่สาคัญสองอย่างคือ ไดอะแกรม
ของคลาสและไดอะแกรมของวัตถุ
วัฎจักรการพัฒนาโปรแกรมจะประกอบไปด้วยขั้นตอนต่างๆ 5 ขั้นตอนคือ
ขั้นตอนการวิเคราะห์ ขั้นตอนการออกแบบ ขั้นตอนการเขียนโปรแกรม ขั้นตอน
การทดสอบ และขั้นตอนการทางาน
07/08/59
54
แบบทดสอบที่ 2
ให้ นักศึกษาตอบคาถามต่ อไปนี้
1. จงอธิ บายความหมายและส่ วนประกอบของวัตถุ พร้อมทั้งยกตัวอย่างประกอบ
2. คลาสคืออะไร
3. เมธอดคืออะไร
4. จงอธิ บายการสื่ อสารระหว่างวัตถุ
5. จงอธิบาย Modifier ในภาษาจาวาคืออะไร มีกี่ประเภท
6. จงสรุ ปการนา access modifier แต่ละแบบไปใช้งาน
7. จงสรุ ปการทางาน access modifier แต่ละแบบ
8. จงอธิบาย UML คืออะไร และมีส่วนประกอบอะไรบ้าง
07/08/59
55
LOGO
07/08/59
56