{"id":10883,"date":"2026-03-06T01:16:56","date_gmt":"2026-03-05T17:16:56","guid":{"rendered":"https:\/\/www.archimetric.com\/pl\/what-is-class-diagram\/"},"modified":"2026-03-06T01:16:56","modified_gmt":"2026-03-05T17:16:56","slug":"what-is-class-diagram","status":"publish","type":"post","link":"https:\/\/www.archimetric.com\/pl\/what-is-class-diagram\/","title":{"rendered":"Co to jest diagram klas?"},"content":{"rendered":"<p><span style=\"font-size: 1.125rem;\">W in\u017cynierii oprogramowania, <\/span><a href=\"https:\/\/en.wikipedia.org\/wiki\/Unified_Modeling_Language\" rel=\"noopener\" style=\"font-size: 1.125rem;\" target=\"_blank\">J\u0119zyk modelowania zintegrowanego (UML)<\/a><span style=\"font-size: 1.125rem;\"> diagram klas to <\/span><strong style=\"font-size: 1.125rem;\">statyczny diagram strukturalny<\/strong><span style=\"font-size: 1.125rem;\"> kt\u00f3ry opisuje struktur\u0119 systemu poprzez pokazanie jego klas, ich atrybut\u00f3w, operacji (lub metod) oraz relacji mi\u0119dzy obiektami.<\/span><\/p>\n<p><!-- more --><\/p>\n<div class=\"content-container-alt\">\n<div class=\"row small-12 medium-12 large-12 columns\">\n<div class=\"medium-12 large-9 columns float-right\">\n<section data-magellan-target=\"what-is-class-diagram\" id=\"what-is-class-diagram\">\n<div class=\"space-gap-small\"><\/div>\n<p><img alt=\"Class diagram in UML diagram hierarchy\" decoding=\"async\" src=\"https:\/\/www.archimetric.com\/wp-content\/uploads\/2022\/02\/01-class-diagram-in-uml-diagram-hierarchy.png\"\/><\/p>\n<\/section>\n<div class=\"bs-calltoaction bs-calltoaction-default\">\n<div class=\"row\">\n<div class=\"medium-10 columns cta-contents\">\n<div class=\"cta-desc\"><\/div>\n<\/div>\n<\/div>\n<\/div>\n<section data-magellan-target=\"purposes-of-class-diagram\" id=\"purposes-of-class-diagram\">\n<h2>Zastosowania diagram\u00f3w klas<\/h2>\n<div class=\"space-gap\"><\/div>\n<ol class=\"purpose-list\">\n<li>Wy\u015bwietlanie struktury statycznej klasifikator\u00f3w w systemie<\/li>\n<li>Stanowi podstawow\u0105 notacj\u0119 dla innych diagram\u00f3w strukturalnych UML<\/li>\n<li>Wysoko przydatne dla programist\u00f3w i innych cz\u0142onk\u00f3w zespo\u0142u<\/li>\n<li>Analitycy biznesowi mog\u0105 u\u017cywa\u0107 diagram\u00f3w klas do modelowania system\u00f3w z perspektywy biznesowej<\/li>\n<\/ol>\n<p>Diagramy klas UML sk\u0142adaj\u0105 si\u0119 z:<\/p>\n<ul>\n<li>Zbi\u00f3r klas<\/li>\n<li>Zbi\u00f3r relacji mi\u0119dzy klasami<\/li>\n<\/ul>\n<\/section>\n<section data-magellan-target=\"what-is-a-class\" id=\"what-is-a-class\">\n<h2>Co to jest klasa?<\/h2>\n<p>Opis grupy obiekt\u00f3w o podobnych rolach, w tym:<\/p>\n<ul>\n<li><strong>Cechy strukturalne<\/strong> (atrybuty): definiuj\u0105, co obiekty klasy \u201ewiedz\u0105\u201d\n<ul>\n<li>Reprezentuje stan obiektu<\/li>\n<li>Opisuje struktur\u0119 lub cechy statyczne klasy<\/li>\n<\/ul>\n<\/li>\n<li><strong>Cechy behawioralne<\/strong> (operacje): definiuj\u0105, co obiekty klasy \u201emog\u0105 robi\u0107\u201d\n<ul>\n<li>Okre\u015blaj\u0105, jak obiekty si\u0119 oddzia\u0142uj\u0105<\/li>\n<li>Opisuj\u0105 zachowanie lub cechy dynamiczne klasy<\/li>\n<\/ul>\n<\/li>\n<\/ul>\n<\/section>\n<section data-magellan-target=\"class-notation\" id=\"class-notation\">\n<h2>Notacja klasy<\/h2>\n<p>Notacja klasy sk\u0142ada si\u0119 z trzech cz\u0119\u015bci:<\/p>\n<ol class=\"purpose-list\">\n<li><strong>Nazwa klasy<\/strong>\n<ul>\n<li>Nazwa klasy pojawia si\u0119 w pierwszym kompartymencie.<\/li>\n<\/ul>\n<\/li>\n<li><strong>Atrybuty klasy<\/strong>\n<ul>\n<li>Atrybuty s\u0105 wy\u015bwietlane w drugim kompartymencie.<\/li>\n<li>Typ jest wy\u015bwietlany po dwukropku.<\/li>\n<li>Atrybuty odpowiadaj\u0105 zmiennym cz\u0142onkowskim (zmiennym danych) w kodzie.<\/li>\n<\/ul>\n<\/li>\n<li><strong>Operacje klasy<\/strong> (metody)\n<ul>\n<li>Operacje s\u0105 wy\u015bwietlane w trzeciej kom\u00f3rce. Odpowiadaj\u0105 us\u0142ugom oferowanym przez klas\u0119.<\/li>\n<li>Typ zwracany pojawia si\u0119 po dwukropku na ko\u0144cu sygnatury metody.<\/li>\n<li>Typy parametr\u00f3w pojawiaj\u0105 si\u0119 po dwukropku po nazwie parametru.<\/li>\n<li>Operacje odpowiadaj\u0105 metodom klasy w kodzie.<\/li>\n<\/ul>\n<\/li>\n<\/ol>\n<p><img alt=\"Simple class\" decoding=\"async\" src=\"https:\/\/www.archimetric.com\/wp-content\/uploads\/2022\/02\/02-simple-class.png\"\/><\/p>\n<div class=\"space-gap-small\"><\/div>\n<p>Wy\u015bwietlenie graficzne klasy<strong>MojaKlasa<\/strong> jak pokazano powy\u017cej:<\/p>\n<ul>\n<li>MojaKlasa ma 3 atrybuty i 3 operacje<\/li>\n<li>Parametr p3 metody op2 ma typ int<\/li>\n<li>metoda op2 zwraca warto\u015b\u0107 typu float<\/li>\n<li>metoda op3 zwraca wska\u017anik (oznaczony przez *) do klasy6<\/li>\n<\/ul>\n<\/section>\n<section data-magellan-target=\"class-relationships\" id=\"class-relationships\">\n<h2>Relacje klas<\/h2>\n<p>Klasa mo\u017ce by\u0107 zaanga\u017cowana w jedn\u0105 lub wi\u0119cej relacji z innymi klasami. Relacje mog\u0105 mie\u0107 nast\u0119puj\u0105ce typy: (Zobacz obrazek po prawej stronie dla przedstawie\u0144 graficznych).<\/p>\n<div class=\"editions\">\n<table class=\"stack\">\n<tbody>\n<tr>\n<th>Typ relacji<\/th>\n<th width=\"250\">Diagram<\/th>\n<\/tr>\n<tr>\n<td><strong>Dziedziczenie<\/strong> (lub uog\u00f3lnienie):<\/p>\n<ul>\n<li>Reprezentuje relacj\u0119 \u201ejest rodzajem\u201d.<\/li>\n<li>Nazwy klas abstrakcyjnych s\u0105 wy\u015bwietlane kursyw\u0105.<\/li>\n<li>KlasaPod1 i KlasaPod2 s\u0105 specjalizacjami KlasyNadrz\u0119dnej.<\/li>\n<li>Pe\u0142na linia z otwartym zako\u0144czeniem strza\u0142ki wskazuj\u0105c\u0105 od klasy pochodnej do klasy nadrz\u0119dnej.<\/li>\n<\/ul>\n<\/td>\n<td><img alt=\"Inheritance\" decoding=\"async\" src=\"https:\/\/www.archimetric.com\/wp-content\/uploads\/2022\/02\/03-inheritance.png\"\/><\/td>\n<\/tr>\n<tr>\n<td><strong>Prosta asocjacja<\/strong>:<\/p>\n<ul>\n<li>Po\u0142\u0105czenie strukturalne mi\u0119dzy dwiema r\u00f3wnowa\u017cnymi klasami.<\/li>\n<li>Istnieje asocjacja mi\u0119dzy Klasa1 i Klasa2.<\/li>\n<li>Pe\u0142na linia \u0142\u0105cz\u0105ca obie klasy.<\/li>\n<\/ul>\n<\/td>\n<td><img alt=\"Simple association\" decoding=\"async\" src=\"https:\/\/www.archimetric.com\/wp-content\/uploads\/2022\/02\/04-simple-association.png\"\/><\/td>\n<\/tr>\n<tr>\n<td><strong>Agregacja<\/strong>:<\/p>\n<ul>\n<li>Specjalny rodzaj zwi\u0105zku reprezentuj\u0105cy relacj\u0119 \u201ecz\u0119\u015b\u0107-ca\u0142o\u015b\u0107\u201d.<\/li>\n<li>Klasa2 jest cz\u0119\u015bci\u0105 Klasy1.<\/li>\n<li>Wiele instancji Klasy2 (oznaczonych gwiazdk\u0105 *) mo\u017ce by\u0107 powi\u0105zanych z Klas\u01051.<\/li>\n<li>Obiekty Klasy1 i Klasy2 maj\u0105 niezale\u017cne cykle \u017cycia.<\/li>\n<li>Pusta diament w ko\u0144cu klasy z\u0142o\u017conej.<\/li>\n<\/ul>\n<\/td>\n<td><img alt=\"Aggregation\" decoding=\"async\" src=\"https:\/\/www.archimetric.com\/wp-content\/uploads\/2022\/02\/05-aggregation.png\"\/><\/td>\n<\/tr>\n<tr>\n<td><strong>Kompozycja<\/strong>:<\/p>\n<ul>\n<li>Specjalny rodzaj agregacji, w kt\u00f3rej cz\u0119\u015bci s\u0105 niszczone wraz z ca\u0142o\u015bci\u0105.<\/li>\n<li>Obiekty Klasy2 \u017cyj\u0105 i gin\u0105 razem z Klas\u01051.<\/li>\n<li>Klasa2 nie mo\u017ce istnie\u0107 niezale\u017cnie.<\/li>\n<li>Pe\u0142ny diament w ko\u0144cu klasy z\u0142o\u017conej.<\/li>\n<\/ul>\n<\/td>\n<td><img alt=\"Composition\" decoding=\"async\" src=\"https:\/\/www.archimetric.com\/wp-content\/uploads\/2022\/02\/06-composition.png\"\/><\/td>\n<\/tr>\n<tr>\n<td><strong>Zale\u017cno\u015b\u0107<\/strong>:<\/p>\n<ul>\n<li>Istnieje mi\u0119dzy dwiema klasami, je\u015bli zmiana definicji jednej klasy mo\u017ce spowodowa\u0107 zmian\u0119 drugiej (ale nie odwrotnie).<\/li>\n<li>Klasa1 zale\u017cy od Klasy2.<\/li>\n<li>Linia kreskowa z otwartym zako\u0144czeniem strza\u0142ki.<\/li>\n<\/ul>\n<\/td>\n<td><img alt=\"Dependency\" decoding=\"async\" src=\"https:\/\/www.archimetric.com\/wp-content\/uploads\/2022\/02\/07-dependency.png\"\/><\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<\/div>\n<\/section>\n<section data-magellan-target=\"relationship-names\" id=\"relationship-names\">\n<h3>Nazwy relacji<\/h3>\n<div class=\"space-gap-small\"><\/div>\n<ul>\n<li>Nazwy relacji s\u0105 pisane w \u015brodku linii zwi\u0105zku.<\/li>\n<li>Dobre nazwy relacji maj\u0105 sens, gdy s\u0105 czytane na g\u0142os:\n<ul>\n<li style=\"list-style-type: none;\">\n<ul>\n<li>\u201eKa\u017cdy arkusz <strong>zawiera<\/strong> pewne kom\u00f3rki\u201d<\/li>\n<\/ul>\n<\/li>\n<\/ul>\n<p>&lt;li&gt;Wyra\u017cenie <strong>daje warto\u015b\u0107<\/strong> warto\u015b\u0107\u201d<\/p>\n<\/li>\n<li>Cz\u0119sto maj\u0105 <strong>ma\u0142\u0105 strza\u0142k\u0119 wskazuj\u0105c\u0105 kierunek<\/strong>czytania, np. wyra\u017cenie daje warto\u015b\u0107, ale warto\u015b\u0107 nie daje wyra\u017cenia.<\/li>\n<\/ul>\n<div class=\"space-gap-small\"><\/div>\n<p><img alt=\"Relationship name\" decoding=\"async\" src=\"https:\/\/www.archimetric.com\/wp-content\/uploads\/2022\/02\/08-relationship-name.png\"\/><\/p>\n<\/section>\n<section data-magellan-target=\"relationship-roles\" id=\"relationship-roles\">\n<h3>Relacja \u2013 Role<\/h3>\n<div class=\"space-gap-small\"><\/div>\n<ul>\n<li>Rola okre\u015bla cel kierunku w zwi\u0105zku.<\/li>\n<li>Rola jest zapisywana na ko\u0144cu linii zwi\u0105zku i opisuje rol\u0119, jak\u0105 klasa pe\u0142ni w tym zwi\u0105zku.\n<ul>\n<li>Na przyk\u0142ad, Cell jest zwi\u0105zany z Expression. Natur\u0105 zwi\u0105zku jest to, \u017ce Expression jest <strong>formu\u0142\u0105<\/strong>kom\u00f3rki.<\/li>\n<\/ul>\n<\/li>\n<\/ul>\n<\/section>\n<section data-magellan-target=\"navigability\" id=\"navigability\">\n<h3>Kierowalno\u015b\u0107<\/h3>\n<p>Strza\u0142ka wskazuje, czy maj\u0105c instancj\u0119 zwi\u0105zku, mo\u017cemy okre\u015bli\u0107 powi\u0105zan\u0105 instancj\u0119 drugiej klasy.<\/p>\n<p>Jak pokazano na rysunku:<\/p>\n<ul>\n<li>Maj\u0105c arkusz kalkulacyjny, mo\u017cemy znale\u017a\u0107 wszystkie kom\u00f3rki, kt\u00f3re zawiera, ale\n<ul>\n<li>Nie mo\u017cemy okre\u015bli\u0107, do kt\u00f3rego arkusza kalkulacyjnego nale\u017cy kom\u00f3rka, na podstawie samej kom\u00f3rki.<\/li>\n<\/ul>\n<\/li>\n<li>Maj\u0105c kom\u00f3rk\u0119, mo\u017cemy uzyska\u0107 jej powi\u0105zan\u0105 formu\u0142\u0119 i warto\u015b\u0107, ale\n<ul>\n<li>Maj\u0105c warto\u015b\u0107 (lub formu\u0142\u0119), nie mo\u017cemy znale\u017a\u0107 kom\u00f3rek, kt\u00f3re maj\u0105 te atrybuty.<\/li>\n<\/ul>\n<\/li>\n<\/ul>\n<\/section>\n<section data-magellan-target=\"class-member-visibility\" id=\"class-member-visibility\">\n<h2>Widoczno\u015b\u0107 cz\u0142onk\u00f3w klasy<\/h2>\n<p>W projektowaniu obiektowym widoczno\u015b\u0107 atrybut\u00f3w i operacji jest reprezentowana. UML definiuje cztery typy widoczno\u015bci: <strong>publiczna<\/strong>, <strong>chroniona<\/strong>, <strong>prywatna<\/strong>, oraz <strong>pakietu<\/strong>.<\/p>\n<p>Symbole +, -, # i ~ przed nazwami atrybut\u00f3w i operacji wskazuj\u0105 widoczno\u015b\u0107:<\/p>\n<ul>\n<li>+ wskazuje atrybut lub operacj\u0119 publiczn\u0105<\/li>\n<li>\u2013 wskazuje atrybut lub operacj\u0119 prywatn\u0105<\/li>\n<li># wskazuje atrybut lub operacj\u0119 chronion\u0105<\/li>\n<li>~ wskazuje atrybut lub operacj\u0119 pakietu<\/li>\n<\/ul>\n<\/section>\n<section data-magellan-target=\"class-visibility-example\" id=\"class-visibility-example\">\n<h3>Przyk\u0142ad widoczno\u015bci klasy<\/h3>\n<div class=\"space-gap-small\"><\/div>\n<p><img alt=\"Simple class\" decoding=\"async\" src=\"https:\/\/www.archimetric.com\/wp-content\/uploads\/2022\/02\/02-simple-class.png\"\/><\/p>\n<div class=\"space-gap-small\"><\/div>\n<p>W powy\u017cszym przyk\u0142adzie:<\/p>\n<ul>\n<li>attribute1 i op1 klasy MyClassName s\u0105 publiczne<\/li>\n<li>attribute3 i op3 s\u0105 chronione<\/li>\n<li>attribute2 i op2 s\u0105 prywatne<\/li>\n<\/ul>\n<p>Uprawnienia dost\u0119pu dla r\u00f3\u017cnych cz\u0142onk\u00f3w klasy s\u0105 pokazane poni\u017cej:<\/p>\n<table>\n<tbody>\n<tr>\n<th>Poziom dost\u0119pu<\/th>\n<th>Publiczny (+)<\/th>\n<th>Prywatny (-)<\/th>\n<th>Chroniony (#)<\/th>\n<th>Pakiet (~)<\/th>\n<\/tr>\n<tr>\n<td>Cz\u0142onkowie tej samej klasy<\/td>\n<td>Tak<\/td>\n<td>Tak<\/td>\n<td>Tak<\/td>\n<td>Tak<\/td>\n<\/tr>\n<tr>\n<td>Cz\u0142onkowie klas pochodnych<\/td>\n<td>Tak<\/td>\n<td>Nie<\/td>\n<td>Tak<\/td>\n<td>Tak<\/td>\n<\/tr>\n<tr>\n<td>Cz\u0142onkowie dowolnej innej klasy<\/td>\n<td>Tak<\/td>\n<td>Nie<\/td>\n<td>Nie<\/td>\n<td>Tylko ten sam pakiet<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<\/section>\n<section data-magellan-target=\"multiplicity\" id=\"multiplicity\">\n<h2>Wielokrotno\u015b\u0107<\/h2>\n<p>Wielokrotno\u015b\u0107 wskazuje, ile obiekt\u00f3w klasy uczestniczy w relacji. Mo\u017ce by\u0107 wyra\u017cona jako:<\/p>\n<ul>\n<li>Dok\u0142adnie 1 \u2013 1<\/li>\n<li>Zero lub jeden \u2013 0..1<\/li>\n<li>Wiele \u2013 0..* lub *<\/li>\n<li>Jeden lub wi\u0119cej \u2013 1..*<\/li>\n<li>Dok\u0142adna liczba \u2013 np. 3..4 lub 6<\/li>\n<li>Z\u0142o\u017cona relacja \u2013 np. 0..1, 3..4, 6* oznacza dowoln\u0105 liczb\u0119 z wyj\u0105tkiem 2 lub 5<\/li>\n<\/ul>\n<\/section>\n<section data-magellan-target=\"multiplicity-example\" id=\"multiplicity-example\">\n<h3>Przyk\u0142ad wielokrotno\u015bci<\/h3>\n<div class=\"space-gap-small\"><\/div>\n<ul>\n<li>Wym\u00f3g: Student mo\u017ce zapisywa\u0107 si\u0119 na wiele kurs\u00f3w, a wiele student\u00f3w mo\u017ce zapisywa\u0107 si\u0119 na jeden kurs.<\/li>\n<li>W poni\u017cszym przyk\u0142adzie <strong>diagram klas<\/strong> (po lewej) opisuje model statyczny powy\u017cszego wymogu, podczas gdy diagram obiekt\u00f3w (po prawej) przedstawia zrzut stanu rejestracji kurs\u00f3w (instancj\u0119 diagramu klas) dla kurs\u00f3w in\u017cynierii oprogramowania i zarz\u0105dzania bazami danych.<\/li>\n<\/ul>\n<p><img alt=\"Object diagram\" decoding=\"async\" src=\"https:\/\/www.archimetric.com\/wp-content\/uploads\/2022\/02\/09-class-diagram-to-object-diagram.png\"\/><\/p>\n<\/section>\n<section data-magellan-target=\"aggregation-example\" id=\"aggregation-example\">\n<h2>Przyk\u0142ad agregacji \u2013 Komputer i elementy<\/h2>\n<div class=\"space-gap-small\"><\/div>\n<ul>\n<li>Agregacja to szczeg\u00f3lny przypadek zwi\u0105zku reprezentuj\u0105cy hierarchi\u0119 \u201ezawiera\u201d.<\/li>\n<li>Agregacja jest klas\u0105 nadrz\u0119dn\u0105, a component jest klas\u0105 potomn\u0105.<\/li>\n<\/ul>\n<div class=\"space-gap-small\"><\/div>\n<p><img alt=\"Aggregation example\" decoding=\"async\" src=\"https:\/\/www.archimetric.com\/wp-content\/uploads\/2022\/02\/10-aggregation-example.png\"\/><\/p>\n<\/section>\n<section data-magellan-target=\"inheritance-example\" id=\"inheritance-example\">\n<h2>Przyk\u0142ad dziedziczenia \u2013 Klasyfikacja kom\u00f3rek<\/h2>\n<div class=\"space-gap-small\"><\/div>\n<ul>\n<li>Dziedziczenie to inny szczeg\u00f3lny przypadek zwi\u0105zku reprezentuj\u0105cy hierarchi\u0119 \u201erodzaj\u201d.<\/li>\n<li>Dziedziczenie upraszcza model analizy poprzez wprowadzenie taksonomii.<\/li>\n<li>Klasy potomne dziedzicz\u0105 atrybuty i operacje od klasy nadrz\u0119dnej.<\/li>\n<\/ul>\n<div class=\"space-gap-small\"><\/div>\n<p><img alt=\"Inheritance example\" decoding=\"async\" src=\"https:\/\/www.archimetric.com\/wp-content\/uploads\/2022\/02\/11-inheritance-example.png\"\/><\/p>\n<\/section>\n<section data-magellan-target=\"class-diagram-diagram-tool-example\" id=\"class-diagram-diagram-tool-example\">\n<h2>Diagram klas \u2013 Przyk\u0142ad narz\u0119dzia do rysowania diagram\u00f3w<\/h2>\n<p>Diagramy klas mog\u0105 zawiera\u0107 notatki przypisane do klas lub relacji. Notatki s\u0105 wy\u015bwietlane w odcieniach szaro\u015bci.<\/p>\n<div class=\"space-gap-small\"><\/div>\n<p><img alt=\"Class diagram example\" decoding=\"async\" src=\"https:\/\/www.archimetric.com\/wp-content\/uploads\/2022\/02\/12-uml-class-diagram-example.png\"\/><\/p>\n<div class=\"space-gap-small\"><\/div>\n<p>Na podstawie powy\u017cszego przyk\u0142adu mo\u017cemy zinterpretowa\u0107 diagram nast\u0119puj\u0105co:<\/p>\n<ol>\n<li>Shape jest klas\u0105 abstrakcyjn\u0105. Jest wy\u015bwietlana kursyw\u0105.<\/li>\n<li>Shape jest klas\u0105 nadrz\u0119dn\u0105. Circle, Rectangle i Polygon dziedzicz\u0105 po Shape. Innymi s\u0142owy, Circle jest Shape. Jest to relacja uog\u00f3lnienia\/dziedziczenia.<\/li>\n<li>Istnieje relacja mi\u0119dzy DialogBox i DataController.<\/li>\n<li>Shape jest cz\u0119\u015bci\u0105 Window. Jest to relacja agregacji. Shape mo\u017ce istnie\u0107 bez Window.<\/li>\n<li>Point jest cz\u0119\u015bci\u0105 Circle. Jest to relacja kompozycji. Point nie mo\u017ce istnie\u0107 bez Circle.<\/li>\n<li>Window zale\u017cy od Event. Ale Event nie zale\u017cy od Window.<\/li>\n<li>Atrybuty Circle to radius i center. Jest to klasa konkretnej.<\/li>\n<li>Metody Circle to area(), circum(), setCenter() i setRadius().<\/li>\n<li>Parametr radius w Circle jest typu float.<\/li>\n<li>Metoda area() w Circle zwraca warto\u015b\u0107 typu double.<\/li>\n<li>Atrybuty i metody Rectangle s\u0105 ukryte. Niekt\u00f3re inne klasy na diagramie r\u00f3wnie\u017c ukrywaj\u0105 swoje atrybuty i metody.<\/li>\n<\/ol>\n<\/section>\n<section data-magellan-target=\"multi-or-single-class-diagram\" id=\"multi-or-single-class-diagram\">\n<h2>Obs\u0142uga system\u00f3w z\u0142o\u017conych \u2013 wiele czy jedna diagram klas?<\/h2>\n<p>Podczas modelowania du\u017cych system\u00f3w lub du\u017cych dziedzin biznesowych nale\u017cy uwzgl\u0119dni\u0107 wiele encji. Czy powinni\u015bmy u\u017cywa\u0107 wielu czy jednej diagramu klas? Odpowied\u017a brzmi:<\/p>\n<ul>\n<li>Lepszym rozwi\u0105zaniem jest u\u017cycie wielu diagram\u00f3w klas zamiast modelowania ka\u017cdej jednostki i jej relacji na jednym diagramie.<\/li>\n<li>Podzia\u0142 systemu na wiele diagram\u00f3w klas u\u0142atwia jego zrozumienie, zw\u0142aszcza gdy ka\u017cdy diagram jest wizualnym przedstawieniem konkretnego elementu systemu.<\/li>\n<\/ul>\n<\/section>\n<section data-magellan-target=\"class-diagram-in-sdlc\" id=\"class-diagram-in-sdlc\">\n<h2>Perspektywa diagram\u00f3w klas w cyklu \u017cycia rozwoju oprogramowania<\/h2>\n<p>Diagramy klas mog\u0105 by\u0107 wykorzystywane w r\u00f3\u017cnych etapach <a href=\"https:\/\/en.wikipedia.org\/wiki\/Systems_development_life_cycle\" rel=\"noopener\" target=\"_blank\">Cyklu \u017cycia rozwoju oprogramowania (SDLC)<\/a>, a zazwyczaj modelowane s\u0105 trzy r\u00f3\u017cne poziomy szczeg\u00f3\u0142owo\u015bci (perspektywy), kt\u00f3re s\u0105 stopniowo rozwijane:<\/p>\n<p><strong>Perspektywa koncepcyjna<\/strong>: Diagram jest interpretowany jako opis rzeczywistych obiekt\u00f3w. Zatem, je\u015bli zaczynasz od perspektywy koncepcyjnej, rysujesz diagram przedstawiaj\u0105cy koncepcje w badanym dziedzinie. Te koncepcje naturalnie s\u0105 powi\u0105zane z klasami, kt\u00f3re je implementuj\u0105. Ta perspektywa jest <strong>uwa\u017cana za niezale\u017cn\u0105 od j\u0119zyka<\/strong>.<br \/>\n<strong>Perspektywa specyfikacji<\/strong>: Diagram jest interpretowany jako opis abstrakcji oprogramowania lub komponent\u00f3w z okre\u015blonymi specyfikacjami i interfejsami, bez zobowi\u0105zywania si\u0119 do konkretnego wykonania. Zatem, je\u015bli podejdziesz od perspektywy specyfikacji, jeste\u015b <strong>badaj\u0105c interfejsy oprogramowania zamiast jego implementacji<\/strong>.<br \/>\n<strong>Perspektywa implementacji<\/strong>: Diagram jest interpretowany jako opis konkretnej technologii i <a href=\"https:\/\/en.wikipedia.org\/wiki\/Programming_language\" rel=\"noopener\" target=\"_blank\">j\u0119zyka<\/a>implementacji oprogramowania. Zatem, je\u015bli podejdziesz od perspektywy implementacji, jeste\u015b <strong>badaj\u0105c implementacj\u0119 oprogramowania<\/strong>.<\/p>\n<\/section>\n<div class=\"bs-calltoaction bs-calltoaction-default1\">\n<div class=\"row\">\n<div class=\"medium-12 columns\">\n<div class=\"medium-3 small-3 columns\"><\/div>\n<div class=\"medium-9 small-9 columns cta-contents text-center\">\n<h1 class=\"cta-title1\">Spr\u00f3buj narysowa\u0107 diagram klas UML teraz<\/h1>\n<div class=\"cta-desc\">Nauczy\u0142e\u015b si\u0119, czym jest diagram klas i jak go rysowa\u0107. Przyszed\u0142 czas, by narysowa\u0107 sw\u00f3j w\u0142asny. Pobierz Visual Paradigm Community Edition, darmowy narz\u0119dzie UML, i stw\u00f3rz sw\u00f3j diagram klas za pomoc\u0105 darmowego narz\u0119dzia do rysowania diagram\u00f3w klas. Jest \u0142atwy w u\u017cyciu i intuicyjny.<br \/>\n<a class=\"drawnow-btn\" href=\"https:\/\/www.visual-paradigm.com\/download\/community.jsp\">Pobierz bezp\u0142atnie<\/a><\/div>\n<\/div>\n<\/div>\n<\/div>\n<\/div>\n<section data-magellan-target=\"related-links\" id=\"related-links\">\n<h2>Linki powi\u0105zane<\/h2>\n<ol>\n<li><strong>Poradnik diagram\u00f3w klas UML<\/strong>\n<ul>\n<li>Visual Paradigm. (2022, 2 wrze\u015bnia). <a href=\"https:\/\/www.visual-paradigm.com\/guide\/uml-unified-modeling-language\/uml-class-diagram-tutorial\/\">Poradnik diagram\u00f3w klas UML<\/a> <a class=\"mi-ref cursor-pointer align-super text-muted-foreground fade-in hover:underline\" data-state=\"closed\" href=\"https:\/\/www.visual-paradigm.com\/guide\/uml-unified-modeling-language\/uml-class-diagram-tutorial\/\" rel=\"noopener\" target=\"_blank\">52<\/a>.<\/li>\n<\/ul>\n<\/li>\n<li><strong>Eksperyment: Tworzenie diagramu klas w Visual Paradigm<\/strong>\n<ul>\n<li>Uniwersytet Jamesa Madisona. (bez daty). <a href=\"https:\/\/w3.cs.jmu.edu\/bernstdh\/web\/common\/labs\/skills_visualparadigm_class-diagrams\/index.php\">Eksperyment: Tworzenie diagramu klas w Visual Paradigm<\/a> <a class=\"mi-ref cursor-pointer align-super text-muted-foreground fade-in hover:underline\" data-state=\"closed\" href=\"https:\/\/w3.cs.jmu.edu\/bernstdh\/web\/common\/labs\/skills_visualparadigm_class-diagrams\/index.php\" rel=\"noopener\" target=\"_blank\">54<\/a>.<\/li>\n<\/ul>\n<\/li>\n<li><strong>Poradnik diagramu klas | Modelowanie UML za pomoc\u0105 Visual Paradigm<\/strong>\n<ul>\n<li>UML. (bez daty). <a href=\"https:\/\/uml.gitbook.io\/learning-uml-with-visual-paradigm\/class-diagram-tutorial\">Poradnik diagramu klas | Modelowanie UML za pomoc\u0105 Visual Paradigm<\/a> <a class=\"mi-ref cursor-pointer align-super text-muted-foreground fade-in hover:underline\" data-state=\"closed\" href=\"https:\/\/uml.gitbook.io\/learning-uml-with-visual-paradigm\/class-diagram-tutorial\" rel=\"noopener\" target=\"_blank\">55<\/a>.<\/li>\n<\/ul>\n<\/li>\n<li><strong>Oprogramowanie online do tworzenia diagram\u00f3w klas<\/strong>\n<ul>\n<li>Visual Paradigm Online. (bez daty). <a href=\"https:\/\/online.visual-paradigm.com\/diagrams\/features\/class-diagram-software\/\">Oprogramowanie online do tworzenia diagram\u00f3w klas<\/a> <a class=\"mi-ref cursor-pointer align-super text-muted-foreground fade-in hover:underline\" data-state=\"closed\" href=\"https:\/\/online.visual-paradigm.com\/diagrams\/features\/class-diagram-software\/\" rel=\"noopener\" target=\"_blank\">56<\/a>.<\/li>\n<\/ul>\n<\/li>\n<li><strong>Rysowanie diagramu klas w Visual Paradigm<\/strong>\n<ul>\n<li>Stack Overflow. (2013, 10 lutego). <a href=\"https:\/\/stackoverflow.com\/questions\/14796695\/visual-paradigm-class-diagram-drawing\">Rysowanie diagramu klas w Visual Paradigm<\/a> <a class=\"mi-ref cursor-pointer align-super text-muted-foreground fade-in hover:underline\" data-state=\"closed\" href=\"https:\/\/stackoverflow.com\/questions\/14796695\/visual-paradigm-class-diagram-drawing\" rel=\"noopener\" target=\"_blank\">57<\/a>.<\/li>\n<\/ul>\n<\/li>\n<li><strong>Szablony diagram\u00f3w klas<\/strong>\n<ul>\n<li>Visual Paradigm Online. (bez daty). <a href=\"https:\/\/online.visual-paradigm.com\/diagrams\/templates\/class-diagram\/\">Szablony diagram\u00f3w klas<\/a> <a class=\"mi-ref cursor-pointer align-super text-muted-foreground fade-in hover:underline\" data-state=\"closed\" href=\"https:\/\/online.visual-paradigm.com\/diagrams\/templates\/class-diagram\/\" rel=\"noopener\" target=\"_blank\">58<\/a>.<\/li>\n<\/ul>\n<\/li>\n<li><strong>Bezp\u0142atne narz\u0119dzia do tworzenia diagram\u00f3w klas<\/strong>\n<ul>\n<li>Visual Paradigm Online. (2019, 6 czerwca). <a href=\"https:\/\/online.visual-paradigm.com\/diagrams\/solutions\/free-class-diagram-tool\/\">Bezp\u0142atne narz\u0119dzie do tworzenia diagram\u00f3w klas<\/a> <a class=\"mi-ref cursor-pointer align-super text-muted-foreground fade-in hover:underline\" data-state=\"closed\" href=\"https:\/\/online.visual-paradigm.com\/diagrams\/solutions\/free-class-diagram-tool\/\" rel=\"noopener\" target=\"_blank\">59<\/a>.<\/li>\n<\/ul>\n<\/li>\n<li><strong>Poradnik diagramu klas<\/strong>\n<ul>\n<li>Visual Paradigm Online. (2010, 11 stycznia). <a href=\"https:\/\/online.visual-paradigm.com\/diagrams\/tutorials\/class-diagram-tutorial\/\">Poradnik diagramu klas<\/a> <a class=\"mi-ref cursor-pointer align-super text-muted-foreground fade-in hover:underline\" data-state=\"closed\" href=\"https:\/\/online.visual-paradigm.com\/diagrams\/tutorials\/class-diagram-tutorial\/\" rel=\"noopener\" target=\"_blank\">60<\/a>.<\/li>\n<\/ul>\n<\/li>\n<li><strong>Co to jest diagram klas?<\/strong>\n<ul>\n<li>Visual Paradigm. (2022, 9 lutego). <a href=\"https:\/\/www.visual-paradigm.com\/guide\/uml-unified-modeling-language\/what-is-class-diagram\/\">Co to jest diagram klas?<\/a> <a class=\"mi-ref cursor-pointer align-super text-muted-foreground fade-in hover:underline\" data-state=\"closed\" href=\"https:\/\/www.visual-paradigm.com\/guide\/uml-unified-modeling-language\/what-is-class-diagram\/\" rel=\"noopener\" target=\"_blank\">61<\/a>.<\/li>\n<\/ul>\n<\/li>\n<\/ol>\n<\/section>\n<\/div>\n<\/div>\n<\/div>\n<p>\u00a0<\/p>\n","protected":false},"excerpt":{"rendered":"<p>W in\u017cynierii oprogramowania, J\u0119zyk modelowania zintegrowanego (UML) diagram klas to statyczny diagram strukturalny kt\u00f3ry opisuje struktur\u0119 systemu poprzez pokazanie jego<\/p>\n","protected":false},"author":3479,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"_yoast_wpseo_title":"Co to jest diagram klas? (","_yoast_wpseo_metadesc":"dowiedz si\u0119 o diagramach klas UML: ich celu, strukturze, relacjach, widoczno\u015bci, wielokrotno\u015bci i zastosowaniu w cyklu \u017cycia rozwoju oprogramowania.","fifu_image_url":"","fifu_image_alt":"","footnotes":""},"categories":[127],"tags":[],"class_list":["post-10883","post","type-post","status-publish","format-standard","hentry","category-unified-modeling-language"],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v27.0 - https:\/\/yoast.com\/product\/yoast-seo-wordpress\/ -->\n<title>Co to jest diagram klas? (<\/title>\n<meta name=\"description\" content=\"dowiedz si\u0119 o diagramach klas UML: ich celu, strukturze, relacjach, widoczno\u015bci, wielokrotno\u015bci i zastosowaniu w cyklu \u017cycia rozwoju oprogramowania.\" \/>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/www.archimetric.com\/pl\/what-is-class-diagram\/\" \/>\n<meta property=\"og:locale\" content=\"pl_PL\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Co to jest diagram klas? (\" \/>\n<meta property=\"og:description\" content=\"dowiedz si\u0119 o diagramach klas UML: ich celu, strukturze, relacjach, widoczno\u015bci, wielokrotno\u015bci i zastosowaniu w cyklu \u017cycia rozwoju oprogramowania.\" \/>\n<meta property=\"og:url\" content=\"https:\/\/www.archimetric.com\/pl\/what-is-class-diagram\/\" \/>\n<meta property=\"og:site_name\" content=\"ArchiMetric Polish\" \/>\n<meta property=\"article:published_time\" content=\"2026-03-05T17:16:56+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/www.archimetric.com\/wp-content\/uploads\/2022\/02\/01-class-diagram-in-uml-diagram-hierarchy.png\" \/>\n<meta name=\"author\" content=\"archimetric@visual-paradigm.com\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:label1\" content=\"Napisane przez\" \/>\n\t<meta name=\"twitter:data1\" content=\"archimetric@visual-paradigm.com\" \/>\n\t<meta name=\"twitter:label2\" content=\"Szacowany czas czytania\" \/>\n\t<meta name=\"twitter:data2\" content=\"10 minut\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\/\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\/\/www.archimetric.com\/pl\/what-is-class-diagram\/#article\",\"isPartOf\":{\"@id\":\"https:\/\/www.archimetric.com\/pl\/what-is-class-diagram\/\"},\"author\":{\"name\":\"archimetric@visual-paradigm.com\",\"@id\":\"https:\/\/www.archimetric.com\/pl\/#\/schema\/person\/e4027c9f5b602fc705716009e5671d28\"},\"headline\":\"Co to jest diagram klas?\",\"datePublished\":\"2026-03-05T17:16:56+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\/\/www.archimetric.com\/pl\/what-is-class-diagram\/\"},\"wordCount\":1627,\"commentCount\":0,\"image\":{\"@id\":\"https:\/\/www.archimetric.com\/pl\/what-is-class-diagram\/#primaryimage\"},\"thumbnailUrl\":\"https:\/\/www.archimetric.com\/wp-content\/uploads\/2022\/02\/01-class-diagram-in-uml-diagram-hierarchy.png\",\"articleSection\":[\"Unified Modeling Language\"],\"inLanguage\":\"pl-PL\",\"potentialAction\":[{\"@type\":\"CommentAction\",\"name\":\"Comment\",\"target\":[\"https:\/\/www.archimetric.com\/pl\/what-is-class-diagram\/#respond\"]}]},{\"@type\":\"WebPage\",\"@id\":\"https:\/\/www.archimetric.com\/pl\/what-is-class-diagram\/\",\"url\":\"https:\/\/www.archimetric.com\/pl\/what-is-class-diagram\/\",\"name\":\"Co to jest diagram klas? (\",\"isPartOf\":{\"@id\":\"https:\/\/www.archimetric.com\/pl\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\/\/www.archimetric.com\/pl\/what-is-class-diagram\/#primaryimage\"},\"image\":{\"@id\":\"https:\/\/www.archimetric.com\/pl\/what-is-class-diagram\/#primaryimage\"},\"thumbnailUrl\":\"https:\/\/www.archimetric.com\/wp-content\/uploads\/2022\/02\/01-class-diagram-in-uml-diagram-hierarchy.png\",\"datePublished\":\"2026-03-05T17:16:56+00:00\",\"author\":{\"@id\":\"https:\/\/www.archimetric.com\/pl\/#\/schema\/person\/e4027c9f5b602fc705716009e5671d28\"},\"description\":\"dowiedz si\u0119 o diagramach klas UML: ich celu, strukturze, relacjach, widoczno\u015bci, wielokrotno\u015bci i zastosowaniu w cyklu \u017cycia rozwoju oprogramowania.\",\"breadcrumb\":{\"@id\":\"https:\/\/www.archimetric.com\/pl\/what-is-class-diagram\/#breadcrumb\"},\"inLanguage\":\"pl-PL\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/www.archimetric.com\/pl\/what-is-class-diagram\/\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"pl-PL\",\"@id\":\"https:\/\/www.archimetric.com\/pl\/what-is-class-diagram\/#primaryimage\",\"url\":\"https:\/\/www.archimetric.com\/wp-content\/uploads\/2022\/02\/01-class-diagram-in-uml-diagram-hierarchy.png\",\"contentUrl\":\"https:\/\/www.archimetric.com\/wp-content\/uploads\/2022\/02\/01-class-diagram-in-uml-diagram-hierarchy.png\"},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/www.archimetric.com\/pl\/what-is-class-diagram\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\/\/www.archimetric.com\/pl\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Co to jest diagram klas?\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\/\/www.archimetric.com\/pl\/#website\",\"url\":\"https:\/\/www.archimetric.com\/pl\/\",\"name\":\"ArchiMetric Polish\",\"description\":\"EA, Dev Ops, Scrum, Agile and More\",\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\/\/www.archimetric.com\/pl\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"pl-PL\"},{\"@type\":\"Person\",\"@id\":\"https:\/\/www.archimetric.com\/pl\/#\/schema\/person\/e4027c9f5b602fc705716009e5671d28\",\"name\":\"archimetric@visual-paradigm.com\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"pl-PL\",\"@id\":\"https:\/\/www.archimetric.com\/pl\/#\/schema\/person\/image\/\",\"url\":\"https:\/\/secure.gravatar.com\/avatar\/de58c1924d83d002dbce0b79f74ba4b70e2f85238332df6cabc0227effdf470d?s=96&d=mm&r=g\",\"contentUrl\":\"https:\/\/secure.gravatar.com\/avatar\/de58c1924d83d002dbce0b79f74ba4b70e2f85238332df6cabc0227effdf470d?s=96&d=mm&r=g\",\"caption\":\"archimetric@visual-paradigm.com\"},\"url\":\"https:\/\/www.archimetric.com\/pl\/author\/archimetricvisual-paradigm-com\/\"}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"Co to jest diagram klas? (","description":"dowiedz si\u0119 o diagramach klas UML: ich celu, strukturze, relacjach, widoczno\u015bci, wielokrotno\u015bci i zastosowaniu w cyklu \u017cycia rozwoju oprogramowania.","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/www.archimetric.com\/pl\/what-is-class-diagram\/","og_locale":"pl_PL","og_type":"article","og_title":"Co to jest diagram klas? (","og_description":"dowiedz si\u0119 o diagramach klas UML: ich celu, strukturze, relacjach, widoczno\u015bci, wielokrotno\u015bci i zastosowaniu w cyklu \u017cycia rozwoju oprogramowania.","og_url":"https:\/\/www.archimetric.com\/pl\/what-is-class-diagram\/","og_site_name":"ArchiMetric Polish","article_published_time":"2026-03-05T17:16:56+00:00","og_image":[{"url":"https:\/\/www.archimetric.com\/wp-content\/uploads\/2022\/02\/01-class-diagram-in-uml-diagram-hierarchy.png","type":"","width":"","height":""}],"author":"archimetric@visual-paradigm.com","twitter_card":"summary_large_image","twitter_misc":{"Napisane przez":"archimetric@visual-paradigm.com","Szacowany czas czytania":"10 minut"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/www.archimetric.com\/pl\/what-is-class-diagram\/#article","isPartOf":{"@id":"https:\/\/www.archimetric.com\/pl\/what-is-class-diagram\/"},"author":{"name":"archimetric@visual-paradigm.com","@id":"https:\/\/www.archimetric.com\/pl\/#\/schema\/person\/e4027c9f5b602fc705716009e5671d28"},"headline":"Co to jest diagram klas?","datePublished":"2026-03-05T17:16:56+00:00","mainEntityOfPage":{"@id":"https:\/\/www.archimetric.com\/pl\/what-is-class-diagram\/"},"wordCount":1627,"commentCount":0,"image":{"@id":"https:\/\/www.archimetric.com\/pl\/what-is-class-diagram\/#primaryimage"},"thumbnailUrl":"https:\/\/www.archimetric.com\/wp-content\/uploads\/2022\/02\/01-class-diagram-in-uml-diagram-hierarchy.png","articleSection":["Unified Modeling Language"],"inLanguage":"pl-PL","potentialAction":[{"@type":"CommentAction","name":"Comment","target":["https:\/\/www.archimetric.com\/pl\/what-is-class-diagram\/#respond"]}]},{"@type":"WebPage","@id":"https:\/\/www.archimetric.com\/pl\/what-is-class-diagram\/","url":"https:\/\/www.archimetric.com\/pl\/what-is-class-diagram\/","name":"Co to jest diagram klas? (","isPartOf":{"@id":"https:\/\/www.archimetric.com\/pl\/#website"},"primaryImageOfPage":{"@id":"https:\/\/www.archimetric.com\/pl\/what-is-class-diagram\/#primaryimage"},"image":{"@id":"https:\/\/www.archimetric.com\/pl\/what-is-class-diagram\/#primaryimage"},"thumbnailUrl":"https:\/\/www.archimetric.com\/wp-content\/uploads\/2022\/02\/01-class-diagram-in-uml-diagram-hierarchy.png","datePublished":"2026-03-05T17:16:56+00:00","author":{"@id":"https:\/\/www.archimetric.com\/pl\/#\/schema\/person\/e4027c9f5b602fc705716009e5671d28"},"description":"dowiedz si\u0119 o diagramach klas UML: ich celu, strukturze, relacjach, widoczno\u015bci, wielokrotno\u015bci i zastosowaniu w cyklu \u017cycia rozwoju oprogramowania.","breadcrumb":{"@id":"https:\/\/www.archimetric.com\/pl\/what-is-class-diagram\/#breadcrumb"},"inLanguage":"pl-PL","potentialAction":[{"@type":"ReadAction","target":["https:\/\/www.archimetric.com\/pl\/what-is-class-diagram\/"]}]},{"@type":"ImageObject","inLanguage":"pl-PL","@id":"https:\/\/www.archimetric.com\/pl\/what-is-class-diagram\/#primaryimage","url":"https:\/\/www.archimetric.com\/wp-content\/uploads\/2022\/02\/01-class-diagram-in-uml-diagram-hierarchy.png","contentUrl":"https:\/\/www.archimetric.com\/wp-content\/uploads\/2022\/02\/01-class-diagram-in-uml-diagram-hierarchy.png"},{"@type":"BreadcrumbList","@id":"https:\/\/www.archimetric.com\/pl\/what-is-class-diagram\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/www.archimetric.com\/pl\/"},{"@type":"ListItem","position":2,"name":"Co to jest diagram klas?"}]},{"@type":"WebSite","@id":"https:\/\/www.archimetric.com\/pl\/#website","url":"https:\/\/www.archimetric.com\/pl\/","name":"ArchiMetric Polish","description":"EA, Dev Ops, Scrum, Agile and More","potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/www.archimetric.com\/pl\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"pl-PL"},{"@type":"Person","@id":"https:\/\/www.archimetric.com\/pl\/#\/schema\/person\/e4027c9f5b602fc705716009e5671d28","name":"archimetric@visual-paradigm.com","image":{"@type":"ImageObject","inLanguage":"pl-PL","@id":"https:\/\/www.archimetric.com\/pl\/#\/schema\/person\/image\/","url":"https:\/\/secure.gravatar.com\/avatar\/de58c1924d83d002dbce0b79f74ba4b70e2f85238332df6cabc0227effdf470d?s=96&d=mm&r=g","contentUrl":"https:\/\/secure.gravatar.com\/avatar\/de58c1924d83d002dbce0b79f74ba4b70e2f85238332df6cabc0227effdf470d?s=96&d=mm&r=g","caption":"archimetric@visual-paradigm.com"},"url":"https:\/\/www.archimetric.com\/pl\/author\/archimetricvisual-paradigm-com\/"}]}},"_links":{"self":[{"href":"https:\/\/www.archimetric.com\/pl\/wp-json\/wp\/v2\/posts\/10883","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.archimetric.com\/pl\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.archimetric.com\/pl\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.archimetric.com\/pl\/wp-json\/wp\/v2\/users\/3479"}],"replies":[{"embeddable":true,"href":"https:\/\/www.archimetric.com\/pl\/wp-json\/wp\/v2\/comments?post=10883"}],"version-history":[{"count":0,"href":"https:\/\/www.archimetric.com\/pl\/wp-json\/wp\/v2\/posts\/10883\/revisions"}],"wp:attachment":[{"href":"https:\/\/www.archimetric.com\/pl\/wp-json\/wp\/v2\/media?parent=10883"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.archimetric.com\/pl\/wp-json\/wp\/v2\/categories?post=10883"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.archimetric.com\/pl\/wp-json\/wp\/v2\/tags?post=10883"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}