lec03-1 : classification abstraction...nattapong songneam] การพัฒนาระบบ •...
TRANSCRIPT
http://www.siam2dev.com [ dr. nattapong songneam]
โดย อ.ดร. นฐพงศ สงเนยมhttp://[email protected]
สาขาวชา วทยาการคอมพวเตอรคณะวทยาศาสตรและเทคโนโลย มหาวทยาลยราชภฏพระนคร
Last Update : 09/08/2561
Lec03-1 : Classification Abstraction
แหลงขอมลเพมเตม : : http://www.lumpaya.com/sdlc01.htm
สอบระหวางภาค 3/2560
• บททใชสอบ
– บทท 1, 2, 3.1, 3.2, 3.3, 3.4, 4 , 5
• สอบ วนท.... 31 ส.ค. 2561
• หองสอบ ...
http://www.siam2dev.com [ dr. nattapong songneam]
ดร. นฐพงศ สงเนยม
• http://www.siam2dev.com
• E-mail : [email protected]
• Facebook : [email protected]
http://www.siam2dev.com [ dr. nattapong songneam]
Agenda
1. Objectives
2. Problem Domain
3. Concept / ความคดรวบยอด
4. Classification Abstractions คออะไร
5. หลกการสรางแผนภาพ Classification Abstractions
6. Encapsulation
7. Information Hiding
8. ประเภทของ Attributes และ functionshttp://www.siam2dev.com [ dr.
nattapong songneam]
Objectives
• วตถประสงค1. เพอใหผอานสามารถไดรหลกการในการก าหนด Problem Domain
2. เพอใหผอานไดเขาใจหลกในการหา Object ใน Problem Domain
3. เพอใหผอานสามารถใช Classification Abstraction เพอสราง Class จาก Object ทมอยได
4. เขาใจหลกการ Encapsulation และ Information Hiding ของ Class
http://www.siam2dev.com [ dr. nattapong songneam]
Classification Abstraction ?
• การก าหนด Problem Domainเมอตกลงทจะพฒนาระบบคอมพวเตอรดวยหลกการของ OOAD แลว
เพอการวเคราะหความตองการของผใช (User Requirement) สงทตองพจารณาอนดบแรกกคอการก าหนดขอบเขตของสงทตองการจะพจารณา เรยกขอบเขตนวา Problem Domain เราสามารถก าหนด Problem Domain ไดจากการสอบถามความตองการ (Requirement) จากผใชระบบ (End-User) งานนน ๆ
http://www.siam2dev.com [ dr. nattapong songneam]
Problem Domain คอการก าหนดขอบเขตของระบบทจะพฒนา
OOAD
• PM/CPM… Software Engineering
• SA
• DBA: Database Administrator
– ER
– Normalize
– DataDictionary
• DEV
• UXUI
• TESTER http://www.siam2dev.com [ dr. nattapong songneam]
การพฒนาระบบ
• เมอไดรบมอบหมาย จาก หนวยงาน หรอ บ. ให พฒนาระบบตามแนวทางเชงวตถ คอไดก าหนดแลววาจะใชแนวทางนในการพฒนา
http://www.siam2dev.com [ dr. nattapong songneam]
ในทมงาน 8-10 คน ..........PM : Project Manager บรหารจดการโครงงาน ภายในทม ใหเสรจตามภารกจทไดรบมอบหมาย
แนวทาง
• Traditional Development Process
• Object Oriented Development Process– ใชกระบวนการทงหมด
• OOA - Analysis
• OOD - Design
• OOP - Programming
• OOT= Testing
http://www.siam2dev.com [ dr. nattapong songneam]
OOSEObject-Oriented Software engineering
Traditional Development Process1. ก ำหนดปญหำ ระบโครงกำร
2. วเครำะหควำมตองกำร Requirement Specification (SA)
3. DFD /
4. Process description
5. ท ำ Data Dictionary
6. ออกแบบ ER
7. ท ำฐำนขอมล MySQL , MS-SQL Server , Oracle , Access
8. ออกแบบหนำจอ Mockup, Wireframe (UXUI)
9. เขยนโปรแกรม ตดตอฐำนขอมล
10. ทดสอบระบบ (TESTER)
http://www.siam2dev.com [ dr. nattapong songneam]
Object Oriented Development Process1. วเครำะหควำมตองกำร Requirement Specification.. USE CASE
2. USE CASE DIAGRAM
3. ท ำ Data Dictionary … Class Diagram
4. ออกแบบ ER … Class Diagram
5. แปลง Class Diagram >> Relational Database Management System (RDBMS)
6. เขยน Sequence diagram , Activity Diagram , …
7. ท ำฐำนขอมล MySQL , MS-SQL Server , Oracle , Access
8. ออกแบบหนำจอ Mockup, Wireframe
9. เขยนโปรแกรม ตดตอฐำนขอมล
10. ทดสอบระบบ
11. ถำยโอนงำน เขยน DEPLOYMENT DIAGRAM
http://www.siam2dev.com [ dr. nattapong songneam]
UML
•
–
–
http://www.siam2dev.com [ dr. nattapong songneam]
การก าหนดขอบเขตของระบบ
Problem Domain
• คอการก าหนดกรอบ(ขอบเขตของระบบ)ของระบบทจะพฒนา
http://www.siam2dev.com [ dr. nattapong songneam]
•
•
–
–
–
•
http://www.siam2dev.com [ dr. nattapong songneam]
• Entity กหมายถง object หรอ class ตามหลกการเชงวตถ
http://www.siam2dev.com [ dr. nattapong songneam]
ระบบรานสะดวกซอ
ระบบการจองหองพกโรงแรม
• หองพก ...จบ
http://www.siam2dev.com [ dr. nattapong songneam]
Information Gatheringวธการทใหไดมาซงความตองการ หรอ การเกบรวบรวมขอมล- ถาม สมภาษณ- แบบสอบถาม- สงเกต- document reviews- do it- observe
หองพก ?
การท า document reviewsของระบบการจองหองพกมอะไรบางทตอง
พจารณา• โบชวร .. จะดอะไร จะพจารณาเรองของ ราคา หองพก ...ตอบแคน....
• ....
• ใบเสรจ
• ใบจอง
• บตรพนกงาน
• ..ใบลงชอ
• การเชคอน เชคเอาท ...หลกฐาน
• ประวตพนกงาน
• ...http://www.siam2dev.com [ dr.
nattapong songneam]
http://www.siam2dev.com [ dr. nattapong songneam]
A
B
C
กลม A ตองสอบถามความตองการของกลม Cและวเคราะหระบบตามความตองการของกลม C
กลม B ตองสอบถามความตองการของกลม Aและวเคราะหระบบตามความตองการของกลม A
•
http://www.siam2dev.com [ dr. nattapong songneam]
Employee Customerserv
*** ค าวาระบบ กควรมมากกวา 1 หรอ 2 ตาราง/เอนทต
ปญหาทส าคญ ในการวเคราะห
• มกจะขาด– สวนทส าคญ
– สวนทไมส าคญ
• เกน– ไมผดมาก
http://www.siam2dev.com [ dr. nattapong songneam]
10 ฟงกชน10
Requirements
*** ระบบจองหองพก แต ท ำกำรจองไมไดระบบตรวจสอบเกรด แต เชคเกรดไมได
เกรด นศ. อาจารย วชาสาขาภาค
*** มกฟงกชน ? 10 ฟงกชนพอหรอไม ?
ระบบจองหองพกโรงแรม ?
• Functions
– 1. …………….จอง
– 2…………………
– 3……………….
– 4…………………………..
http://www.siam2dev.com [ dr. nattapong songneam]
หนาทของ SA
1. ไปรวบรวมความตองการ (Information gartering)2. จดล าดบความส าคญ3. เขยนเปนรายงานความตองการ
Requirement Specification4. อธบายใหผพฒนาระบบเขา 5. ท าความตกลงกบลกคา negation
http://www.siam2dev.com [ dr. nattapong songneam]
หนาทของ SA
1. ไปรวบรวมความตองการ (Information gathering)2. จดล าดบความส าคญ3. เขยนเปนรายงานความตองการ
Requirement Specification4. อธบายใหผพฒนาระบบเขาใจ5. ออกตว Prototype คยกบ UI Designer
5. ท าความตกลงกบลกคา negation
6. Formal Acceptance
สงตอใหโปรแกรมเมอร พฒนาระบบตอไป
Use case diagram
จงวเคราะหและออกแบบระบบการจองหองพก ออนไลน
http://www.siam2dev.com [ dr. nattapong songneam]
24
•
•
•
•
•
•
•
•
•
•
•
•
อ.ดร. นฐพงศ สงเนยม
•
http://www.siam2dev.com [ dr. nattapong songneam]
•
•
http://www.siam2dev.com [ dr. nattapong songneam]
27
•
•
•
•
•
•
•
•
•
•
•อ.ดร. นฐพงศ สงเนยม
•
–
–
–
–
–
–
•
http://www.siam2dev.com [ dr. nattapong songneam]
สวนประกอบของรถยนต
*** เฉพำะหนำรำน
• Integrate System : ทงระบบ
• Sub System : ระบบยอย
http://www.siam2dev.com [ dr. nattapong songneam]
Payroll System
1. HRM
2. TAX/VAT3. การเขางานออกงาน4. สวสดการ5. การจางงาน6. การขนเงนเดอน7. การอบรม8. สลปเงนเดอน9. OT10.บตรพนกงาน
Wharehourse
HRM
Inventory
…
POS
MIS: Management Information System
DSS : Decision Support System
TPS : Transaction Processing System
Tester
• Unit test• Integrate test
รถยนต
http://www.siam2dev.com [ dr. nattapong songneam]
สวนประกอบของรถยนต อะไหล การซอม คาซอม
คาอะไหล วธการช าระเงน
บรการ
ระบบรานขายรถยนตระบบซอมรถยนตระบบคารแคร
ระบบบรหารดแลรกษารถยนต
http://www.siam2dev.com [ dr. nattapong songneam]
รถ
???
มอะไรเพมเตม ถาเปนระบบรานคารแคร มแครถอยางเดยวเพยงพอไหม ?
ดดฝน
เคลอบส
ระบบบรหารดแลรกษารถยนต
http://www.siam2dev.com [ dr. nattapong songneam]
รถ
ซอม
มอะไรเพมเตม ถาเปนระบบรานคารแคร มแครถอยางเดยวเพยงพอไหม ?
บรการ
ช าระเงน
อะไหล
Problem Domain
ภาษ
*** สงทเกยวของ
ค าถาม
• จะท าทงระบบนนๆ
– HRM
– Purchase Order ระบบสงซอ
– ระบบสตอก Inventory System
– ระบบจอง Reservation System
– ระบบสมาชก member
– ฯลฯ
• หรอ ท าบางระบบยอย http://www.siam2dev.com [ dr. nattapong songneam]
นศ. ตองท าทงหมดขององคกรหรอ ทกระบบยอยๆ หรอไม ?ควรเอาระบบทเกยวของกน** 3 – 4 – 5
Problem Domain
http://www.siam2dev.com [ dr. nattapong songneam]
•
•
–
•
–
–
–
–
–
–
http://www.siam2dev.com [ dr. nattapong songneam]
อะไรท ผใช ไมตองร กใหซอนรายละเอยดไว
พวงมาลย
ลอ
*** จากตวอยาง เราสนใจแคการสตารทรถยนต จงพดถงแค เครองยนต อยางอนไมไดกลาวถงแตไมใชไมม
ค าถาม ท าไม ไมม ฟงกชน +เบรค()
http://www.siam2dev.com [ dr. nattapong songneam]
http://www.siam2dev.com [ dr. nattapong songneam]
คน
- ขา
+ เดนได()
*** จากตวอยาง เราสนใจแคการเดน เพราะฉะนนฟงกชน กเกยวการเดน ซงตองมขาแตไมใชไมม
ค าถาม ท าไม ไมม ฟงกชน +กน()
การกนเราไมได ใช ขา
Problem Domain
คน
- ขา
+ เดนได()+ เปลยนขา()
คน
• ขา
• แขน
• หว
• ล าตว
• เดน
• กน
• นอน
• เทยว
• ฯลฯhttp://www.siam2dev.com [ dr.
nattapong songneam]
คน
- ขา
- แขน
- ล าตว
+ เดน
+ กน
+ นอน
ในระบบงานธนาคาร ใครคอผใช
• คน X
– พนกงาน / เจาหนาท
– ลกคา
– ผจดการ ?
http://www.siam2dev.com [ dr. nattapong songneam]
http://www.siam2dev.com [ dr. nattapong songneam]
web win
mobile
Information Gathering
• แบบสอบถาม (Questionnaire)
• การสมภาษณ (Interviews)
• การสงเกต (Observe)
• การพจารณาเอกสาร (Document Review)
• ลงมอท า(Practice)
http://www.siam2dev.com [ dr. nattapong songneam]
*** การดตวอยางของเอกสารเดมไมใชการ COPY ผดกฎหมายเชน ไปเอาใบเสรจของ...ราน 7-11
มอะไรทอยใน Transcript บาง สกลลกษณ
• การออกเกรดอยางเดยวไมใชระบบ ?
http://www.siam2dev.com [ dr. nattapong songneam]
การทนายคณากร ไปเอาขอมลจาก Transcript
เรยกวาการท า ?
ตวอยางการเกบขอมลระบบงานการจายเงนเดอน
• ระบบจายเงนเดอน
– เอกสารเดม : สลป (Pay in slip) , ใบสมคร (Application Forms) , ใบลา , บตรพนกงาน , บตรตอก , สแกนลายนวมอ , ใบเซนชอ , ใบลาออก , แบบค ารอง , บตรประกนสงคม
– วธการท างานเดม : การเขางาน-ออก , ประเภท เปนกะ , FullTime , PartTime , OT
– กระบวนการมอะไรบาง
– ประเภทตางๆ มอะไรบาง
http://www.siam2dev.com [ dr. nattapong songneam]
http://www.siam2dev.com [ dr. nattapong songneam]
ในเฟส หนงของการ design หรอขนตอนการออกแบบจะตองออกแบบหนาจอหรอออกแบบ รายงาน- ใบสมคร
-ใบลา- บตรพนกงาน
วว/ดด/ปปวว/ดด/ปป
ชอ-นามสกล
รหสพนกงาน
แผนก
อเมล
•
•
•
http://www.siam2dev.com [ dr. nattapong songneam]
การคด OT
• คนหนงท าไดไมเกน กชวโมง
– อตราตอชวโมงเทาไหร และมวธคดอยางไร?
• 1.5 ของเงนเดอน = (1.5*Salary )/ (30*8) = 1.5*SAL/240
• ต.ย. สมมตเงนเดอน 10000 = 10000*1.5/240 = 62.5 บาท / ชม.
3*20*62.5 = 3750 + SAL = 13,750 บาท
http://www.siam2dev.com [ dr. nattapong songneam]
ดจากสลป
การคด OT ดไดจากใหน ? / นโยบาย/ Business Rule
จงคดเงนเดอนและโอท ของ พนง. ทชอ สมชายเงนเดอน 25000 , ท าโอท 20 วนๆ ละ 3 ชม ให คด โอท 2.5 เทาของ เงนเดอน จงหาเงนสทธท สมชาย จะไดรบ โดย หก ประกนสงคม 5% ของเงนเดอน
http://www.siam2dev.com [ dr. nattapong songneam]
Fix OT ชม. ละ 40
http://www.siam2dev.com [ dr. nattapong songneam]
•
–
–
–
–
–
–
http://www.siam2dev.com [ dr. nattapong songneam]
หกอะไรบาง ?
• ลา มาสาย ขาด
• ประกนสงคม
• ส ารองเลยงชพ
• ช.พ.ค. , สหกรณ กรณเปนคร/ขาราชการ
http://www.siam2dev.com [ dr. nattapong songneam]
งานกลมทตอง สง ครงท 1
• ก าหนด ชองาน
• สมาชก
• Business Rule ของ บ. ของกลม ......
• ไมนอยกวา 2-3 หนากระดาษ
http://www.siam2dev.com [ dr. nattapong songneam]
*** สง สป. หนา
Classification Abstraction
• การก าหนด Problem Domain (ตอ)
– ขอควรจ าในการหาและก าหนด Problem Domain นน กคอ Problem Domain ทแนชดมกจะยงไมสามารถหาไดในข นตนของการเร มวเคราะหระบบ แตก าหนดโครงใหญ หรอภาพรวมของ Problem Domain น นตองแนชด
– เชน ถาตกลงใจจะพฒนาระบบงานใหกบฝายบญช นนแสดงวา Object ตาง ๆ ตองเปนเรองทเกยวของกบฝายบญช (ซงขณะเดยวกนอาจเกยวกบฝายบคคลกได แตตองไมม Object ใด ๆ ทไมเกยวกบฝายบญช) ซงในตอนตนอาจจะไมไดรวมเอางบการเงน เปนสวนหนงใน Domain กเปนไปได แตในอนาคตตองรวมเอางบการเงนนเปนสวนหนงของ Problem Domain กได เปนตน
http://www.siam2dev.com [ dr. nattapong songneam]
ถาจะพฒนาระบบลงทะเบยน
• สงทส าคญ หรอ object ทส าคญ ของระบบลงทะเบยน มอะไรบาง– นกศกษา ...รหส ชอ รน สาขา เพศ ..
– รายวชา ...ชอวชา รหส ค าอธบาย หนวยกต ...
– อาจารย
– หอง
– ....คาลงทะเบยน / ช าระคาลงทะเบยน
http://www.siam2dev.com [ dr. nattapong songneam]
http://www.siam2dev.com [ dr. nattapong songneam]
•
•
•
•
•
•
•
•
ภาษหก ณ ทจาย
HRM : Human Resource Managementระบบบรหาร ทรพยากรบคคล
พนกงานเสยภาษเอง
**** ไมเกยวของ
**** เกยวของ
ในกรณระบบจายเงนเดอน
1. การรบสมคร
2. การท างาน ขาด ลา มาสาย ลาออก
3. การเลอนขน
4. การจายเงนเดอน
1. คดเงนเดอน
2. OT
3. การคดรายได
4. การหกคาใชจาย
5. การรายงาน
6. การอบรมพฒนาบคลากรhttp://www.siam2dev.com [ dr.
nattapong songneam]
สอบวดความรสอบ Certสงไปอบรม
Problem Domain of Payroll System
http://www.siam2dev.com [ dr. nattapong songneam]
Module/sub system
1
Module/sub system
2
Module/sub system
3
Module/sub system
…
Module/sub system
5
Module/sub system
4
Problem Domain of Payroll System
http://www.siam2dev.com [ dr. nattapong songneam]
1. ระบบการสมคร
2. การบรรจ3. การจายเงนเดอนและ
โอท
More…
5. การเลอนขนเงนเดอ4. การลา
Classification Abstraction
• การคนหา Object ใน Problem Domain
– สงแรกทตองท าเมอเราม Problem Domain ในภาพรวมแลว คอ การพจารณาวา ม Object อะไรบางภายใน Domain นน ๆ บาง โดยยงไมตองค านงถงกจกรรมทเกดขนในระบบ (การหา Object ใน Problem Domain)
– หาค านามทงหมดทมใน Problem Domain แลวจงมาแยกแยะภายหลงวาสงใดคอ Object หรอสงใดคอ Attribute
– จากบทท 1 ถงแมวาเราจะทราบแลววา Object ในโลกนแบงออกเปน 2 ประเภทใหญคอ Tangible กบ Intangible แตเราสามารถแยกประเภท Object ไดอก
http://www.siam2dev.com [ dr. nattapong songneam]
http://www.siam2dev.com [ dr. nattapong songneam]
Problem Domain
Problem Domain
http://www.siam2dev.com [ dr. nattapong songneam]
http://www.siam2dev.com [ dr. nattapong songneam]
• →
• →
http://www.siam2dev.com [ dr. nattapong songneam]
http://www.siam2dev.com [ dr. nattapong songneam]
หนงสอ
หนงสอวเคราะหและออกแบบ
ระบบเชงวตถ
หนงสอการเขยนโปรแกรมภาษา
จาวา
การออกแบบและพฒนาเวบไซตดวย Adobe
Dreamweaver
หนงสอระบบปฏบตการ
เปนสมาชกของเปนสมาชกของ
เปนสมาชกของเปนสมาชกของ
แมว
Problem Domain of Payroll System
http://www.siam2dev.com [ dr. nattapong songneam]
Module/sub system
1
Module/sub system
2
Module/sub system
3
Module/sub system
…
Module/sub system
5
Module/sub system
4
ประเภทของ Object
• สงทมตวตนสามารถจบตองได
(Tangible Objects)
– คน สนข รถยนต
• สงทไมมตวตนและไมสามารถจบตองได
(Intangible Objects)
– บทบาท เหตการณ ปฏสมพนธ
http://www.siam2dev.com [ dr. nattapong songneam]
http://www.siam2dev.com [ dr. nattapong songneam]
ต.ย. 3.1.1 จงพจารณา Object จากขอความตอไปน
• ขอความท 1 “หนงสอ เลมหนง ปกสเหลอง ภายในประกอบดวยเนอหาเกยวกบ Object Orientation หนงสอเลมนมจ านวน 250 หนา”
ค านาม ประเภท
หนงสอ Object
ปกสเหลอง หนงใน Attribute ของ Object หนงสอ
เนอหาเกยวกบ Object Orientation หนงใน Attribute ของ Object หนงสอ
หนา เปนลกษณะนามทบอกถงจ านวนหนาของหนงสอ ถอ เปน หนงใน Attribute ของ Object หนงสอ
http://www.siam2dev.com [ dr. nattapong songneam]
•
•
http://www.siam2dev.com [ dr. nattapong songneam]
http://www.siam2dev.com [ dr. nattapong songneam]
Attributes
• PDT : Primitive Data Type
– Int , float ,string datetime, char ,boolean
– ไมมฟงกชน เกบขอมลไดอยางเดยว
• ADT : Abstract Data Type/ References Type / Class / Object
http://www.siam2dev.com [ dr. nattapong songneam]
IPHONE ...ชลภช
• PDT …………..
• ADT ……………………
http://www.siam2dev.com [ dr. nattapong songneam]
Attributes PDT ราคา ส น าหนก รน ยหอADT ปม เคส แบต ...
Dim x as แมวDim k as ไกDim y as string
Dim j as int16Dim x as boolean
double
String
button battery
http://www.siam2dev.com [ dr. nattapong songneam]
class computer{
private string hdd;
}COMPUTER
- HDD : floating-point
- RAM : int
class computer{
private HDD hdd;hdd = new HDD();
}
class HDD {
private String name;
private Model model;
private double Price;
}
public void setPrice(double price) {
Price = price;
}
Class computer{
private string hdd;}
C
#include <stdio.h>
static void main() {
int x;
string color;
Colors Color;
}
http://www.siam2dev.com [ dr. nattapong songneam]
PDT
ADT
java
class testOO {
public static void main(string arsg[]) {
Color color;
color = new Color();
}
}
http://www.siam2dev.com [ dr. nattapong songneam]
ประกาศตวแปร (Variables Declaration)
สรางอนสแตนซ (Create Object/Instantiate)
จงให concept กบหนงสอ
• ใหความคดรวบยอด ? อะไรทเรยกวาหนงสอ
• Attribute– ชอหนงสอ
– ผเขยน
– ราคา
– วนทพมพ
– ส านกพมพ
– จ านวนหนา
– จ านวนกเลม
– ประเภท
• Function
http://www.siam2dev.com [ dr. nattapong songneam]
http://www.siam2dev.com [ dr. nattapong songneam]
ชอปกหนาเนอหาอานไดเปดได
หนงสอ
หนงสอ VB
หนงสอ JAVA
จงให ความคดรวบยอด
• ผลไม– ส
– ชอ
– ขนาด
– รปทรง
– กนได
http://www.siam2dev.com [ dr. nattapong songneam]
• คน– ชอ
– นามสกล
– อาย
– เพศ
– กนได
Eatable → polymorphism
Eatable()
Eatable()Eatable()
Fruit Human
ผลไม
http://www.siam2dev.com [ dr. nattapong songneam]
แมว
แอปเปล
ซมซง S7
http://www.siam2dev.com [ dr. nattapong songneam]
ส
ผลไมสแดง
ผลไมสเขยว
แอปเปล
สรปทรงกลมรสชาตขนาดไดจากตนไมกนได()
องน
•
•
•
http://www.siam2dev.com [ dr. nattapong songneam]
•
• ขอความท 2 “การประมวลผลขอมลดานการเงนของธนาคารแหงหนงดวยเครองคอมพวเตอร มดวยกน 2 ประเภทไดแก การประมวลผลแบบ Batch (การสะสมขอมลไวชวงระยะเวลาหนงกอนแลวคอยน ามาประมวลในเวลาเดยว) และ การประมวลผลแบบRealTime (คอการประมวลผลทนททไดรบขอมล) และในการประมวลผลแตละครงจะมเวลาในการประมวลผล Elapse Time ทไมแนนอนขนอยกบปรมาณของขอมล”
ค านาม ประเภท
การประมวลผล Object
ประเภทของการประมวลผล หนงใน Attribute ของ Object การประมวลผล
ขอมล Object
ขนาดของขอมล หนงใน Attribute ของ Object ขอมล
เวลาทใชในการประมวลผล Elapse Time หนงใน Attribute ของ Object การประมวลผลขอมล
http://www.siam2dev.com [ dr. nattapong songneam]
ต.ย. 3.1.2 จงพจารณา Object จากขอความตอไปน
นามธรรม
Intangible object
ประเภทของการประมวลผล
• Batch :: ในธนาคาร รายงานยอดรายได ประจ าเดอน / ประจ าป
• RealTime :: ในธนาคาร การฝาก การถอน การอพเดต ท าทนท
– Internet :: เปน Real Time แตม Delay
http://www.siam2dev.com [ dr. nattapong songneam]
ATM System
• Real Time Processing
http://www.siam2dev.com [ dr. nattapong songneam]
Batch Processing)
การประมวลผลแบบกลม (Batch Processing)ขอมล ของการประมวลผลแบบนจะถกเกบไวในชวงเวลาทก าหนด เชน 7 วน หรอ 1 เดอน แลวจงน าขอมลทสะสมไวมาประมวลผลรวมกนครงเดยว เชน การค านวณคาบรการน าประปา โดยขอมลปรมาณน าทใชทงหมดจะถกเกบบนทกไวในรอบ 1 เดอน แลวน ามาประมวลผลเปนคาน าประปาในครงเดยวการประมวลผลแบบนมกมความผด พลาดสง เนองจากขอมลอาจเกดความคลาดเคลอนกอนการประมวลผล แตเสยคาใชจายในการประมวลผลนอย
http://www.siam2dev.com [ dr. nattapong songneam]
Real-Time Processing
การประมวลผลแบบทนท (Real-Time Processing)เปน การประมวลผลทเกดขนพรอมกบการรบขอมลหรอหลงจากไดรบขอมลทนท เชน การฝากและถอนเงนกบธนาคาร เมอลกคาฝากเงน ขอมลนนจะถกประมวลผลทนท ท าใหยอดเงนฝากในบญชนนมการเปลยนแปลงการประมวลผลแบบนจะมความผด พลาดนอย แตเสยคาใชจายในการประมวลผลมาก
http://www.siam2dev.com [ dr. nattapong songneam]
การคนหา Object ใน Problem Domain
• ค านาม ถอวาเปนตวบงช (indicator) ทดในการหา Object
• Object ม 2 ประเภท
– Touchable or Tangible Object
– Intangible Object
• บทบาท (Roles) เชน คร ต ารวจ
• เหตการณ ( Incidents , Event )
• ปฏสมพนธ (Interactions) เชน ทางแยก สญญาเงนก
http://www.siam2dev.com [ dr. nattapong songneam]
การคนหา Object ใน Problem Domain
• ในการพจารณา Problem Domain เราอาจจะไดพบกบ Object หรอ Class หรอทงสองอยางกได สงทเราตองท ากคอ การระบวาสงใดคอ class สงใดคอ Object แตในบางครงค านามค าหนงอาจจะเปนไดทง สอง อยาง กลาวคอ ค านามนนอาจเปนไดทง class หรอ Object ดงนนเราจงอาจตองกลบไป พจารณา Problem Domain ใหรอบคอบอกครงหนง หากเกดกรณอยางน ดงตวอยางตอไปน
http://www.siam2dev.com [ dr. nattapong songneam]
ตวอยางท 3.3 จากขอความตอไปน เราสามารถจ าแนก class และ Object ไดดงน
• ขอความท 1 “พยาบาล ชอ ปราณ ฉดยาปองกนโรคบาดทะยกใหแกคนไขชอ สมชาย ”
• ค านาม– ปราณ ประเภท Object
หมายเหต ค าวา พยาบาล ถอเปนคลาส class สวนปราณถอเปน Object หนงใน Class พยาบาล
– ยาปองกนโรคบาดทะยก ประเภท Class หรอ Objectหมายเหต ถอเปน Class ไดเพราะการบอกเพยงกวาง ๆ วา เปนยาปองกนบาดทะยก ไมไดบอกยหอยา หรอ ระบวาเปนยาขวดใด แตในขณะเดยวกนกอาจถอไดวาเปน Object กไดหากจะให concept เพยงวายาปองกนบาดทะยก ซงเปน Object ของ Class ยา ทงนข นอยกบวา Problem Domain จะใหความละเอยดของการสรางคลาสมากเพยงใด
– คนไขชอ สมชาย ประเภท Objectหมายเหต ค าวา คนไข ถอเปน คลาส class และ สมชาย ถอเปน Object หนงของคลาสน http://www.siam2dev.com [ dr.
nattapong songneam]
ยากนยาฉด
ยาปองกนโรคบาดทะยก ยาฉดแก
อกเสบ
ยาปองกนโรคบาดทะยก ยหอ A
ยาปองกนโรคบาดทะยก ยหอ B
http://www.siam2dev.com [ dr. nattapong songneam]
การแบงประเภทยายา
Is Member Of Is Member Of
Classification Abstraction
กระบวนการในการหาวาม Objects ใดบางใน Problem Domain และ Object แตละตวอยใน class ใดนน คอ กระบวนการทเรยกวา Classification Abstraction จากทผานมาเราไดรวาสามารถสราง Class จาก Object ทมอยนโดยการให Concept กบสงนน ๆ หรอถาจะกลาวอกอยางหนงกคอเปนการตอบค าถามทวา ม Object ตวใดตวหนงเปนสมาชกของ (Is Member Of”) ของกลมของ (Class) Object ใด ในทาง Object Orientation นนการท า Classification Abstraction หรอการสราง Class จาก Object นนจะใช
สญลกษณ ลกศรประทลากจาก Object ไปยง Class ดงตวอยางตอไปน
http://www.siam2dev.com [ dr. nattapong songneam]
09/08/61 http://www.siam2dev.com [ dr. nattapong songneam]
91
Classification abs.
Class AClass BClass CClass E Class N
Class A Class A1Class A2Class A3
Aggregate
จะไดคลาสตางๆ
Classification Abstraction
คน
สมชาย นก สมจตร ลกเกด
Is member of
http://www.siam2dev.com [ dr. nattapong songneam]
Classification Abstraction
รถ
รถเกงของแดงรถมอเตอรไซต
ของด ารถสปอรตของสมศร
รถตของสมควร
Is member of
http://www.siam2dev.com [ dr. nattapong songneam]
เครองบน
Classification Abstraction
รถ
รถเกงของแดงรถมอเตอรไซต
ของด ารถสปอรตของสมศร
รถตของสมควร
Is member of
ถาเตมรถไฟ จะอยในกลมนหรอไม
http://www.siam2dev.com [ dr. nattapong songneam]
Classification Abstraction
รถ
รถเกงของแดงรถมอเตอรไซต
ของด ารถสปอรตของสมศร
รถตของสมควร
Is member of
จะนยาม รถวาอยางไร จงจะจดให รถไฟ เขากลมนได
http://www.siam2dev.com [ dr. nattapong songneam]
มลอมเครองยนตใชน ามนเคลอนทได
ตวอยาง Classification Abstraction
คอมพวเตอรNotebook
? ? ? ?
Is member of
http://www.siam2dev.com [ dr. nattapong songneam]
ตวอยาง Classification Abstraction
คอมพวเตอรNotebook
เมาส จอ HDD Keyboard
Is member of
http://www.siam2dev.com [ dr. nattapong songneam]
ตวอยาง Classification Abstraction
คอมพวเตอรNotebook
ACER HP ASUS …
Is member of
http://www.siam2dev.com [ dr. nattapong songneam]
คน
นฐพงศ กลวด สมชาย
สมศรเปนสมาชกของ
เปนสมาชกของ
เปนสมาชกของเปนสมาชกของ
ตวอยาง Classification Abstraction
ธนาคาร
กรงไทย กรงเทพ ทหารไทย
กสกรเปนสมาชกของ
เปนสมาชกของ
เปนสมาชกของเปนสมาชกของ
ตวอยาง Classification Abstraction
?
นกศกษา
สเนตร กมลวรรณ ดวงมณ
ประมาภรณเปนสมาชกของ
เปนสมาชกของ
เปนสมาชกของเปนสมาชกของ
ตวอยาง Classification Abstraction
อาจารย
นฐพงศ ภมใจ จดาภา
มณรตนเปนสมาชกของ
เปนสมาชกของ
เปนสมาชกของเปนสมาชกของ
ตวอยาง Classification Abstraction
ซไรดาเปนสมาชกของ
หนงสอ
หนงสอวเคราะหและออกแบบ
ระบบเชงวตถ
หนงสอการเขยนโปรแกรมภาษา
จาวา
การออกแบบและพฒนาเวบไซตดวย Adobe
Dreamweaver
หนงสอระบบปฏบตการ
เปนสมาชกของเปนสมาชกของ
เปนสมาชกของเปนสมาชกของ
ตวอยาง Classification Abstraction
แมว
Classification Abstraction
ในบางครง Object หนงสามารถ เปนสมาชกของ Class ไดมาก กวาหนง Class ไดเชนกนดงตวอยางตอไปน
แมว หมา สตวสขา สตวสด า
แมวสด า หมาสขาว ววสด าhttp://www.siam2dev.com [ dr.
nattapong songneam]
แมวสขาว
ถานกวเคราะหระบบไมด จะไดผลลพธ
ถา
• หนงสมาชก อยในหนงคลาส กมกจะไมมปญหา แตในความเปนจรง มกจะไมโชคดแบบน น
http://www.siam2dev.com [ dr. nattapong songneam]
Classification Abstraction
เราสามารถแกปญหาความก ากวม โดยการปรบปรง Classification ของหมาและแมว ใหมจะไดผลลพธ ดงตอไปน
แมว หมา สตวส ขามเขา
แมวสด า หมาสขาว ววสด า
สตวมเขา
http://www.siam2dev.com [ dr. nattapong songneam]
แมวสขาว
ระบบมความซบซอนมาก
ขนตอน การท า Classification Abs.ขนตอนท 1 : ก าหนด Problem Domain
ขนตอนท 2 : หาค านาม
ขนตอนท 3 : แยกแยะ ค านาม วา object หรอ attributes ของ objects
ขนตอนท 4 : ให concept การใหความคดรวบยอด เพอใหได คลาสพนฐานตางๆ- วาดเปนแผนภาพเพอแสดง concept
ขนตอนท 5 : จากนน ระบ วาวตถใด อยในคลาสใด
ขนตอนท 6 : จากใสรายละเอยดของคลาส attribute , function
ขนตอนท 7 : วาดแผนภาพ แสดง classification abstractions09/08/61 http://www.siam2dev.com [ dr. nattapong songneam]
107
คอหาคลาสๆ จากวตถตางๆ ทอยใน Problem domain
ตวอยางท 3.4
“หนงสอเลมหนง ปกสเหลอง ภายในประกอบดวยเนอหาเกยวกบ Object Orientation หนงสอเลมนมจ านวน 50 หนา”
http://www.siam2dev.com [ dr. nattapong songneam]
ขนตอนท 1 : หาค านาม
ค านาม
1. หนงสอ
2. ปก
3. เนอหา
4. หนา
http://www.siam2dev.com [ dr. nattapong songneam]
“หนงสอเลมหนง ปกสเหลอง ภายในประกอบดวยเนอหาเกยวกบ Object
Orientation หนงสอเลมนมจ านวน 50หนา”
ขนตอนท 2 : แยกประเภทของค านาม
แยกประเภทของค านาม
• หนงสอเลมหนง : Object
• ปกสเหลอง : Attribute
• เนอหาเกยวกบ Object Orientation : Attribute
• หนา : Attribute
http://www.siam2dev.com [ dr. nattapong songneam]
ค านาม Object attributes
หนงสอเลมหนง Object
ปกสเหลอง เปนattributes
ขนตอนท 4. ให concept การใหความคดรวบยอด เพอใหได คลาสพนฐานตางๆ
http://www.siam2dev.com [ dr. nattapong songneam]
หนงสอ VB มชอมราคามผแตงมปก
มเนอหาอานได()ปดได()เปดได()
หนงสอ java
หนงสอ
หนงสอ OOAD
ขนตอนท 5
http://www.siam2dev.com [ dr. nattapong songneam]
หนงสอ
หนงสอ Visual Basic หนงสอ javaหนงสอ OS
เปนสมาชกของ
Is member of
ขนตอนท 6
http://www.siam2dev.com [ dr. nattapong songneam]
หนงสอ Visual Basic หนงสอ javaหนงสอ OS
เปนสมาชกของ
Is member of
หนงสอ-ปก-เนอหา-ผแตง-ราคา
+ อานได()
การระบ Class และ Object
• ในบาง Problem Domain อาจจะไดทง Class และ Object ในเวลาเดยวกน ดงนน จ าเปนตองระบใหแนชดวาสงใดคอ Class และสงใดคอ Object
http://www.siam2dev.com [ dr. nattapong songneam]
ตวอยางท 3.5
“พยาบาลชอ ปราณ ฉดยาปองกนโรคบาดทะยกใหแกคนไขชอ กตต”
ขนตอนท 1 : แยกค านาม
• พยาบาลชอ ปราณ
• ยาปองกนโรคบาดทะยก
• คนไขชอกตต
http://www.siam2dev.com [ dr. nattapong songneam]
ตวอยางท 5
ขนตอนท 2 : แยกประเภทของค านาม
• พยาบาล : Class
• ปราณ : Object หนงใน Class พยาบาล
• คนไข : Class
• กตต : Object หนงใน Class คนไข
• ยาปองกนโรคบาดทะยก : Class / Object
http://www.siam2dev.com [ dr. nattapong songneam]
*** ดงนน จะม 3 คลำส 3 ออบเจกต
ตวอยางท 5
• ยาปองกนโรคบาดทะยก : Class
– เพราะเปนการบอกอยางกวาง ๆ วาเปนยาปองกนบาดทะยก แตไมไดระบยหอยา
• ยาปองกนโรคบาดทะยก : Object
– ถอเปน Object หนงใน Class ยา
http://www.siam2dev.com [ dr. nattapong songneam]
http://www.siam2dev.com [ dr. nattapong songneam]
พยาบาล- ชอ- ดแลคนไขได()
ปราณ
http://www.siam2dev.com [ dr. nattapong songneam]
พยาบาล
ปราณ
เปนสมาชกของ
http://www.siam2dev.com [ dr. nattapong songneam]
คนไข
กตต
เปนสมาชกของ
สมชาย
http://www.siam2dev.com [ dr. nattapong songneam]
คนไข- ชอ- ปวย()
กตต
ใหความคดรวบยอดเกยวกบคนไข
http://www.siam2dev.com [ dr. nattapong songneam]
พยาบาล
ปราณ
เปนสมาชกของ
- ชอ
+ ดแลคนไข()
Classification Abstraction
• กระบวนการในการหาวาม Object ใดบางในProblem Domain และ Object แตละตวอยใน Class ใด
• การท า Classification Abstraction แสดงดวยสญลกษณ ลกศรประทลากจาก Objects ไปยง Class
http://www.siam2dev.com [ dr. nattapong songneam]
Classification ของ Class คน
คน
สมศร สมควร สมจตร สมศกด
http://www.siam2dev.com [ dr. nattapong songneam]
Classification ของ หมา แมว สตวสขาวและสตวสด า
แมวสด า หมาสด า แมวสขาว หมาสขาว
หมา แมว สตวสขาว สตวสด า
http://www.siam2dev.com [ dr. nattapong songneam]
การปรบปรงการท า Classification Abs. ของหมาและแมว
หมาสด า หมาสขาว แมวสด า แมวสขาว
หมา แมว
http://www.siam2dev.com [ dr. nattapong songneam]
Classificationของ Class คนทมการใสรายละเอยดแลว
สมศร สมควร สมจตร สมศกด
คนชอนามสกลเพศอาย
บอกชอและนามสกลบอกเพศบอกอาย
http://www.siam2dev.com [ dr. nattapong songneam]
Class name
attributes
function
HDD
http://www.siam2dev.com [ dr. nattapong songneam]
Private HDD hdd;
hdd = new HDD();
hdd = new HDD();
hdd = new HDD();
hdd = new HDD();
hdd1 = new HDD();
Encapsulation
• Encapsulation เปรยบเสมอนกบการน าเปลอกมาครอบ Attributes และ Function ของ Class เอาไว
• ลกษณะของเปลอก
– เปลอกใส จะสามารถมองไดจากภายนอก
– เปลอกทบ จะไมสามารถเหนไดจากภายนอก
• ภาพของ Class ทมองเหนไดจากภายนอกนนเรยกวา Outside View
http://www.siam2dev.com [ dr. nattapong songneam]
Outside View ของ Class คน
คน
อาย
บอกอาย ( )
Class คน
คน
บอกอาย ( )
Outside Viewของ Class คน
http://www.siam2dev.com [ dr. nattapong songneam]
การท เรามอง จากภายคลาส เขาไปยงขางใน จะเหน/เขาถงอะไรไดบาง
การเขาถงไดหรอไมได เรยกวา การท า Information Hidding
http://www.siam2dev.com [ dr. nattapong songneam]
ทเรยน
+ หนาม - เนอ ทเรยน
Outside View
+ eatable()
Inside View
# เมลด
Visibility / Accessibility
http://www.siam2dev.com [ dr. nattapong songneam]
- Private
# Protected+ Public
attributes
functions
*** ซงขนอยกบควำมสำมำรถในกำรเขำ จะม 3 แบบ
Outside View ของ Class คน
คน
อาย
บอกอาย ( )
Class คน
คน
บอกอาย ( )
Outside Viewของ Class คน
http://www.siam2dev.com [ dr. nattapong songneam]
+ สผว
- อาย- ล าไส
Encapsulation / Information Hiding / Outside View
X
Y
Z
http://www.siam2dev.com [ dr. nattapong songneam]
เปลอกใสเปลอกทบ
การเรยกด Attribute โดยการใช Function
สมศกด : คน
อาย
บอกอาย ( )
สมศร : คน
- อาย
+ บอกอาย ( )
โปรดบอกอาย
http://www.siam2dev.com [ dr. nattapong songneam]
การเขยนเมอ Function ถกเรยกใชงาน
สมศกด : คน
อาย
บอกอาย ( )
สมศร : คน
- อาย
+บอกอาย ( )
สวนของ Function จะถกเขยนดวยตวเอยง
http://www.siam2dev.com [ dr. nattapong songneam]
Information Hiding
• คอ คณสมบตของ Object ทเมอตองการเขาถง Attribute บางตวของ Object นน จะตองอาศยการท าผาน Function ทสามารถมองเหนและเรยกใชได เทานน
– เพราะ Attribute ถกหมดวยเปลอกทบ
– เพราะ Function ถกหมดวยเปลอกใส
http://www.siam2dev.com [ dr. nattapong songneam]
ประเภทของ Attribute และ Function
• จ าแนกตามความสามารถในการเหนและเขาถง Attribute และ Function เหลานนได 3 ประเภทคอ
– Private Attributes and Functions
– Protected Attributes and Functions
– Public Attributes and Functions
http://www.siam2dev.com [ dr. nattapong songneam]
VB
Java
http://www.siam2dev.com [ dr. nattapong songneam]
Public class Person
Private age as Int16
Public sub EAT()
Msgbox “Eating”
End subEnd class
public class Person {
private int age;
public void EAT() {
Sysyem.out.println( “Eating”)
}}
Private Attributes and Functions
• คอ Attributes และ Functions ทไมสามารถเหนไดเลยจากภายนอก
• การเขาถง Attribute เหลานไดตองผานทาง Function ทมไวเทานน
• จะใชเครองหมาย (-) ก ากบไวหนา PrivateAttribute และ Private Function
• เชน อายของคน
http://www.siam2dev.com [ dr. nattapong songneam]
Protected Attributes and Functions
• คอ Attributes และ Functions ทไมสามารถเหนไดจากภายนอกแตเปนสวนทสามารถสงตอให Inherited Class ไดเทานน
• จะใชเครองหมาย (#) ก ากบไวหนา Protected Attribute และ Protected Function
• เชน ลกษณะทางกรรมพนธทลกสบทอดมาจากพอแม
http://www.siam2dev.com [ dr. nattapong songneam]
Public Attributes and Functions
• คอ Attributes และ Functions ทสามารถมองเหนไดและสามารถเรยกใชไดโดยตรงจากภายนอก
• จะใชเครองหมาย (+) ก ากบไวหนา Public Attribute และ Public Function
• เชน สผม สผว
http://www.siam2dev.com [ dr. nattapong songneam]
Classification ของ Class คน
สมศร สมควร สมจตร สมศกด
คน- ชอ# นามสกล- เพศ- อาย+ บอกชอและนามสกล ()+ บอกเพศ ()+ บอกอาย ()
http://www.siam2dev.com [ dr. nattapong songneam]
Classification ของ Class คน
สมศร สมควร สมจตร สมศกด
คน
- ชอ# นามสกล- เพศ- อาย
+ บอกชอและนามสกล+ บอกเพศ+ บอกอาย
สมศร
http://www.siam2dev.com [ dr. nattapong songneam]อาย = 35 อาย = 78 อาย = 78
Inside view
http://www.siam2dev.com [ dr. nattapong songneam]
สมศร : คน- สมศร : ชอ# ไทยงาม : นามสกล- 25 : อาย+บอกอายได+บอกชอนามสกลได+บอกเพศได
Function
• ทผานมาเราพดถงเฉพาะ Attribute ของ class เทานนแต class ก ยงมอกสงหนงทตองพจารณาดวยนนก คอ Function ซงถอวาเปนตวกระตนใหด าเนนกจกรรมตางๆ ซงหมายความวา class จะมความสามารถในการท ากจกรรมตางๆ บรรจอยภายใน class ซงถอวา Function นเองเปนตวทท าให class แตกตางจากขอมลทวไปนนเอง
http://www.siam2dev.com [ dr. nattapong songneam]
Class Diagramคน
ชอนามสกลอายเพศ
บอกชอและนามสกลบอกอายบอกเพศเปลยนชอ และนามสกล
Function
Attribute
http://www.siam2dev.com [ dr. nattapong songneam]
สมจตร นก สมศร สมปอง
Is member of
Class Diagramรถ
ยหอรนส
ราคา
บอกยหอบอกรนบอกส
ราคา
http://www.siam2dev.com [ dr. nattapong songneam]
Is member of
รถเกงของดร.นฐ
รถมอเตอรไซตของนายมก
รถสปอรตของสมหญง
รถตของสมชาย
Function
Attribute
Encapsulation & Information Hiding
• Encapsulation คอ ความสามารถในการรวมเอา Attribute และ Function เกบไวภายใน Class เดยวกน
• Information Hiding คอ ความสามารถในการซอนรายละเอยด ของขอมลของ Class โดยไมใหผใชทไมมสทธเขาใชงานสามารถเขาถงขอมลเหลานนไดโดยตรง (หากตองอาจท าไดโดยผานทาง Function แทน )
http://www.siam2dev.com [ dr. nattapong songneam]
ตวอยางท 3.6
• เมอสมศรตองการทราบอายของ สมชาย ซงอายกถอเปน Attribute หนงของสมชาย สงทสมศรจะท าไดคอตองถามจากตวสมชายเอง นนคอ การกระตนใหสมชายบอกอายของตนออกมา ซงหมายความวาหากสมชายมความสามารถในการบอกอายหรอ พอใจทจะบอก (สมชายตองม Function ในการบอกอายทเปน Public Function) สมศรกสามารถทราบอายของสมชายได
สมศร : คน
อาย
บอกอาย()
สมชาย : คน
อาย
บอกอาย()
โปรดบอกอาย
http://www.siam2dev.com [ dr. nattapong songneam]
ประเภทของ Attribute และ Function
• Private (-) , Private Attribute & Function– คอ Attribute & Function จะไมสามารถมองเหนไดเลยจากภายนอก ม
วธเดยวทจะเขาถง Attribute เหลาน คอ ผานทาง Function ทเปน Public
• Protected (#)– คอ Attribute & Function จะสามารถมองเหนไดเฉพาะคลาสทสบทอด
คณสมบต ( Inherit )จากคลาสแม (Parent Class) เลยจากภายนอก
• Public (+)– คอ Attribute & Function จะสามารถมองเหนไดจากภายนอก
http://www.siam2dev.com [ dr. nattapong songneam]
Class Diagram
สมปอง สมศร นก สมปอง
Is member of
คน
- ชอ# นามสกล- อาย- เพศ
+ บอกชอและนามสกล+ บอกอาย+ บอกเพศ+ เปลยนชอ และนามสกล
http://www.siam2dev.com [ dr. nattapong songneam]
Class Diagram
รถเกงสด าของนายแดง
รถตสขาวของสมศร
รถกระบะสแดงของนก
รถสปอรตสด าของนายด า
รถ
- ประเภทรถ- สของรถ- รน- แรงมา
+ สตารทเครอง+ วง+ เลยว+ จอด
http://www.siam2dev.com [ dr. nattapong songneam]
Is member of
ความคดรวบยอด (concept)
http://www.siam2dev.com [ dr. nattapong songneam]
มรปทรงใสน าไดปรมาตร
ขวดน าตราสงห
ขวดตรา 7 select
ขวดน า
..
ความคดรวบยอด (concept)
http://www.siam2dev.com [ dr. nattapong songneam]
เคลอนทไดโดยสารได
รถ BMX
Altisยานพาหนะ
Boing 747
เรอโดยสาร
ความคดรวบยอด (concept)
http://www.siam2dev.com [ dr. nattapong songneam]
http://www.siam2dev.com [ dr. nattapong songneam]
ยานพาหนะทว
คน
แมว สตวปก
สนคา
พนกงาน
หองพก
บทเรยน
ปลา
ตนไม
พนกงาน
http://www.siam2dev.com [ dr. nattapong songneam]
เกาอ โตะ
อาจารยเมาส
คอม
สายไฟ
แอร
โปรเจกตเตอร
F1 f2 f3 f4 f5 f6 f7 f8
หลอดไฟ
Exercise I
1. สมชาย สมควร และสมศกด เปนนกเรยนในขณะทสมหญงและสมศรเปนนกกฬาทมชาต
2. สมศกด สมหญง และสมศร เปนคนผวด า ในขณะทสมชาย และสมควร เปนคนผวขาว
3. สมชาย สมควร และสมศกด เปนผชาย ในขณะท สมหญง และสมศร เปนผหญง
http://www.siam2dev.com [ dr. nattapong songneam]
จากขอความตอไปน จงเขยนแยกวาอะไรคอออบเจกต อะไรคอคลาส โดยวาดมาเปน แผนภาพ Classification Abstraction
จงวาดเปนแผนภาพแสดงClassification Abstraction
เฉลย ขอ 1
1. ก าหนดค านาม
2. ให Concept
3. วาดแผนภาพ
http://www.siam2dev.com [ dr. nattapong songneam]
1. สมชาย สมควร และสมศกด เปนนกเรยนในขณะท สมหญงและสมศรเปนนกกฬาทมชาต
มชอเพศ
เกรดเฉลยเรยนได()
นกเรยนสมชาย
สมควร
สมศกดมชอเพศอาย
เลนกฬาได()
นกกฬาสมหญง
สมศร
http://www.siam2dev.com [ dr. nattapong songneam]
นกเรยน นกกฬา
สมชาย สมควรสมศกด สมหญง สมศร
เปนสมาชกของ เปนสมาชกของ
Exercise II
1. คอมพวเตอรยหอ Dell ตอเชอมกบ Printer และ Scanner ยหอ Hewlett Packard ซงถกใชงานโดยนาย ก ซงเปน Programmer
2. นาย ข เปน programmer เชนเดยวกน แตเครองคอมพวเตอรทใชเปนยหอ IBM ซงเชอมกบพรนเตอร
3. นาย ค เปนนกวเคราะหระบบ รบผดชอบการวเคราะหระบบใหกบฝายการบญช และฝายสงซอของบรษทน าเขาและสงออกแหงหนง
http://www.siam2dev.com [ dr. nattapong songneam]
จงเขยน Outside view ของแตละ class ทมอยใน problem domain ตอไปน