2.1.4. Relațiile dintre clase (obiecte)
Fiecare obiect are asociat câmpuri structură de date care sunt atribute ale pointerii obiect și funcția (fragmente de cod), care pun în aplicare operațiunile obiectului (rețineți că indicatoarele în codul de optimizare rezultat de obicei înlocuite prin abordarea acestor funcții). Astfel, obiectul - este o structură de date, al căror tip corespunde clasei acestui obiect.
Între obiecte pot fi setate în funcție de datele. Aceste dependențe sunt exprimate conexiune sau relație între clasele acestor obiecte. Exemple de astfel de dependențe sunt prezentate în Figura 2.6 (în funcție de primele două - binar, iar a treia dependență - trenarnaya). Dependența reprezentată de o linie care unește cursurile pe care se înscriu numele acestei relații, sau sunt date rolul obiectelor (clase) în această dependență (pentru a specifica roluri - cel mai convenabil mod de a identifica dependențele).
Fig. 2.6. Dependențe între clase
Dependențele între clase sunt două fețe: toate clasele în funcție de drepturi egale. Acest lucru este atât, chiar și în cazurile în care numele dependenței deoarece face direcția acestei relații. Deci, în primul exemplu în figura 2.6, în funcție de numele imeet_stolitsu sugerează că relația merge de la clasa la oraș țară de clasă (cu două sensuri relație pare a fi plecat); dar trebuie să se țină seama de faptul că această dependență are două fețe, în sensul că, deși există o relație inversă yavlyaetsya_stolitsey. În același mod, în al doilea exemplu, în figura 2.6 se poate vedea un cuplu de dependențe reținerile deținute. Aceste neînțelegeri pot fi evitate dacă este identificat pe baza nu pe nume, și numele claselor de roluri care alcătuiesc dependenta.
În limbaje de programare, dependențe între clase (obiecte) sunt puse în aplicare în mod obișnuit, folosind referiri (indicatori) dintr-o clasă (un obiect) la altul. Reprezentarea dependențelor cu referințe relevă faptul că relația este o proprietate a unei perechi de clase, și nu oricare dintre ele, și anume, dependență - acest raport. Trebuie remarcat faptul că, deși relațiile dintre obiecte sunt bidirecționale, acestea nu sunt obligate să pună în aplicare programe ca două sensuri, lăsând doar link-uri în acele clase în cazul în care este necesar pentru program.
Alte exemple de relații între clase prezentate în figura 2.7. Primul exemplu arată relația dintre o bancă și conturile sale client. Banca de client poate avea mai multe conturi în bancă, sau nu au un cont (atunci când acesta devine mai întâi un client al băncii). Astfel, este necesar să se reprezinte relația dintre client și conturile multiple, care se face în figura 2.7. Al doilea exemplu arată relația dintre curbele care se intersectează (în special drepte) linii. Se poate lua în considerare 2, 3, sau mai multe astfel de linii, iar acestea pot avea mai multe puncte de intersecție. În fine, al treilea exemplu arată o grupare (opțional) dependența opțională: un calculator poate sau nu poate avea un șoarece.
Dependențe între clase corespund dependențele între obiecte ale acestor clase. Figura 2.8 prezintă dependența dintre obiecte pentru un prim exemplu din figura 2.6; în Figura 2.9 prezintă relația dintre obiectele pentru exemplele prezentate în figura 2.7.
Fig. 2.7. Alte exemple de dependențe. denumiri
Fig. 2.8. Relațiile dintre obiecte
Trebuie remarcat faptul că reprezentarea relațiilor dintre obiecte, avem tendința de a cunoaște numărul de obiecte și nu au nevoie de denumiri, cum ar fi „unele“, „două sau mai multe“, „nu neapărat.“
La proiectarea sistemului de mai convenabil să funcționeze decât obiecte și clase.
Fig. 2.9. Mai multe relații complexe între obiecte
Conceptul conform transferat la bazele de date în care în funcție folosite pentru o lungă perioadă de timp orientat pe obiect sisteme software de proiectare tehnologie de tehnologie de proiectare (și simulează). limbaje de programare, de obicei, nu acceptă o descriere explicită a dependențelor. Cu toate acestea, descrierea dependențelor este foarte utilă în dezvoltarea sistemelor software. Tehnologia OMT utilizează în funcție de interpretarea diagramelor ce descriu sistemul.