{"id":20514,"date":"2022-12-19T00:00:58","date_gmt":"2022-12-18T23:00:58","guid":{"rendered":"http:\/\/codecool.com\/?p=20514"},"modified":"2023-01-27T16:26:09","modified_gmt":"2023-01-27T15:26:09","slug":"czym-jest-programowanie-obiektowe","status":"publish","type":"post","link":"https:\/\/codecool.com\/pl\/czym-jest-programowanie-obiektowe\/","title":{"rendered":"Czym jest programowanie obiektowe"},"content":{"rendered":"\t\t<div data-elementor-type=\"wp-post\" data-elementor-id=\"20514\" class=\"elementor elementor-20514\" data-elementor-post-type=\"post\">\n\t\t\t\t\t\t<section class=\"elementor-section elementor-top-section elementor-element elementor-element-823f05d elementor-section-boxed elementor-section-height-default elementor-section-height-default\" data-id=\"823f05d\" data-element_type=\"section\" data-settings=\"{&quot;jet_parallax_layout_list&quot;:[]}\">\n\t\t\t\t\t\t<div class=\"elementor-container elementor-column-gap-default\">\n\t\t\t\t\t<div class=\"elementor-column elementor-col-100 elementor-top-column elementor-element elementor-element-d4a3a36\" data-id=\"d4a3a36\" data-element_type=\"column\">\n\t\t\t<div class=\"elementor-widget-wrap elementor-element-populated\">\n\t\t\t\t\t\t<div class=\"elementor-element elementor-element-8df69af elementor-widget elementor-widget-text-editor\" data-id=\"8df69af\" data-element_type=\"widget\" data-widget_type=\"text-editor.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t\t\t<p><b>Spotkamy si\u0119 z nim w takich j\u0119zykach jak Java, Python czy C#. Obiektowo\u015b\u0107 polega na modularyzowaniu, czyli dzieleniu kodu na cz\u0119\u015bci. Dzi\u015b odpowiemy na pytanie, czy programowanie obiektowe jest \u0142atwe i por\u00f3wnamy programowanie obiektowe z proceduralnym.<\/b><\/p><p>Z nauk\u0105 programowania obiektowego nie nale\u017cy czeka\u0107 zbyt d\u0142ugo. Na naszym <a href=\"https:\/\/codecool.com\/pl\/okursach\/\">kursie programowania w Codecool<\/a> wprowadzamy je zazwyczaj po 3 miesi\u0105cu nauki. Gdyby zwleka\u0107 d\u0142u\u017cej, p\u00f3\u017aniej trudno by by\u0142o wyzby\u0107 si\u0119 nawyk\u00f3w i przyzwyczaje\u0144, kt\u00f3re s\u0105 sprzeczne z programowaniem obiektowym. Niezb\u0119dnym elementem nauki programowania obiektowego jest oczywi\u015bcie teoria &#8211; mo\u017cna j\u0105 wyk\u0142ada\u0107, ale nie ka\u017cdy j\u0105 zrozumie. Dlatego w Codecool udost\u0119pniamy materia\u0142y z przyk\u0142adami w r\u00f3\u017cnych j\u0119zykach programowania i siadamy do pracy &#8211; dopiero dzia\u0142aj\u0105c, m\u0142odzi programi\u015bci dochodz\u0105 do momentu, w kt\u00f3rym co\u015b zaskakuje, wiedza uk\u0142ada si\u0119 w ca\u0142o\u015b\u0107 i zaczynaj\u0105 si\u0119 dobrze odnajdywa\u0107 w obiektowo\u015bci. Istota programowania obiektowego mo\u017ce by\u0107 trudna do poj\u0119cia dla pocz\u0105tkuj\u0105cych programist\u00f3w. By j\u0105 zrozumie\u0107, trzeba najpierw zderzy\u0107 si\u0119 z wi\u0119kszym programem. Gdy piszemy prosty program, taki jak kalkulator, programowanie obiektowe nie b\u0119dzie u\u017cyteczne &#8211; w przypadku prostych konsolowych program\u00f3w, mog\u0142oby nawet do\u0142o\u017cy\u0107 nam pracy.<\/p>\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t<\/section>\n\t\t\t\t<section class=\"elementor-section elementor-top-section elementor-element elementor-element-056d69c elementor-section-boxed elementor-section-height-default elementor-section-height-default\" data-id=\"056d69c\" data-element_type=\"section\" data-settings=\"{&quot;jet_parallax_layout_list&quot;:[]}\">\n\t\t\t\t\t\t<div class=\"elementor-container elementor-column-gap-default\">\n\t\t\t\t\t<div class=\"elementor-column elementor-col-100 elementor-top-column elementor-element elementor-element-40c3099\" data-id=\"40c3099\" data-element_type=\"column\">\n\t\t\t<div class=\"elementor-widget-wrap elementor-element-populated\">\n\t\t\t\t\t\t<div class=\"elementor-element elementor-element-1e5a53c elementor-widget elementor-widget-image\" data-id=\"1e5a53c\" data-element_type=\"widget\" data-widget_type=\"image.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<img fetchpriority=\"high\" decoding=\"async\" width=\"540\" height=\"540\" src=\"https:\/\/codecool.com\/wp-content\/uploads\/2021\/12\/818_image-540x540-1.jpg\" class=\"attachment-large size-large wp-image-20515\" alt=\"\" srcset=\"https:\/\/codecool.com\/wp-content\/uploads\/2021\/12\/818_image-540x540-1.jpg 540w, https:\/\/codecool.com\/wp-content\/uploads\/2021\/12\/818_image-540x540-1-300x300.jpg 300w, https:\/\/codecool.com\/wp-content\/uploads\/2021\/12\/818_image-540x540-1-150x150.jpg 150w\" sizes=\"(max-width: 540px) 100vw, 540px\" \/>\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t<\/section>\n\t\t\t\t<section class=\"elementor-section elementor-top-section elementor-element elementor-element-fa23c84 elementor-section-boxed elementor-section-height-default elementor-section-height-default\" data-id=\"fa23c84\" data-element_type=\"section\" data-settings=\"{&quot;jet_parallax_layout_list&quot;:[]}\">\n\t\t\t\t\t\t<div class=\"elementor-container elementor-column-gap-default\">\n\t\t\t\t\t<div class=\"elementor-column elementor-col-100 elementor-top-column elementor-element elementor-element-08eee0e\" data-id=\"08eee0e\" data-element_type=\"column\">\n\t\t\t<div class=\"elementor-widget-wrap elementor-element-populated\">\n\t\t\t\t\t\t<div class=\"elementor-element elementor-element-c69d0fc elementor-widget elementor-widget-heading\" data-id=\"c69d0fc\" data-element_type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t<h2 class=\"elementor-heading-title elementor-size-default\">Definicja programowania obiektowego<\/h2>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t<\/section>\n\t\t\t\t<section class=\"elementor-section elementor-top-section elementor-element elementor-element-7ffa1ca elementor-section-boxed elementor-section-height-default elementor-section-height-default\" data-id=\"7ffa1ca\" data-element_type=\"section\" data-settings=\"{&quot;jet_parallax_layout_list&quot;:[]}\">\n\t\t\t\t\t\t<div class=\"elementor-container elementor-column-gap-default\">\n\t\t\t\t\t<div class=\"elementor-column elementor-col-100 elementor-top-column elementor-element elementor-element-724d2a4\" data-id=\"724d2a4\" data-element_type=\"column\">\n\t\t\t<div class=\"elementor-widget-wrap elementor-element-populated\">\n\t\t\t\t\t\t<div class=\"elementor-element elementor-element-5ee7e62 elementor-widget elementor-widget-text-editor\" data-id=\"5ee7e62\" data-element_type=\"widget\" data-widget_type=\"text-editor.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t\t\t<p>W wi\u0119kszo\u015bci publikacji przeczyta\u0107 mo\u017cna, \u017ce programowanie obiektowe pomaga nam programowa\u0107, poniewa\u017c w naszym kodzie mo\u017cemy odzwierciedla\u0107 prawdziwe obiekty, wyst\u0119puj\u0105ce w rzeczywisto\u015bci. Jest to tylko cz\u0119\u015bciowo prawda. Jak twierdzi <a href=\"https:\/\/en.wikipedia.org\/wiki\/Robert_C._Martin\">Robert Martin<\/a> (w Internecie znany jako Uncle Bob), mentor programowania obiektowego i czystego kodu, powy\u017csza definicja programowania obiektowego zosta\u0142a stworzona przez marketingowc\u00f3w. Gdy opracowywano pierwsze j\u0119zyki obiektowe, specjali\u015bci od marketingu stan\u0119li przed zadaniem zach\u0119cenia prze\u0142o\u017conych do wsparcia takich prac. Ide\u0119 programowania obiektowego najpro\u015bciej by\u0142o wyt\u0142umaczy\u0107 w\u0142a\u015bnie w taki spos\u00f3b: m\u00f3wi\u0105c, \u017ce obiektowo\u015b\u0107 to odzwierciedlenie rzeczywistych obiekt\u00f3w w kodzie, co pozwoli szybciej programowa\u0107, ergo przyniesie wi\u0119ksze zyski.<\/p><p>O co wi\u0119c tak naprawd\u0119 chodzi w programowaniu obiektowym? Czas na bardziej adekwatn\u0105, cho\u0107 mniej chwytliw\u0105 i marketingow\u0105 definicj\u0119. <b>Programowanie obiektowe s\u0142u\u017cy do tego, \u017ceby\u015bmy mogli modularyzowa\u0107 sw\u00f3j kod. <\/b>Ale co to znaczy modularyzowa\u0107? Ju\u017c wyja\u015bniamy!<\/p><p>Modularyzowanie najpro\u015bciej wyt\u0142umaczy\u0107 jako dzielenie kodu na ma\u0142e \u201cklocki\u201d &#8211; o uniwersalnym kszta\u0142cie, kt\u00f3re mo\u017cna u\u017cy\u0107 w r\u00f3\u017cnych miejscach. Z takich klock\u00f3w mo\u017cemy u\u0142o\u017cy\u0107 dom, zamek lub samolot &#8211; czyli dowolny program, jaki nam si\u0119 zamarzy.<\/p>\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t<\/section>\n\t\t\t\t<section class=\"elementor-section elementor-top-section elementor-element elementor-element-53ee2b8 elementor-section-boxed elementor-section-height-default elementor-section-height-default\" data-id=\"53ee2b8\" data-element_type=\"section\" data-settings=\"{&quot;jet_parallax_layout_list&quot;:[]}\">\n\t\t\t\t\t\t<div class=\"elementor-container elementor-column-gap-default\">\n\t\t\t\t\t<div class=\"elementor-column elementor-col-100 elementor-top-column elementor-element elementor-element-191bfaf\" data-id=\"191bfaf\" data-element_type=\"column\">\n\t\t\t<div class=\"elementor-widget-wrap elementor-element-populated\">\n\t\t\t\t\t\t<div class=\"elementor-element elementor-element-fc98521 elementor-widget elementor-widget-heading\" data-id=\"fc98521\" data-element_type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t<h2 class=\"elementor-heading-title elementor-size-default\">Gdzie wykorzystuje si\u0119 programowanie obiektowe?<\/h2>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t<\/section>\n\t\t\t\t<section class=\"elementor-section elementor-top-section elementor-element elementor-element-1693973 elementor-section-boxed elementor-section-height-default elementor-section-height-default\" data-id=\"1693973\" data-element_type=\"section\" data-settings=\"{&quot;jet_parallax_layout_list&quot;:[]}\">\n\t\t\t\t\t\t<div class=\"elementor-container elementor-column-gap-default\">\n\t\t\t\t\t<div class=\"elementor-column elementor-col-100 elementor-top-column elementor-element elementor-element-7510ebe\" data-id=\"7510ebe\" data-element_type=\"column\">\n\t\t\t<div class=\"elementor-widget-wrap elementor-element-populated\">\n\t\t\t\t\t\t<div class=\"elementor-element elementor-element-9b80649 elementor-widget elementor-widget-text-editor\" data-id=\"9b80649\" data-element_type=\"widget\" data-widget_type=\"text-editor.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t\t\t<p>Programowanie obiektowe sprawdza si\u0119 w\u00f3wczas, gdy pracujemy nad du\u017cym projektem, najcz\u0119\u015bciej w zespole. Programowanie obiektowe pozwala lepiej podzieli\u0107 si\u0119 prac\u0105, zdelegowa\u0107 napisanie cz\u0119\u015bci obiekt\u00f3w poszczeg\u00f3lnym osobom w zespole, a nast\u0119pnie po\u0142\u0105czy\u0107 wszystkie elementy. System pisany obiektowo b\u0119dzie bardziej zmodularyzowany, czyli b\u0119dzie si\u0119 sk\u0142ada\u0142 z cz\u0119\u015bci. Je\u017celi jedna z nich nie b\u0119dzie dzia\u0142a\u0142a dobrze, mo\u017cemy j\u0105 po prostu wymieni\u0107.<\/p><p>W jakich j\u0119zykach programowania mamy do czynienia z programowaniem obiektowym? Najpopularniejszym j\u0119zykiem obiektowym jest obecnie Java. Cho\u0107 kojarzymy j\u0105 g\u0142\u00f3wnie z obiektowo\u015bci\u0105, mo\u017cemy tak\u017ce napisa\u0107 w niej program proceduralnie. R\u00f3wnie\u017c Python jest j\u0119zykiem obiektowym, cho\u0107 mo\u017cna go pisa\u0107 proceduralnie. Z kolei j\u0119zyk C jest zwi\u0105zany \u015bci\u015ble z programowaniem proceduralnym. Obiektowo\u015b\u0107 pojawi\u0142a si\u0119 dopiero wraz z wprowadzeniem <a href=\"https:\/\/codecool.com\/pl\/wiedza\/czym-charakteryzuje-sie-jezyk-c-codecool\/\">j\u0119zyka C++<\/a>.<\/p><p>Przeczytaj r\u00f3wnie\u017c: <a href=\"https:\/\/codecool.com\/pl\/wiedza\/jakie-sa-jezyki-programowania-codecool-pl\/\">Popularne j\u0119zyki programowania<\/a><\/p>\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t<\/section>\n\t\t\t\t<section class=\"elementor-section elementor-top-section elementor-element elementor-element-0e9a86a elementor-section-boxed elementor-section-height-default elementor-section-height-default\" data-id=\"0e9a86a\" data-element_type=\"section\" data-settings=\"{&quot;jet_parallax_layout_list&quot;:[]}\">\n\t\t\t\t\t\t<div class=\"elementor-container elementor-column-gap-default\">\n\t\t\t\t\t<div class=\"elementor-column elementor-col-100 elementor-top-column elementor-element elementor-element-446fcec\" data-id=\"446fcec\" data-element_type=\"column\">\n\t\t\t<div class=\"elementor-widget-wrap elementor-element-populated\">\n\t\t\t\t\t\t<div class=\"elementor-element elementor-element-56c3910 elementor-widget elementor-widget-heading\" data-id=\"56c3910\" data-element_type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t<h2 class=\"elementor-heading-title elementor-size-default\">Java<\/h2>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t<\/section>\n\t\t\t\t<section class=\"elementor-section elementor-top-section elementor-element elementor-element-b3f96fc elementor-section-boxed elementor-section-height-default elementor-section-height-default\" data-id=\"b3f96fc\" data-element_type=\"section\" data-settings=\"{&quot;jet_parallax_layout_list&quot;:[]}\">\n\t\t\t\t\t\t<div class=\"elementor-container elementor-column-gap-default\">\n\t\t\t\t\t<div class=\"elementor-column elementor-col-100 elementor-top-column elementor-element elementor-element-fa7be0f\" data-id=\"fa7be0f\" data-element_type=\"column\">\n\t\t\t<div class=\"elementor-widget-wrap elementor-element-populated\">\n\t\t\t\t\t\t<div class=\"elementor-element elementor-element-d354c97 elementor-widget elementor-widget-text-editor\" data-id=\"d354c97\" data-element_type=\"widget\" data-widget_type=\"text-editor.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t\t\t<p>Java jest j\u0119zykiem, kt\u00f3ry bardzo spopularyzowa\u0142 programowanie obiektowe. Konsekwentnie podchodzi do tematyki obiektowo\u015bci i w pe\u0142ni j\u0105 implementuje &#8211; odbywa si\u0119 to w zgodzie z teori\u0105. Z jednej strony pozwala nam to na uzyskanie czystego, poprawnego pod wzgl\u0119dem obiektowo\u015bci kodu. Dla niekt\u00f3rych programist\u00f3w jednak, staje si\u0119 to uci\u0105\u017cliwe. Silenie si\u0119 na pe\u0142n\u0105 zgodno\u015b\u0107 z obiektowo\u015bci\u0105 spowalnia ich prac\u0119, wi\u0119c krystalicznie czysty kod uznaj\u0105 oni za sztuk\u0119 dla sztuki.<\/p>\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t<\/section>\n\t\t\t\t<section class=\"elementor-section elementor-top-section elementor-element elementor-element-78179f7 elementor-section-boxed elementor-section-height-default elementor-section-height-default\" data-id=\"78179f7\" data-element_type=\"section\" data-settings=\"{&quot;jet_parallax_layout_list&quot;:[]}\">\n\t\t\t\t\t\t<div class=\"elementor-container elementor-column-gap-default\">\n\t\t\t\t\t<div class=\"elementor-column elementor-col-100 elementor-top-column elementor-element elementor-element-c565f78\" data-id=\"c565f78\" data-element_type=\"column\">\n\t\t\t<div class=\"elementor-widget-wrap elementor-element-populated\">\n\t\t\t\t\t\t<div class=\"elementor-element elementor-element-8f47c82 elementor-widget elementor-widget-heading\" data-id=\"8f47c82\" data-element_type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t<h2 class=\"elementor-heading-title elementor-size-default\">PHP<\/h2>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t<\/section>\n\t\t\t\t<section class=\"elementor-section elementor-top-section elementor-element elementor-element-eda28b3 elementor-section-boxed elementor-section-height-default elementor-section-height-default\" data-id=\"eda28b3\" data-element_type=\"section\" data-settings=\"{&quot;jet_parallax_layout_list&quot;:[]}\">\n\t\t\t\t\t\t<div class=\"elementor-container elementor-column-gap-default\">\n\t\t\t\t\t<div class=\"elementor-column elementor-col-100 elementor-top-column elementor-element elementor-element-9481d69\" data-id=\"9481d69\" data-element_type=\"column\">\n\t\t\t<div class=\"elementor-widget-wrap elementor-element-populated\">\n\t\t\t\t\t\t<div class=\"elementor-element elementor-element-c01465b elementor-widget elementor-widget-text-editor\" data-id=\"c01465b\" data-element_type=\"widget\" data-widget_type=\"text-editor.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t\t\t<p>PHP jest j\u0119zykiem obiektowym, bo jest obiektem \u017cart\u00f3w &#8211; ten kawa\u0142 ma ju\u017c d\u0142ug\u0105 brod\u0119, ale wci\u0105\u017c kr\u0105\u017cy w\u015br\u00f3d programist\u00f3w. My jednak nie mo\u017cemy si\u0119 z nim do ko\u0144ca zgodzi\u0107. Fakt, PHP mia\u0142 trudne pocz\u0105tki z obiektowo\u015bci\u0105 &#8211; najpierw by\u0142 j\u0119zykiem skryptowym, do kt\u00f3rego dopiero zacz\u0119to wprowadza\u0107 obiektowo\u015b\u0107, wzoruj\u0105c si\u0119 na tym, jak jest to zrealizowane w Javie.<\/p>\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t<\/section>\n\t\t\t\t<section class=\"elementor-section elementor-top-section elementor-element elementor-element-04c4fc3 elementor-section-boxed elementor-section-height-default elementor-section-height-default\" data-id=\"04c4fc3\" data-element_type=\"section\" data-settings=\"{&quot;jet_parallax_layout_list&quot;:[]}\">\n\t\t\t\t\t\t<div class=\"elementor-container elementor-column-gap-default\">\n\t\t\t\t\t<div class=\"elementor-column elementor-col-100 elementor-top-column elementor-element elementor-element-ed7eed9\" data-id=\"ed7eed9\" data-element_type=\"column\">\n\t\t\t<div class=\"elementor-widget-wrap elementor-element-populated\">\n\t\t\t\t\t\t<div class=\"elementor-element elementor-element-1f804a8 elementor-widget elementor-widget-heading\" data-id=\"1f804a8\" data-element_type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t<h2 class=\"elementor-heading-title elementor-size-default\">Python<\/h2>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t<\/section>\n\t\t\t\t<section class=\"elementor-section elementor-top-section elementor-element elementor-element-dfe7762 elementor-section-boxed elementor-section-height-default elementor-section-height-default\" data-id=\"dfe7762\" data-element_type=\"section\" data-settings=\"{&quot;jet_parallax_layout_list&quot;:[]}\">\n\t\t\t\t\t\t<div class=\"elementor-container elementor-column-gap-default\">\n\t\t\t\t\t<div class=\"elementor-column elementor-col-100 elementor-top-column elementor-element elementor-element-b8b2b9c\" data-id=\"b8b2b9c\" data-element_type=\"column\">\n\t\t\t<div class=\"elementor-widget-wrap elementor-element-populated\">\n\t\t\t\t\t\t<div class=\"elementor-element elementor-element-6ccf8bb elementor-widget elementor-widget-text-editor\" data-id=\"6ccf8bb\" data-element_type=\"widget\" data-widget_type=\"text-editor.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t\t\t<p>Rozpoczynaj\u0105c <a href=\"https:\/\/codecool.com\/pl\/wiedza\/programowanie-w-python\/\">programowanie w Pythonie<\/a>, nie mamy za bardzo do czynienia z obiektowo\u015bci\u0105 &#8211; cz\u0119sto kr\u00f3tsze programy piszemy, w og\u00f3le jej nie wykorzystuj\u0105c. Python pod wzgl\u0119dem obiektowo\u015bci podobny jest do PHP, s\u0105 jednak pewne kwestie, na kt\u00f3re trzeba uwa\u017ca\u0107, przesiadaj\u0105c si\u0119 np. z Javy na Pythona.<\/p>\n<p>Przeczytaj r\u00f3wnie\u017c: <a href=\"https:\/\/codecool.com\/pl\/wiedza\/funkcje-i-ich-deklarowanie-w-pythonie\/\">Funkcje w Pythonie<\/a><\/p>\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t<\/section>\n\t\t\t\t<section class=\"elementor-section elementor-top-section elementor-element elementor-element-a374231 elementor-section-boxed elementor-section-height-default elementor-section-height-default\" data-id=\"a374231\" data-element_type=\"section\" data-settings=\"{&quot;jet_parallax_layout_list&quot;:[]}\">\n\t\t\t\t\t\t<div class=\"elementor-container elementor-column-gap-default\">\n\t\t\t\t\t<div class=\"elementor-column elementor-col-100 elementor-top-column elementor-element elementor-element-229be51\" data-id=\"229be51\" data-element_type=\"column\">\n\t\t\t<div class=\"elementor-widget-wrap elementor-element-populated\">\n\t\t\t\t\t\t<div class=\"elementor-element elementor-element-5f876c5 elementor-widget elementor-widget-heading\" data-id=\"5f876c5\" data-element_type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t<h2 class=\"elementor-heading-title elementor-size-default\">C#<\/h2>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t<\/section>\n\t\t\t\t<section class=\"elementor-section elementor-top-section elementor-element elementor-element-ba8a594 elementor-section-boxed elementor-section-height-default elementor-section-height-default\" data-id=\"ba8a594\" data-element_type=\"section\" data-settings=\"{&quot;jet_parallax_layout_list&quot;:[]}\">\n\t\t\t\t\t\t<div class=\"elementor-container elementor-column-gap-default\">\n\t\t\t\t\t<div class=\"elementor-column elementor-col-100 elementor-top-column elementor-element elementor-element-55f9947\" data-id=\"55f9947\" data-element_type=\"column\">\n\t\t\t<div class=\"elementor-widget-wrap elementor-element-populated\">\n\t\t\t\t\t\t<div class=\"elementor-element elementor-element-3d00116 elementor-widget elementor-widget-text-editor\" data-id=\"3d00116\" data-element_type=\"widget\" data-widget_type=\"text-editor.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t\t\t<p>J\u0119zyk C# powsta\u0142 w mocnej inspiracji Jav\u0105. Programi\u015bci, kt\u00f3rzy stworzyli C#, cenili Jav\u0119, ale chcieli napisa\u0107 taki j\u0119zyk, kt\u00f3ry nie b\u0119dzie zawiera\u0142 \u017ale zaprojektowanych funkcjonalno\u015bci. Trzon, zwi\u0105zany z programowaniem obiektowym jest tu bardzo podobny jak Javie. Pewne rzeczy inaczej si\u0119 nazywaj\u0105, ale jest du\u017co cz\u0119\u015bci wsp\u00f3lnych.<\/p><p>Sprawd\u017a r\u00f3wnie\u017c: <a href=\"https:\/\/codecool.com\/pl\/wiedza\/czym-jest-net-framework-codecool-pl\/\">Czym jest .Net Framework?<\/a><\/p>\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t<\/section>\n\t\t\t\t<section class=\"elementor-section elementor-top-section elementor-element elementor-element-e1d3ee9 elementor-section-boxed elementor-section-height-default elementor-section-height-default\" data-id=\"e1d3ee9\" data-element_type=\"section\" data-settings=\"{&quot;jet_parallax_layout_list&quot;:[]}\">\n\t\t\t\t\t\t<div class=\"elementor-container elementor-column-gap-default\">\n\t\t\t\t\t<div class=\"elementor-column elementor-col-100 elementor-top-column elementor-element elementor-element-1ccde9b\" data-id=\"1ccde9b\" data-element_type=\"column\">\n\t\t\t<div class=\"elementor-widget-wrap elementor-element-populated\">\n\t\t\t\t\t\t<div class=\"elementor-element elementor-element-9c2f8e4 elementor-widget elementor-widget-heading\" data-id=\"9c2f8e4\" data-element_type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t<h2 class=\"elementor-heading-title elementor-size-default\">JavaScript<\/h2>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t<\/section>\n\t\t\t\t<section class=\"elementor-section elementor-top-section elementor-element elementor-element-5310510 elementor-section-boxed elementor-section-height-default elementor-section-height-default\" data-id=\"5310510\" data-element_type=\"section\" data-settings=\"{&quot;jet_parallax_layout_list&quot;:[]}\">\n\t\t\t\t\t\t<div class=\"elementor-container elementor-column-gap-default\">\n\t\t\t\t\t<div class=\"elementor-column elementor-col-100 elementor-top-column elementor-element elementor-element-947bf12\" data-id=\"947bf12\" data-element_type=\"column\">\n\t\t\t<div class=\"elementor-widget-wrap elementor-element-populated\">\n\t\t\t\t\t\t<div class=\"elementor-element elementor-element-cb06a2d elementor-widget elementor-widget-text-editor\" data-id=\"cb06a2d\" data-element_type=\"widget\" data-widget_type=\"text-editor.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t\t\t<p>Historia <a href=\"https:\/\/codecool.com\/pl\/wiedza\/javascript-gdzie-wykorzystuje-sie-js-codecool-pl\/\">JavaScript<\/a> podobna jest nieco do dziej\u00f3w PHP &#8211; JavaScript r\u00f3wnie\u017c jest j\u0119zykiem, kt\u00f3ry powoli dochodzi\u0142 do obiektowo\u015bci. W poprzednich wersjach JavaScript praktycznie jej nie by\u0142o; d\u0142ugo zaj\u0119\u0142o jej rozwini\u0119cie. Dopiero w 2015 roku wszed\u0142 standard ECMAScript, kt\u00f3ry na nowo zdefiniowa\u0142 j\u0119zyk JavaScript i wprowadzi\u0142 do niego notacj\u0119 stricte obiektow\u0105. Dopiero niedawno przegl\u0105darki zacz\u0119\u0142y wspiera\u0107 ten standard. Programi\u015bci JavaScript odczuwali brak obiektowo\u015bci i ju\u017c wcze\u015bniej zacz\u0119li sobie z tym radzi\u0107 &#8211; powstawa\u0142y wi\u0119c tzw. nadzbiory j\u0119zyka JavaScript, takie jak stworzony przez Microsoft TypeScript, kt\u00f3ry wprowadzi\u0142 do JavaScriptu obiektowo\u015b\u0107 podobn\u0105 do tej znanej np. z C#.<\/p><p>Zainteresuje Ci\u0119 r\u00f3wnie\u017c: <a href=\"https:\/\/codecool.com\/pl\/wiedza\/jak-nauczyc-sie-javascript-od-podstaw-codecool-pl\/\">JavaScript od podstaw<\/a><\/p>\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t<\/section>\n\t\t\t\t<section class=\"elementor-section elementor-top-section elementor-element elementor-element-5b8d136 elementor-section-boxed elementor-section-height-default elementor-section-height-default\" data-id=\"5b8d136\" data-element_type=\"section\" data-settings=\"{&quot;jet_parallax_layout_list&quot;:[]}\">\n\t\t\t\t\t\t<div class=\"elementor-container elementor-column-gap-default\">\n\t\t\t\t\t<div class=\"elementor-column elementor-col-100 elementor-top-column elementor-element elementor-element-cc6777b\" data-id=\"cc6777b\" data-element_type=\"column\">\n\t\t\t<div class=\"elementor-widget-wrap elementor-element-populated\">\n\t\t\t\t\t\t<div class=\"elementor-element elementor-element-0fcf9f6 elementor-widget elementor-widget-heading\" data-id=\"0fcf9f6\" data-element_type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t<h2 class=\"elementor-heading-title elementor-size-default\">Programowanie obiektowe a strukturalne<\/h2>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t<\/section>\n\t\t\t\t<section class=\"elementor-section elementor-top-section elementor-element elementor-element-33025c0 elementor-section-boxed elementor-section-height-default elementor-section-height-default\" data-id=\"33025c0\" data-element_type=\"section\" data-settings=\"{&quot;jet_parallax_layout_list&quot;:[]}\">\n\t\t\t\t\t\t<div class=\"elementor-container elementor-column-gap-default\">\n\t\t\t\t\t<div class=\"elementor-column elementor-col-100 elementor-top-column elementor-element elementor-element-2593d87\" data-id=\"2593d87\" data-element_type=\"column\">\n\t\t\t<div class=\"elementor-widget-wrap elementor-element-populated\">\n\t\t\t\t\t\t<div class=\"elementor-element elementor-element-079ebfc elementor-widget elementor-widget-text-editor\" data-id=\"079ebfc\" data-element_type=\"widget\" data-widget_type=\"text-editor.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t\t\t<p>Zanim powsta\u0142o programowanie obiektowe, powszechnie funkcjonowa\u0142o programowanie proceduralne (strukturalne). Programowanie cz\u0119sto polega\u0142o w\u00f3wczas na kopiowaniu i wklejaniu fragment\u00f3w kodu, przez co kod ten by\u0142 du\u017co bardziej zagmatwany. Programowanie proceduralne wyst\u0119powa\u0142o m.in. w j\u0119zyku C. W tym momencie, gdy programujemy obiektowo, fragmenty naszego systemu pakujemy w klocki, kt\u00f3re spe\u0142niaj\u0105 takie funkcje, jakie powinny &#8211; nie musimy si\u0119 w to zag\u0142\u0119bia\u0107. My tylko \u0142\u0105czymy je w ca\u0142o\u015b\u0107. Gdy jeden nam si\u0119 nie sprawdzi, mo\u017cemy wymieni\u0107 go na inny. W programowaniu proceduralnym nie by\u0142o to takie proste i przypomina\u0142o operacj\u0119 na otwartym sercu.<\/p>\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t<\/section>\n\t\t\t\t<section class=\"elementor-section elementor-top-section elementor-element elementor-element-3c9430e elementor-section-boxed elementor-section-height-default elementor-section-height-default\" data-id=\"3c9430e\" data-element_type=\"section\" data-settings=\"{&quot;jet_parallax_layout_list&quot;:[]}\">\n\t\t\t\t\t\t<div class=\"elementor-container elementor-column-gap-default\">\n\t\t\t\t\t<div class=\"elementor-column elementor-col-100 elementor-top-column elementor-element elementor-element-7692a54\" data-id=\"7692a54\" data-element_type=\"column\">\n\t\t\t<div class=\"elementor-widget-wrap elementor-element-populated\">\n\t\t\t\t\t\t<div class=\"elementor-element elementor-element-f4d3f71 elementor-widget elementor-widget-heading\" data-id=\"f4d3f71\" data-element_type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t<h2 class=\"elementor-heading-title elementor-size-default\">Podsumowanie<\/h2>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t<\/section>\n\t\t\t\t<section class=\"elementor-section elementor-top-section elementor-element elementor-element-74b4108 elementor-section-boxed elementor-section-height-default elementor-section-height-default\" data-id=\"74b4108\" data-element_type=\"section\" data-settings=\"{&quot;jet_parallax_layout_list&quot;:[]}\">\n\t\t\t\t\t\t<div class=\"elementor-container elementor-column-gap-default\">\n\t\t\t\t\t<div class=\"elementor-column elementor-col-100 elementor-top-column elementor-element elementor-element-168d6fa\" data-id=\"168d6fa\" data-element_type=\"column\">\n\t\t\t<div class=\"elementor-widget-wrap elementor-element-populated\">\n\t\t\t\t\t\t<div class=\"elementor-element elementor-element-482b0d9 elementor-widget elementor-widget-text-editor\" data-id=\"482b0d9\" data-element_type=\"widget\" data-widget_type=\"text-editor.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t\t\t<p>Teoria programowania obiektowego jest uniwersalna dla wszystkich j\u0119zyk\u00f3w programowania. Paradygmat programowania obiektowego nie jest do ko\u0144ca zwi\u0105zany z samym j\u0119zykiem &#8211; jak pokazali\u015bmy, programowanie proceduralne nadal wyst\u0119puje i to w najwi\u0119kszych j\u0119zykach, kojarzonych g\u0142\u00f3wnie z obiektowo\u015bci\u0105. Nie da si\u0119 wi\u0119c pozosta\u0107 przy nauce tylko jednego sposobu programowania &#8211; do prostych program\u00f3w wybierzemy programowanie proceduralne, a do wi\u0119kszych i bardziej skomplikowanych \u00a0projekt\u00f3w &#8211; obiektowe.<\/p>\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t<\/section>\n\t\t\t\t<\/div>\n\t\t","protected":false},"excerpt":{"rendered":"<p>Spotkamy si\u0119 z nim w takich j\u0119zykach jak Java, Python czy C#. Obiektowo\u015b\u0107 polega na modularyzowaniu, czyli dzieleniu kodu na cz\u0119\u015bci. Dzi\u015b odpowiemy na pytanie, czy programowanie obiektowe jest \u0142atwe i por\u00f3wnamy programowanie obiektowe z proceduralnym. Z nauk\u0105 programowania obiektowego nie nale\u017cy czeka\u0107 zbyt d\u0142ugo. Na naszym kursie programowania w Codecool wprowadzamy je zazwyczaj po [&hellip;]<\/p>\n","protected":false},"author":4,"featured_media":20515,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[133],"tags":[],"class_list":["post-20514","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-wiedza"],"yoast_head":"<!-- This site is optimized with the Yoast SEO Premium plugin v24.4 (Yoast SEO v24.4) - https:\/\/yoast.com\/wordpress\/plugins\/seo\/ -->\n<title>Czym jest programowanie obiektowe - Codecool<\/title>\n<meta name=\"description\" content=\"Podczas kursu poznasz tajniki programowania obiektowego, czyli paradygmatu zorientowanego na kodowanie wok\u00f3\u0142 obiekt\u00f3w i ich relacji. Sprawd\u017a!\" \/>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/codecool.com\/pl\/czym-jest-programowanie-obiektowe\/\" \/>\n<meta property=\"og:locale\" content=\"pl_PL\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Czym jest programowanie obiektowe\" \/>\n<meta property=\"og:description\" content=\"Podczas kursu poznasz tajniki programowania obiektowego, czyli paradygmatu zorientowanego na kodowanie wok\u00f3\u0142 obiekt\u00f3w i ich relacji. Sprawd\u017a!\" \/>\n<meta property=\"og:url\" content=\"https:\/\/codecool.com\/pl\/czym-jest-programowanie-obiektowe\/\" \/>\n<meta property=\"og:site_name\" content=\"Codecool\" \/>\n<meta property=\"article:publisher\" content=\"https:\/\/www.facebook.com\/CodecoolOfficial\/\" \/>\n<meta property=\"article:published_time\" content=\"2022-12-18T23:00:58+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2023-01-27T15:26:09+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/codecool.com\/wp-content\/uploads\/2021\/12\/818_image-540x540-1.jpg\" \/>\n\t<meta property=\"og:image:width\" content=\"540\" \/>\n\t<meta property=\"og:image:height\" content=\"540\" \/>\n\t<meta property=\"og:image:type\" content=\"image\/jpeg\" \/>\n<meta name=\"author\" content=\"Dora Hoffman\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:creator\" content=\"@Codecool_global\" \/>\n<meta name=\"twitter:site\" content=\"@Codecool_global\" \/>\n<meta name=\"twitter:label1\" content=\"Napisane przez\" \/>\n\t<meta name=\"twitter:data1\" content=\"Dora Hoffman\" \/>\n\t<meta name=\"twitter:label2\" content=\"Szacowany czas czytania\" \/>\n\t<meta name=\"twitter:data2\" content=\"5 minut\" \/>\n<!-- \/ Yoast SEO Premium plugin. -->","yoast_head_json":{"title":"Czym jest programowanie obiektowe - Codecool","description":"Podczas kursu poznasz tajniki programowania obiektowego, czyli paradygmatu zorientowanego na kodowanie wok\u00f3\u0142 obiekt\u00f3w i ich relacji. Sprawd\u017a!","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:\/\/codecool.com\/pl\/czym-jest-programowanie-obiektowe\/","og_locale":"pl_PL","og_type":"article","og_title":"Czym jest programowanie obiektowe","og_description":"Podczas kursu poznasz tajniki programowania obiektowego, czyli paradygmatu zorientowanego na kodowanie wok\u00f3\u0142 obiekt\u00f3w i ich relacji. Sprawd\u017a!","og_url":"https:\/\/codecool.com\/pl\/czym-jest-programowanie-obiektowe\/","og_site_name":"Codecool","article_publisher":"https:\/\/www.facebook.com\/CodecoolOfficial\/","article_published_time":"2022-12-18T23:00:58+00:00","article_modified_time":"2023-01-27T15:26:09+00:00","og_image":[{"width":540,"height":540,"url":"https:\/\/codecool.com\/wp-content\/uploads\/2021\/12\/818_image-540x540-1.jpg","type":"image\/jpeg"}],"author":"Dora Hoffman","twitter_card":"summary_large_image","twitter_creator":"@Codecool_global","twitter_site":"@Codecool_global","twitter_misc":{"Napisane przez":"Dora Hoffman","Szacowany czas czytania":"5 minut"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/codecool.com\/pl\/czym-jest-programowanie-obiektowe\/#article","isPartOf":{"@id":"https:\/\/codecool.com\/pl\/czym-jest-programowanie-obiektowe\/"},"author":{"name":"Dora Hoffman","@id":"https:\/\/codecool.com\/pl\/#\/schema\/person\/622e226c942203940586ef2dceca8365"},"headline":"Czym jest programowanie obiektowe","datePublished":"2022-12-18T23:00:58+00:00","dateModified":"2023-01-27T15:26:09+00:00","mainEntityOfPage":{"@id":"https:\/\/codecool.com\/pl\/czym-jest-programowanie-obiektowe\/"},"wordCount":1192,"commentCount":0,"publisher":{"@id":"https:\/\/codecool.com\/pl\/#organization"},"image":{"@id":"https:\/\/codecool.com\/pl\/czym-jest-programowanie-obiektowe\/#primaryimage"},"thumbnailUrl":"https:\/\/codecool.com\/wp-content\/uploads\/2021\/12\/818_image-540x540-1.jpg","articleSection":["Wiedza"],"inLanguage":"pl-PL","potentialAction":[{"@type":"CommentAction","name":"Comment","target":["https:\/\/codecool.com\/pl\/czym-jest-programowanie-obiektowe\/#respond"]}]},{"@type":"WebPage","@id":"https:\/\/codecool.com\/pl\/czym-jest-programowanie-obiektowe\/","url":"https:\/\/codecool.com\/pl\/czym-jest-programowanie-obiektowe\/","name":"Czym jest programowanie obiektowe - Codecool","isPartOf":{"@id":"https:\/\/codecool.com\/pl\/#website"},"primaryImageOfPage":{"@id":"https:\/\/codecool.com\/pl\/czym-jest-programowanie-obiektowe\/#primaryimage"},"image":{"@id":"https:\/\/codecool.com\/pl\/czym-jest-programowanie-obiektowe\/#primaryimage"},"thumbnailUrl":"https:\/\/codecool.com\/wp-content\/uploads\/2021\/12\/818_image-540x540-1.jpg","datePublished":"2022-12-18T23:00:58+00:00","dateModified":"2023-01-27T15:26:09+00:00","description":"Podczas kursu poznasz tajniki programowania obiektowego, czyli paradygmatu zorientowanego na kodowanie wok\u00f3\u0142 obiekt\u00f3w i ich relacji. Sprawd\u017a!","breadcrumb":{"@id":"https:\/\/codecool.com\/pl\/czym-jest-programowanie-obiektowe\/#breadcrumb"},"inLanguage":"pl-PL","potentialAction":[{"@type":"ReadAction","target":["https:\/\/codecool.com\/pl\/czym-jest-programowanie-obiektowe\/"]}]},{"@type":"ImageObject","inLanguage":"pl-PL","@id":"https:\/\/codecool.com\/pl\/czym-jest-programowanie-obiektowe\/#primaryimage","url":"https:\/\/codecool.com\/wp-content\/uploads\/2021\/12\/818_image-540x540-1.jpg","contentUrl":"https:\/\/codecool.com\/wp-content\/uploads\/2021\/12\/818_image-540x540-1.jpg","width":540,"height":540},{"@type":"BreadcrumbList","@id":"https:\/\/codecool.com\/pl\/czym-jest-programowanie-obiektowe\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/codecool.com\/pl\/"},{"@type":"ListItem","position":2,"name":"Czym jest programowanie obiektowe"}]},{"@type":"WebSite","@id":"https:\/\/codecool.com\/pl\/#website","url":"https:\/\/codecool.com\/pl\/","name":"Codecool","description":"Next gen coding school &amp; career hub","publisher":{"@id":"https:\/\/codecool.com\/pl\/#organization"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/codecool.com\/pl\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"pl-PL"},{"@type":"Organization","@id":"https:\/\/codecool.com\/pl\/#organization","name":"Codecool","alternateName":"Codecool","url":"https:\/\/codecool.com\/pl\/","logo":{"@type":"ImageObject","inLanguage":"pl-PL","@id":"https:\/\/codecool.com\/pl\/#\/schema\/logo\/image\/","url":"https:\/\/codecool.com\/wp-content\/uploads\/2023\/09\/Codecool-logo-app.svg","contentUrl":"https:\/\/codecool.com\/wp-content\/uploads\/2023\/09\/Codecool-logo-app.svg","width":1,"height":1,"caption":"Codecool"},"image":{"@id":"https:\/\/codecool.com\/pl\/#\/schema\/logo\/image\/"},"sameAs":["https:\/\/www.facebook.com\/CodecoolOfficial\/","https:\/\/x.com\/Codecool_global","https:\/\/www.instagram.com\/codecool_official\/","https:\/\/www.linkedin.com\/school\/codecool\/"]},{"@type":"Person","@id":"https:\/\/codecool.com\/pl\/#\/schema\/person\/622e226c942203940586ef2dceca8365","name":"Dora Hoffman","image":{"@type":"ImageObject","inLanguage":"pl-PL","@id":"https:\/\/codecool.com\/pl\/#\/schema\/person\/image\/","url":"https:\/\/secure.gravatar.com\/avatar\/13d568fb246033721321e216b8f5f06457e373d046558ceccec33b2e0dc025bc?s=96&d=mm&r=g","contentUrl":"https:\/\/secure.gravatar.com\/avatar\/13d568fb246033721321e216b8f5f06457e373d046558ceccec33b2e0dc025bc?s=96&d=mm&r=g","caption":"Dora Hoffman"}}]}},"_links":{"self":[{"href":"https:\/\/codecool.com\/pl\/wp-json\/wp\/v2\/posts\/20514","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/codecool.com\/pl\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/codecool.com\/pl\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/codecool.com\/pl\/wp-json\/wp\/v2\/users\/4"}],"replies":[{"embeddable":true,"href":"https:\/\/codecool.com\/pl\/wp-json\/wp\/v2\/comments?post=20514"}],"version-history":[{"count":7,"href":"https:\/\/codecool.com\/pl\/wp-json\/wp\/v2\/posts\/20514\/revisions"}],"predecessor-version":[{"id":65663,"href":"https:\/\/codecool.com\/pl\/wp-json\/wp\/v2\/posts\/20514\/revisions\/65663"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/codecool.com\/pl\/wp-json\/wp\/v2\/media\/20515"}],"wp:attachment":[{"href":"https:\/\/codecool.com\/pl\/wp-json\/wp\/v2\/media?parent=20514"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/codecool.com\/pl\/wp-json\/wp\/v2\/categories?post=20514"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/codecool.com\/pl\/wp-json\/wp\/v2\/tags?post=20514"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}