Weitere ähnliche Inhalte
Mehr von TaiMe Sakdisri (19)
Unit04
- 1. หนวยที่ 4
การสรางแบบจําลองคลาส
(Class Modelling)
OOAD 1/2551 ดร.สุขสถิต มีสถิตย 1
- 2. วัตถุประสงค
เพื่อใหผูเรียนสามารถ
อธิบายการสรางคลาสโมเดลได
อธิบายการใชผลลัพธของยูสเคสโมเดลได
อธิบายการวิเคราะหโครงสรางของระบบได
อธิบายการสรางอินพุตสําหรับขั้นการออกแบบได
OOAD 1/2551 ดร.สุขสถิต มีสถิตย 2
- 3. หลักการพัฒนาระบบเชิงวัตถุ
แบงสวนจัดการ (divide-and-conquer)
แบงปญหาที่ซับซอนเปนอ็อบเจกต
เอ็นแค็ปซุเลชัน (encapsulation)
่
แตละอ็อบเจกตถูกกําหนดบทบาททีชดเจน
่ ั
การติดตอผานอินเตอรเฟส (interface)
แตละอ็อบเจกตเปดเผยอินเตอรเฟสที่กําหนดวิธีการใชงาน
จํากัดมุมมอง (abstraction)
ความสามารถในการใสใจตอความสามารถที่สาคัญของอ็อบ
ํ
เจกตขณะที่ละเลยเรื่องอื่น
OOAD 1/2551 ดร.สุขสถิต มีสถิตย 3
- 4. แบบจําลองคลาส (Class Model)
แบบจําลองคลาส(class model) หรือ แบบจําลอง
เชิงโครงสราง (structural model) แสดงโครงสราง
ของระบบในรูปของคลาสและความสัมพันธระหวาง
คลาสในขอบเขตปญหา
สรางความเขาใจที่ตรงกันเกี่ยวกับกรอบความคิดของ
สิ่งตางๆ ในขอบเขตปญหา
OOAD 1/2551 ดร.สุขสถิต มีสถิตย 4
- 5. องคประกอบของแบบจําลองคลาส
คลาส (classes) = ตนแบบสําหรับสรางออบเจ็ค
คอนกรีตคลาส (Concrete classes)
แอ็บสแตร็กคลาส (Abstract classes)
แอททริบว (attributes) = หนวยขอมูลทีเกี่ยวของกับ
ิ ่
ลักษณะของคลาส
ควรมีเฉพาะแอททริบิวที่สําคัญตอที่การทํางาน
โอเปอรเรชัน (operations) = การกระทําทีออบเจ็ค
่
ของคลาสสามารถทําได
สนใจเฉพาะโอเปอรชนที่เกี่ยวของกับปญหา
ั
OOAD 1/2551 ดร.สุขสถิต มีสถิตย 5
- 6. องคประกอบของแบบจําลองคลาส
ความสัมพันธ (Relationships)
Generalization
การสืบทอดแอททริบิว และโอเปอรชน
ั
A-kind-of Relationship
Aggregation
เกี่ยวของแบบเปนสวนหนึ่ง (a-part-of relationship)
Association
ความสัมพันธระหวางคลาสแบบอืนๆ
่
OOAD 1/2551 ดร.สุขสถิต มีสถิตย 6
- 7. ประเภทของคลาส
Boundary classes/Interface classes
จําลองการปฏิสัมพันธระหวางระบบและแอคเตอร
Entity classes
จําลองสารสนเทศและพฤติกรรมที่เกี่ยวของในเหตุการณหรือ
แนวคิด
Control classes
แสดงการประสานงาน ลําดับ และการควบคุมออบเจ็คอื่นๆ
OOAD 1/2551 ดร.สุขสถิต มีสถิตย 7
- 14. การสรางแบบจําลองคลาส (Class
Model)
วัตถุประสงค : สรางลอจิกคัลโมเดลของระบบ
อินพุต : ยูสเคสโมเดล
เอาตพุต : คลาสโมเดล (สตรัคเจอรัลโมเดล)
คลาสไดอะแกรม
คําอธิบายคลาส
OOAD 1/2551 ดร.สุขสถิต มีสถิตย 14
- 15. การสรางแบบจําลองคลาส (Class
Model)
ขั้นตอน :
คนหาคลาส
กําหนดความรับผิดชอบของแตละคลาส
กําหนดรายละเอียดของคลาส
สรางคลาสไดอะแกรม
ตรวจสอบและปรับปรุงคลาสไดอะแกรม
จัดคลาสแบงเปนแพ็คเกจ (packages)
OOAD 1/2551 ดร.สุขสถิต มีสถิตย 15
- 16. วิธีการหาคลาส
(Approaches for Identifying classes)
การวิเคราะหนามวลี (Noun phrase approach)
การใชยสเคสเปนหลัก (The use-case driven
ู
approach)
การใชบัตร CRC (The Classes, Responsibilities,
and Collaborators (CRC) approach)
OOAD 1/2551 ดร.สุขสถิต มีสถิตย 16
- 17. การวิเคราะหนามวลี
(Noun phrase approach)
1. หาคลาสที่ควรพิจารณา
2. ตัดคลาสที่ไมเกี่ยวของ
3. พิจารณาคลาสที่ซ้ําซอน และสรางคําศัพทรวม
4. พิจารณาคลาสมีคําขยาย
5. พิจารณาคลาสที่ควรเปนแอททริบว ิ
6. พิจารณาความจําเปนของคลาส
OOAD 1/2551 ดร.สุขสถิต มีสถิตย 17
- 18. การหาคลาสที่ควรพิจารณา
(Identifying candidate classes)
เทคนิคการวิเคราะหคํานาม
คํานามและนามวลีบงบอก: คลาส อ็อบเจกต หรือแอททริบิว
คํากริยาบงบอก: พฤติกรรม หรือโอเปอรเรชันที่เกี่ยวของ
บางคลาสอาจไมปรากฏชัดแตไดมาจากความรูทั่วไป
พิจารณาเฉพาะคลาสทีเหมาะสมในขอบเขตปญหา
่
หลีกเลี่ยงคลาสที่ใชในขั้นตอนการสราง
ใสใจในการตั้งชือคลาส
่
OOAD 1/2551 ดร.สุขสถิต มีสถิตย 18
- 19. การใชยูสเคสเปนหลัก (The use-case driven
approach)
1. สรางแผนซีเคว็น หรือ คอมมิวนิเคชัน (คอแลบบอ
เรชัน) ของแตละยูสเคส (Sequence/collaboration
(i.e. collaboration) diagram)
2. หาคลาสจากแผนภาพ
3. หาโอเปอรเรชันจากแผนภาพ
4. หาการทํางานรวมกันระหวางคลาสจากแผนภาพ
OOAD 1/2551 ดร.สุขสถิต มีสถิตย 19
- 20. การใชบัตร CRC (The Classes, Responsibilities, and
Collaborators (CRC) approach)
1. พิจารณาหาคลาสและความรับผิดชอบของคลาส
(classes’ responsibilities)
ความรับผิดชอบ (Responsibilities): การรู (Knowing),
การทํา (Doing)
2. มอบหมายความรับผิดชอบ
3. หาการทํางานรวมกันระหวางคลาส (Collaboration)
การทํางานรวมกัน (Collaboration): ออบเจ็คทํางานรวมกัน
เพื่อตอบสนองตอการรองขอ
OOAD 1/2551 ดร.สุขสถิต มีสถิตย 20
- 21. บัตร CRC
CRC = Classes, Responsibilities and
Collaborators
บัตร CRC ลักษณะเหมือนหัวเรื่อง
บัตร CRC 1 ใบตอ 1 คลาส
บัตรแตละใบระบุ
ชื่อคลาส (Class)
ความรับผิดชอบของคลาส (Responsibilities)
คลาสที่ทํางานรวม (Collaborators)
คลาสที่ตองการเพื่อทํางานตามความรับผิดชอบใหสําเร็จ
ความรับผิดชอบหนึงดานอาจรองรับดวยเมธอดเดียว
่
หรือหลายเมธอด
OOAD 1/2551 ดร.สุขสถิต มีสถิตย 21
- 22. รูปแบบของบัตร CRC (CRC Card)
Class Name:
Responsibilities Collaborations/Collaborators
OOAD 1/2551 ดร.สุขสถิต มีสถิตย 22