Ang diagram ng klase ay pangunahing binubuo ng mga klase, interface, at iba't ibang mga relasyon, kabilang ang mga relasyon sa pagbuo, pag-asa, asosasyon, at pagpapatupad.
Ang class diagram ay isang uri ng static na view sa UML modeling na ginagamit upang ilarawan ang mga klase, interface, kolaborasyon, at ang kanilang mga relasyon. Ginagamit ito upang ipakita ang static na istruktura ng mga konsepto sa loob ng sistema, at malawakang ginagamit sa yugto ng pagsusuri at disenyo ng sistema sa software engineering.
Ang class diagram ay pangunahing bahagi ng object-oriented modeling at ito rin ang batayan ng ibang mga diagram ng UML. Sa batayan ng class diagram, maaaring iguhit ang state diagram, collaboration diagram, component diagram, at deployment diagram, at iba pa.
Ang class diagram ay pangunahing ginagamit upang ipakita ang static na modelo ng mga klase, interface, at ang kanilang mga static na istruktura at relasyon sa loob ng sistema. Kapag idinisenyo ng software designer ang class diagram, maaaring isakatuparan ng mga programmer ang mga nilalaman ng class diagram sa pamamagitan ng code.
Real-time na pakikipagtulungan ng maraming user na may shareable links para sa instant na paglipat ng impormasyon
Awtomatikong bumuo ng graphics mula sa text na may pagpapaganda ng estilo
Prebuilt na tema na may buong pagpasadya
Sinusuportahan ang mga icon, larawan, label, LaTeX formula, code block, link, attachment
I-export: PNG, VISIO, PDF, SVG | I-import: VISIO, Mermaid
Real-time cloud storage, multi-device sync, version history, at data security
Ang diagram ng klase ay pangunahing binubuo ng mga klase, interface, at iba't ibang mga relasyon, kabilang ang mga relasyon sa pagbuo, pag-asa, asosasyon, at pagpapatupad.
Ang klase ay karaniwang binubuo ng pangalan, mga katangian, at mga operasyon. Bukod dito, ang komposisyon ng klase ay naglalaman din ng mga responsibilidad ng klase, mga limitasyon, at mga tala.
Sa diagram ng klase, ang klase ay kinakatawan ng parihabang kahon, na nahahati sa tatlong layer: ang unang layer ay ang pangalan ng klase, ang ikalawang layer ay ang mga katangian ng klase, at ang ikatlong layer ay ang mga operasyon ng klase.
Ang pangalan ng klase ay dapat na isang pangngalan, at ang pangalan ng klase ay dapat na malinaw na sumasalamin sa konsepto sa domain ng problema. Ayon sa kumbensyon ng UML, ang unang letra ng bawat salita sa pangalan ng klase ay dapat na malaki, at ang mga konkretong klase ay kinakatawan ng regular na font, habang ang mga abstract na klase ay kinakatawan ng italic font.
Ang interface sa diagram ng klase ay kinakatawan din ng parihabang kahon, ngunit naiiba sa representasyon ng klase. Sa unang layer ng diagram ng klase, ang interface ay kinakatawan ng stereotype <
Mayroong tiyak na relasyon sa pagitan ng mga klase at klase, klase at interface, at interface at interface. Sa UML class diagram, karaniwan ay may mga linya na nag-uugnay upang ipakita ang kanilang mga relasyon. Mayroong anim na uri ng relasyon: pagpapatupad ng relasyon, pagbuo ng relasyon, asosasyon ng relasyon, pag-asa ng relasyon, pagsasama ng relasyon, at komposisyon ng relasyon.
1, Ang modelo na itinatag ng class diagram ay naglalarawan ng pangkalahatang sitwasyon, habang ang modelo na itinatag ng object diagram ay naglalarawan ng isang tiyak na sitwasyon.
2, Ang class diagram ay maaaring ganap na ilarawan ang istruktura ng mga bagay ng sistema, habang ang object diagram ay hindi.
3, Ang isang klase sa class diagram ay maaaring tumutugma sa maraming mga bagay sa object diagram.
Karaniwan, ang klase ay binubuo ng pangalan, katangian, at operasyon, na kinakatawan ng isang parihabang kahon na nahahati sa tatlong layer: ang unang layer ay ang pangalan ng klase, ang pangalawang layer ay ang mga katangian ng klase, at ang pangatlong layer ay ang mga operasyon ng klase.
Ngunit sa aktwal na paggamit, may tatlong anyo ng representasyon: “pangalan ng klase”, “pangalan ng klase” + “mga katangian ng klase”, at “pangalan ng klase” + “mga operasyon ng klase”.
Ang pangalan ng klase ay dapat na isang pangngalan, at ang unang titik ng bawat salita ay dapat na malaki, at ang mga instantiable na klase ay dapat na naka-roman font, habang ang mga abstract na klase ay dapat na naka-italic na font.
Syntax para sa pagde-define ng mga katangian ng klase: [visibility] pangalan ng katangian [:uri ng data] [=paunang halaga] [{string ng katangian}]
Kung saan, ang nilalaman sa loob ng [] ay opsyonal.
Ang mga constraint ng klase ay nagtatakda ng isa o higit pang mga patakaran na dapat sundin ng klase, at sa UML, ang mga constraint ay kinakatawan ng tekstong impormasyon na nakapaloob sa mga kulot na bracket.
Relasyon ng implementasyon: Kinakatawan ng guwang na tatsulok + dotted line, mula sa implementing class patungo sa interface class.
Relasyon ng generalisasyon: Kinakatawan ng guwang na tatsulok + solid line, mula sa subclass patungo sa superclass.
Relasyon ng asosasyon: Kinakatawan ng solid line na may arrow, mula sa referencing class patungo sa referenced class.
Relasyon ng pagsasama-sama: Kinakatawan ng guwang na rombo + solid line, mula sa bahagi ng klase patungo sa kabuuang klase.
Relasyon ng komposisyon: Kinakatawan ng solidong rombo + solid line, mula sa bahagi ng klase patungo sa kabuuang klase.
Relasyon ng pag-asa: Kinakatawan ng dotted line na may arrow, mula sa referencing class patungo sa dependent class.
Ang class diagram ay hindi ganap na independyente; dapat itong magmula sa use case diagram upang mag-abstrakto ng mga entity, control, at boundary class, at panatilihin ang semantic coordination sa use case diagram, activity diagram, sequence diagram, at iba pa.
Dapat panatilihin ng klase ang solong responsibilidad, maaaring hatiin ang malaking klase, at ang mga responsibilidad ay dapat na maayos na ipamahagi sa maraming klase upang maiwasan ang mataas na coupling, malinaw na mga hangganan, at sumunod sa mga prinsipyo ng object-oriented na disenyo.