Java - programowanie obiektowe w 3h

Поделиться
HTML-код
  • Опубликовано: 5 авг 2024
  • 🔥 Sprawdź kurs Java od podstaw - od zera do Junior Developera: javaodpodstaw.pl/ 🔥
    Czym jest programowanie obiektowe? Czym są klasy, obiekty, pola i metody? Czym różni się klasy abstrakcyjne od interfejsów i kiedy z nich korzystamy? W tym odcinku tłumaczę najważniejsze koncepty programowania obiektowego, a wszystko o czym mówię, pokazuję od razu w praktyce.
    🔥 Roadmapa programisty - Czego, kiedy i dlaczego się uczyć, żeby zostać programistą: roadmapaprogramisty.pl/
    🔥 Programista dzisiaj - Sprawdzone źródła do nauki dla początkujących programistów: programistadzisiaj.pl/
    🔥 Kurs Git od podstaw: gitodpodstaw.pl/
    🔥🔥🔥 Zapisz się do mailingu Java od podstaw i odbierz bezpłatnego ebooka "7 kroków do zostania programistą Java" (+ kilka innych bonusów): www.javaodpodstaw.pl/ 🔥🔥🔥
    Dołącz też tutaj:
    DISCORD: www.jaknauczycsieprogramowani...
    INSTAGRAM: / jaknauczycsieprogramow...
    FACEBOOK (GRUPA): / jaknauczycsieprogramow...
    FACEBOOK (STRONA): / jaknauczycsieprogramow...
    ✉️ Współpraca: marketing@jaknauczycsieprogramowania.pl
    Podstawy Javy w 2h: • Java - podstawy w 2h
    Java Stream API: • Java STREAM API w 40 m...
    Projekt z odcinka: github.com/kamilbrzezinski/oop
    00:00:00 Czym jest programowanie obiektowe?
    00:05:06 Czym jest klasa?
    00:09:17 Konstruktor i pola klasy
    00:18:47 Przeciążanie konstruktorów (constructor overloading)
    00:21:20 Metody klasy
    00:33:59 Zasada pojedynczej odpowiedzialności
    00:34:49 Modyfikatory dostępu, enkapsulacja / hermetyzacja
    00:49:20 Polimorfizm - klasy abstrakcyjne, interfejsy, dziedziczenie
    00:57:52 Część praktyczna - wykorzystujemy OOP w projekcie
    00:58:33 Przedstawienie założeń projektu i pierwsze linie kodu
    01:11:24 Praktyczne wykorzystanie interfejsów
    01:28:32 Testujemy napisany kod i widzimy jak przydatne są interfejsy
    01:33:49 Tworzymy kolejny interfejs
    01:47:17 Interfejsy i klasy abstrakcyjne - część 1
    02:01:27 Interfejsy i klasy abstrakcyjne - część 2
    02:09:50 Code Review - robimy przegląd projektu i sprawdzamy poprawność kodu
    02:13:39 Testujemy projekt
    02:20:02 Przesłanianie metod (method overriding), instanceof, pola i metody statyczne, domyślne metody interfejsów

Комментарии • 294

  • @pawelklawender5355
    @pawelklawender5355 3 года назад +29

    Jeden kurs na Udemy, drugi na YT, książka, blogi i co i nic !
    W końcu trafiłem na ten film. Dzięki bardzo!

  • @Mateusz-nc3fn
    @Mateusz-nc3fn 3 года назад +20

    Duże słowa uznania za to co robisz. Dziekujemy !

  • @katarzyna9692
    @katarzyna9692 3 года назад +50

    Kamil, jestem dopiero na 5 minucie, ale juz mowie, ze kocham Cie za ten film! ❤️❤️❤️ Dokladnie to, czego wlasnie potrzebuje!

    • @h4wk742
      @h4wk742 5 месяцев назад

      Zostałaś programistka?

    • @katarzyna9692
      @katarzyna9692 5 месяцев назад

      @@h4wk742 nie, nie poszlam w to, ale zmienilam prace na branze w IT

  • @morveusz93
    @morveusz93 3 года назад +1

    Ekstra! Dzięki bardzo za Twoje filmy, tłumaczysz wszystko w zrozumiały dla mnie sposób, dzięki Tobie dużo łatwiej jest mi zrozumieć zagadnienia związane z programowaniem. Świetna robota!

  • @tomaszwazny3836
    @tomaszwazny3836 3 года назад +6

    Świetny film. Nie spotkałem jeszcze tutorialu z OOP, w któtym ktoś wytłumaczyłby to zagadnienie tak zrozumiale jak Ty. Szczególne słowa uznania za bardzo dobre i zrozumiałe rozgraniczenie Interface'u oraz Klasy Abstrakcyjnej, bo to z mojej perspektywy (i chyba nie tylko mojej) sprawiało największy problem. Tłumaczenie na podstawie jednego spójnego projektu również zrobiło robotę. Liczę na więcej filmików poświęconych Javie, jeszcze raz - dobra robota. Pozdrawiam ;)

  • @BiTuSS1
    @BiTuSS1 3 года назад +3

    Bardzo wartościowy materiał oparty na świetnym realnym przykładzie. Tego właśnie brakowało ! Świetna robota

  • @vorbizasca3739
    @vorbizasca3739 3 года назад +5

    Nareszcie, po względnym opanowaniu podstaw mogę zasiąść do tego filmu:) Wielkie dzięki !

  • @danielm0827
    @danielm0827 3 года назад +5

    3h zlecialy szybciutko, dziekuje za super tlumaczenie javy ! Pelna profeska !

  • @solidus2360
    @solidus2360 3 года назад +3

    Dziękuję za ten kanał i wkładaną w niego pracę. Mistrzostwo.

  • @yungfilip4143
    @yungfilip4143 Год назад

    Genialny kurs taki podjarany jestem tą java wreszcie czuje ze to jest ten język któremu mogę poświecić swoj czas i to czuć a nie jak np próbowałem z frontendem, który uważam za kobiecy albo z c++, który mi nie podpasował z fartem dzieki za poradnik. Czekam na jesień i zobacze twój kursik, choć mam nadzieje że już przeskocze ten poziom do tego czasu i tam zobacze same powtorki pzodrawiam

  • @kamillo27
    @kamillo27 2 года назад +2

    Ogromna dawka wiedzy, do tego dobrze wytłumaczonej. Dzięki Kamil! :)

  • @AD-we8ur
    @AD-we8ur Год назад

    najlepszy kurs jaki spotkałem. Przykłady i prostota . Wielki szacunek że dzielisz sie tą wiedzą . Czekam na kolejne filmy

  • @ExtaseProduction
    @ExtaseProduction 3 года назад +1

    Wszystko super wytłumaczone. Dzięki!

  • @romualdkaczmarczyk8257
    @romualdkaczmarczyk8257 3 года назад +2

    Bardzo profesjonalnie i na temat. Jestem pod wrażeniem

  • @Kamil.grdeniuu
    @Kamil.grdeniuu 2 года назад +1

    Fenomenalnie wytłumaczone! Dziękuję bardzo :)

  • @rafalgontarski3254
    @rafalgontarski3254 Год назад

    Bardzo dziękuję za ten kurs. Obejrzałem bardzo intensywnie i sporo mi pomógł. Muszę samodzielnie, powoli sobie wszystko przećwiczyć. Dziękuję!

  • @bartass4x
    @bartass4x 3 года назад

    Ogromna dawka informacji, dzięki wielkie.
    Do materiału będę na pewno jeszcze wracał.

  • @matemxvi2249
    @matemxvi2249 Год назад +1

    Obejrzałem do końca, zarówno ten kurs obiektowej Javy jak i podstawy w 2h. Bardzo ciekawie wytłumaczone, lecz z drugiej strony miałem styczność z programowaniem więc łatwiej to ogarnąć.
    Fajnie, że poświęciłeś te godziny na przekazanie nam wiedzy o Javy w tak przystępny sposób :)

  • @radeksendecki9922
    @radeksendecki9922 2 года назад

    Przychodzę z C# i bardzo podoba mi się java patrząc na Twój kurs. Dziękuję.
    Świetnie dobrałeś praktyczne przykłady, dzięki którym można zobaczyć obiektowość w realnym życiu.

  • @Cisi204
    @Cisi204 3 года назад

    Materiał wyjaśniony w sposób przyjazny i zrozumiały. Dzięki

  • @Rudzix66
    @Rudzix66 3 года назад +6

    A dziękuję za ten odcinek. 3 godziny zarezerwowane na yt 😄

  • @ZadiniPlatini
    @ZadiniPlatini Год назад +5

    Wydałem 20k PLN na kurs Javy a i tak korzystam z Twoich materiałów.
    Ogólnie polecam wszystkich uczyć się z wielu źródeł i w innych formach.
    W moim przypadku to wygląda tak, że mam zajęcia z SDA, czytam książkę "Rusz głową Java", oglądam właśnie materiały na YT i wspólnie z Ziomkiem rozwiązujemy różne zadania. Dla mnie jest to świetne rozwiązanie bo np coś co na kursie było średnio zrozumiałe ale jakiś fundament został, to z innego źródła ten sam temat wchodzi juz na miękko.

    • @Xx_GhostAlpha7_xX
      @Xx_GhostAlpha7_xX Год назад +1

      Mam dokładnie taką samą sytuację :) Pozdrawiam i powodzenia!

  • @EmilDworniczak
    @EmilDworniczak 3 года назад +1

    Dzięki za materiał :) Kawał dobrej roboty

  • @aniaw.7521
    @aniaw.7521 3 года назад +1

    Kamil, dajesz nadzieję, na zrozumienie zasad programowania. Twoje filmy sprawiają, że "w pokoju gdzie jest ciemno" nagle wszystko się rozjaśnia, nie ważne, czy opowiadasz o gicie, RESTapi, czy o Javie. Dzięki!

  • @PzD91
    @PzD91 3 года назад +1

    Super odcinek. Spora dawka wiedzy.

  • @danielskolimowski1279
    @danielskolimowski1279 3 года назад

    Dzięki wielkie za kolejny film.

  • @robydj5289
    @robydj5289 3 года назад

    Bardzo dziękuję za ten wspaniały film! Nareszcie programowanie obiektowe zostało wytłumaczone w genialny sposób. Pozdrawiam i już szykuje się do obejrzenia następnych filmów!

  • @tomasz3727
    @tomasz3727 2 года назад

    Fajnie widać takie zaangażowanie w przygotowanie materiałów. Mało osób robi tak wartościowe materiały ja Ty :)

  • @AndrzejCzarny
    @AndrzejCzarny 2 года назад +2

    Oglądałem, a właściwie słuchałem tego nagrania jadąc autem i niesamowite jest to, że pomimo tego, że nie patrzyłem w ekran potrafiłem sobie wyobrazić o czym mówisz i co robisz, a to wszystko za sprawą ciekawych życiowych przykładów. Słuchając nagrania czułem się jakbym słuchał podcastu, z którego na prawdę wyniosłem dużo. Dzięki!

    • @JakNauczycSieProgramowania
      @JakNauczycSieProgramowania  2 года назад +1

      Mega się cieszę, że trafia do Ciebie ten materiał i w takim razie zapraszam do zapoznania się z innymi filmami na temat Javy :) Tutaj jest cała playlista: ruclips.net/video/6G19kFcVXTo/видео.html

  • @adriandomagala9710
    @adriandomagala9710 3 года назад +3

    Naprawdę świetny materiał

  • @radosawszczepanski7907
    @radosawszczepanski7907 3 года назад

    Jestem programistą front-end i nie spotykałem się jeszcze zbyt często z programowaniem obiektowym. Czasem we frameworkach js'a, jednak postanowiłem rozwijać back-end i w przypadku Python + django było już to dla mnie problematyczne. Twój poradnik odpowiedział na moje wszystkie pytania oraz logiczne problemy. Bardzo dobrze tlumaczysz, masz przyjemny głos i wyobraźnię też nie małą. Wielkie propsy za DARMOWY poradnik, który z pewnością można polecić każdemu programiście.

  • @beatamazurkiewicz2860
    @beatamazurkiewicz2860 2 года назад

    Wielkie dzięki za Twoje filmy!

  • @krzysztofmarchewka9242
    @krzysztofmarchewka9242 3 года назад

    Gratulacje, świetna robota, dziękujemy!

    • @JakNauczycSieProgramowania
      @JakNauczycSieProgramowania  3 года назад

      Dzięki, miło mi to słyszeć! Takie komentarze zawsze bardzo mocno motywują mnie do dalszej pracy :)

  • @katarzynabrzezinska8546
    @katarzynabrzezinska8546 3 года назад +6

    Gratulacje za wytrwałość,ogromną wiedzę i profesjonalny przekaz

  • @krzysztofkulpa3465
    @krzysztofkulpa3465 2 года назад

    Super materiał! Jedna uwaga na przyszłość: gdy przerabiam poradniki staram się najpierw sam wykonać zadanie, które jest opisywane na początku a następnie sprawdzam jak zostało wykonane przez autora. W tym filmie opis tego jak powinien działać symulator komputera był tak lakoniczny że wykonałem swój kod wykorzystujący OOP ale projekt, który ja stworzyłem był właściwie zupełnie inny od Twojego :D

  • @AndrzejAAn
    @AndrzejAAn 3 года назад

    super odcinek !!! dzięki Kamil :D

  • @Robert-rp8km
    @Robert-rp8km 3 года назад

    Dzieki Kamil za twoj ogromny wklad w nasz rozwoj!!! Wspaniale materialy!!! Super tlumaczysz. Jestes konkretny, otwarty i b. dobrze przygotowany!!! Cenisz nasz czas!!! Zaluje, ze musze spac bo moglbym ogladac twoje filmy na okraglo! Przyklad do dzisiejszej lekcji wybralbym jednak inny... Np. Rent Vehicle. Moim skromnym zdaniem bardziej kontekstowy, mniej abstrakcyjny i spojny. Do tego doszlaby zabawa z datami i czasem. Pozdrawiam i czekam z niecierpliwoscia na kolejne filmy. Jestes SUPER!!!!!

    • @JakNauczycSieProgramowania
      @JakNauczycSieProgramowania  3 года назад +1

      Ale Rent Vehicle to taki trochę już oklepany przykład ;) A daty i czas to bardzo dobry temat na jeden z kolejnych odcinków! Zapisuję i postaram się wrzucić gdzieś do harmonogramu :)

  • @jankowal115
    @jankowal115 2 года назад

    Rok na moich studiach rozłożył się tak, że nie programowałem praktycznie przez semestr w Javie. Twój film odświeżył trochę mi głowę i pomógł mi wrócić do klepania kodu w Javie.

  • @kubaczeek6443
    @kubaczeek6443 3 года назад

    Świetna robota ❤️

  • @kokojambo1298
    @kokojambo1298 3 года назад

    Super. Bardzo przydatny materiał

  • @bert3373
    @bert3373 3 года назад

    super, poradnik mega dzięki :)

  • @rafalewandowski5180
    @rafalewandowski5180 3 года назад

    Wielkie dzięki za ten odcinek Kamil!
    Pozdrawiam!

  • @Seba92Mx
    @Seba92Mx 3 года назад +1

    Bardzo łatwe w odbiorze i konkretne w przykładach. Miałem już do czynienia z wieloma kursami Javy dla poczatkujących na RUclips czy Udemy i Twój jest chyba najlepszym wyborem. Mówisz na temat i nie za wolno (chociaż ustawiłem speed 1.25 ;)). Jedynie przeszkadza, że gadająca głowa jest głośniej niż relacja z InteliiJ, ale bez tragedii.

    • @JakNauczycSieProgramowania
      @JakNauczycSieProgramowania  3 года назад +1

      Dzięki za uwagę o różnicach w głośności! Staram się to zawsze ogarnąć, ale nie jest jeszcze idealnie :) I cieszę się, że podoba Ci się film :D Nie wiem czy miałeś już okazję przejrzeć inne filmy dotyczące Javy na kanale, ale jeżeli nie, to zachęcam do sprawdzenia playlisty: ruclips.net/p/PLp9WLfHXxbceqs8TV8vGgpnRHihJX0yd-

  • @ThePiko69
    @ThePiko69 3 года назад

    super wyjasnienie i uzupełnienie

  • @palkarz85
    @palkarz85 8 месяцев назад

    Rewelacja, świetnie tłumaczone. 3 godziny zleciało bardzo szybko. Miałem kilka błędów ale udało mi się je samemu ogarnąć, chociaż bardzo się pogubiłem w tym wszystkim, ale to chyba normalne u początkujących :).

  • @dawidjakubowski8286
    @dawidjakubowski8286 Год назад

    Super, dzięki za tą lekcje. Już myślałem, ze się poddam, ale ożywiłeś moje zainteresowanie Javą. :)

  • @psodus
    @psodus 3 года назад +1

    Dzięki Tobie dużo więcej i szybciej zrozumiałem tematykę i metodologię OOP niż przerabiając kurs Buchalki na Udemy. Zajebiście to wyjaśniłeś, pozdro! :)

  • @tgkubus
    @tgkubus 3 года назад

    No i jest ten wspaniały film. Coś pięknego.

  • @extr3m0
    @extr3m0 3 года назад

    Dzięki, bardzo mi pomogłeś 😄

  • @lauralanthalasa7
    @lauralanthalasa7 3 года назад +1

    Miesiąc temu nie zrozumiałam z tego filmu prawie nic, dzisiaj nawet to ogarniam. Wrócę tu za miesiąc sprawdzić moje postępy 😄

    • @JakNauczycSieProgramowania
      @JakNauczycSieProgramowania  2 года назад

      Mega, tak to właśnie działa w programowaniu! :) Daj znać niedługo jak dalsze postępy!

  • @kacper-bm5ur
    @kacper-bm5ur 2 года назад

    Fajnie wytłumaczone.

  • @Wooldorf
    @Wooldorf 2 года назад +1

    Masz talent !

  • @filipgrzelak7528
    @filipgrzelak7528 3 года назад

    Dzięki wielkie za ten film !!!

  • @ABCinwestowania
    @ABCinwestowania 2 года назад

    2 kursy na udemy z obiektowania i nie mogłem ogarnąć o co w tym chodzi, twój film w 20 minut wyjaśnił mi podstawy na przykładzie garnka jprd :D

  • @marcinzale
    @marcinzale 3 года назад

    Świetny tutorial! Wszystko bardzo dobrze wytłumaczone! Dzięki!

  • @NeverLucky99
    @NeverLucky99 Год назад

    Jestem zupełnie nowy w tej dziedzinie i uczę się na własną rękę (próba przebranżowienia). Z czystym sumieniem mogę stwierdzić, że ten ten kanał jest prowadzony przez fachowca, który z niebywałą lekkością przekazuje wiedzę w sposób zrozumiały i praktyczny. Dziękuję Ci, że dajesz możliwość ludziom takim jak ja rozwijać się w tym zawodzie

    • @rafalmalinowski1716
      @rafalmalinowski1716 Год назад

      zgodze sie, z polskich kanalow najlepszy i lepszy od wielu angielsko i niemiecko jezycznych z jakich ja sie ucze

  • @Skidam
    @Skidam 2 года назад

    Super materiał dzk

  • @zunzelish789
    @zunzelish789 3 года назад

    Super

  • @frycstyle3967
    @frycstyle3967 Год назад

    Mam doświadczeni w kursach na Udemy i przyznam szczerze, że nie trafiłem jeszcze na taki w, którym ktoś tak konkretnie i precyzyjnie tłumaczy na czym polega OOP. Nie wyobrażam sobie znalezienie lepszej darmowej lekcji o programowaniu obiektowym, oglądam ten film już któryś raz i z biegiem czasu jak moje umiejętności rosną to ten film jest dla mnie coraz bardziej wartościowy. Świetna robota i szanuje za dzielenie się taką praktyczną wiedzą za darmo.

    • @andrzej21111
      @andrzej21111 Год назад

      Zawsze warto zaczynać od darmowych kursów na YT. Takich podstawowych kursów jak na tym kanale lub innych np. na kanale pasja informatyki.

  • @marcin5237
    @marcin5237 3 года назад

    Materiał super, posiadam podstawy z innych języków, a teraz potrzebna mi Java, sporo skorzystałem, dzięki! Mam tylko małą uwagę, w 2:23:00 nadpisanie metody getName() popsuło wyszukiwanie plików typu MP3MusicFile w klasach HDDDrive i SSDDrive.

    • @JakNauczycSieProgramowania
      @JakNauczycSieProgramowania  3 года назад

      A faktycznie, bo w metodach findFile wyszukujemy po nazwie, a teraz getName w MP3MusicFile nie zwraca nazwy tylko tekst "Dla plików MP3 getName nie działa" :) Przy okazji znalazłem jeszcze jeden błąd - w metodzie addFile w klasie SSDDrive robimy files.put(file.toString() , file), a powinniśmy robić files.put(file.getName() , file) :)
      Dzięki za czujność!

  • @andrzej7530
    @andrzej7530 2 года назад

    (Array [erej]) Swietny film bardzo pomocny

  • @kejeszankejeszan4071
    @kejeszankejeszan4071 3 года назад

    Powiedziałeś, że za chwilę opowiesz o enumach i widocznie zapomniałeś szkoda, bo świetnie tłumaczysz. Dziękuje za materiał :>

  • @dassasasmasasasas184
    @dassasasmasasasas184 2 года назад

    Dzieki

  • @andrzejekpl3521
    @andrzejekpl3521 3 года назад +4

    Szacunek Kamil! :D

  • @CheatBot
    @CheatBot 3 года назад

    Kawał dobrej roboty :)

  • @zmyslowy27
    @zmyslowy27 3 года назад

    Blisko 3h jestem pod wrażeniem. Kawał dobrej roboty, szacun.

    • @JakNauczycSieProgramowania
      @JakNauczycSieProgramowania  3 года назад +1

      Trochę pracy mnie to kosztowało, ale było warto!

    • @zmyslowy27
      @zmyslowy27 3 года назад

      @@JakNauczycSieProgramowania myślę że napewno. Wszystkie filmy które oglądałem na kanale trzymają poziom i dużo tłumaczą. Oby tak dalej.

  • @ziomiwanv2
    @ziomiwanv2 2 года назад

    Dziękuje Ci za ten film! Przed chwilą skończyłem pierwszą rozmowę kwalifikacyjna i zostałem zapytany praktycznie o wszystko, co usłyszałem w tym filmie!

    • @JakNauczycSieProgramowania
      @JakNauczycSieProgramowania  2 года назад

      Ooo mega gratulacje! A o co Cię pytali?

    • @ziomiwanv2
      @ziomiwanv2 2 года назад

      @@JakNauczycSieProgramowania pytań teoretycznych było dosyć sporo, z tych co pamiętam to: jak działa dziedziczenie w javie, różnice pomiędzy klasa abstrakcyjną a interfejsem, różnice pomiędzy method overloading a overriding, czym jest enkapsulacja, modyfikatory dostepu, keyword super.

  • @s_cuzz
    @s_cuzz 2 года назад

    Dzieki za darmowa wiedze,przyklad tego garnka jest swietny! Chcialbym tworzyc skomplikowane mechaniki w grach i widze jaki potencjal drzemie w programowaniu ;d

    • @JakNauczycSieProgramowania
      @JakNauczycSieProgramowania  2 года назад

      Programowanie to piękna sprawa, możesz z nim osiągnąć praktycznie wszystko, ogranicza Cię tylko wyobraźnia:)

  • @piotrwardecki9075
    @piotrwardecki9075 6 месяцев назад

    Dziedziczenie wytłumaczone na podstawie odkurzacza genialne :D

  • @pawecorporation9677
    @pawecorporation9677 3 года назад +1

    Więcej tego z JAVY !!!!!

  • @matimozg
    @matimozg Год назад

    Nie No stary 21 minuta ale duży progres od poprzedniego filmu z Javy na tej playliscie. Aż miło się uczyć

  • @daronieogarniaro
    @daronieogarniaro 2 года назад +1

    Ten człowiek to złoto na polskim RUclips ❤️

  • @kosmoXcX
    @kosmoXcX 3 года назад

    Jesteś The Best :)

  • @naczozombi7870
    @naczozombi7870 Год назад

    Dziękuje. Dzięki Panu zrozumiałem OOP :D

  • @wojtekbiegusiewicz2784
    @wojtekbiegusiewicz2784 3 года назад

    Super

  • @ayoxen4031
    @ayoxen4031 3 года назад

    Ogląda się na tyle przyjemnie że robię sobie 5 godzinne maratony twoich filmów

  • @mihau87pl
    @mihau87pl 3 года назад

    Obiecuje obejrzeć i zrozumieć 😁 oby zrozumieć chodź tyle 🤏

    • @JakNauczycSieProgramowania
      @JakNauczycSieProgramowania  3 года назад +1

      Obejrzyj sobie na spokojnie, przećwicz całość na spokojnie, poeksperymentuj z projektem, a potem staraj się go odtworzyć samemu :) Zobaczysz, czego jeszcze nie rozumiesz, co jest niejasne i w ten sposób bardzo szybko nauczysz się wszystkich tych konceptów, o których w tym odcinku opowiadam :)

  • @szyszak9424
    @szyszak9424 3 года назад

    dobrze tłumaczysz

  • @jupik3542
    @jupik3542 8 месяцев назад

    Obym dzięki temu zdała kolosa 🙏🙏🙏, dzięki za wytłumaczenie

  • @milmabeer
    @milmabeer 3 года назад

    Filmik super, jak zresztą cały content na kanale. Jedna rzecz mnie tylko zastanowiła w kwestii konwencji nazewniczej dla pól static. Nie spotkałem się z tym, że nazwy pól statycznych piszemy dużymi literami, zdawało mi się, że ta konwencja dotyczy wyłącznie pól z modyfikatorami static final. (02:34.40)

    • @JakNauczycSieProgramowania
      @JakNauczycSieProgramowania  3 года назад

      Oczywiście masz rację, ta konwencja (nie tylko w Javie, ale również w wielu innych językach) dotyczy stałych czyli w przypadku Javy są to pola static final.
      Mój błąd, że przy MAX_HEIGHT nie dodałem modyfikatora final, to zdecydowanie powinna być stała!

  • @papazedyt4846
    @papazedyt4846 3 года назад

    Świetny materiał - wielki szacun. Ale, że nie powiedziałeś o tym: forEach(System.out::println); wcześniej :) Przecież to o niebo łatwiejsze ;)

  • @dtd5234
    @dtd5234 3 года назад

    Świetny film jeszcze lepsza muza :-)

  • @RaceDriverF1
    @RaceDriverF1 3 года назад

    2:25:04 - najpierw ctrl + n, a następnie ctrl + F12 (inherited members) ;)

  • @kubaabendowicz229
    @kubaabendowicz229 3 года назад

    Akurat w tym semestrze mam podstawy Javy, większość materiału jest.
    Jakby jeszcze kolejne tematy były to by było super :)
    Lab1. Wprowadzenie - zapoznanie z IDE, tworzenie prostych programów.
    Lab2. Składnia języka, instrukcje sterujące, typy danych, klasy, metody, obiekty.
    Lab3. Tworzenie aplikacji obiektowych do przetwarzania tekstu.
    Lab4. Tworzenie aplikacji obiektowych wykorzystujących funkcje matematyczne.
    Lab5. Programowanie obiektowe z wykorzystaniem dziedziczenia i interfejsów.
    Lab6. Obsługa wyjątków.
    Lab7. Wykorzystanie kolekcji.
    Lab8. Wyrażenia lambda w języku Java.
    Lab9. Operacje wejścia - wyjścia, obsługa plików.
    Lab10 Współbieżność w języku Java.
    Lab11. Tworzenie aplikacji z graficznym interfejsem użytkownika z obsługą zdarzeń.
    Lab12. Tworzenie aplikacji do komunikacji sieciowej.
    Lab13. Tworzenie aplikacji do obsługi bazy danych.

    • @JakNauczycSieProgramowania
      @JakNauczycSieProgramowania  3 года назад

      Część z tych tematów poruszałem, część na pewno jeszcze się pojawi, sprawdź playlistę z filmami dotyczącycymi Javy: ruclips.net/p/PLp9WLfHXxbceqs8TV8vGgpnRHihJX0yd-
      I wpadaj regularnie na kanał :)

  • @BoxOfOpinions
    @BoxOfOpinions Год назад

    Wracam sobie to tego filmu co jakiś czas bo jest to ogromna piguła wiedzy, w dodatku bardzo przejrzyście podana. Naprawdę świetny film. Mam tylko jedno pytanie co do zawartości:
    W geterach czasami zwracasz wartość ze słowem this a czasami bez. Od czego to zależy?

    • @JakNauczycSieProgramowania
      @JakNauczycSieProgramowania  Год назад

      To tylko moja niekonsekwencja, w przypadku getterów this jest opcjonalne, możesz je dodać, ale nie musisz :)

  • @nowyty556
    @nowyty556 3 года назад +1

    Super materiał, genialnie zrobiony, przemyślany.
    Pytanie: Zrobiłbyś odcinek związany z procesem myślenia nad zadaniem którego nie umiemy rozwiązać? Jak się zabrać do rzeczy które są trudne? Często się zdarza, że myślimy parę godzin nad rozwiązaniem i nic z tego nie wychodzi (kręcimy się w kółko) Jest jakiś proces, który efektywniej pozwoliłby rozwiązać problem? Jak zabrać się do skomplikowanych algorytmów? Co zrobić kiedy już nie mamy pojęcia jak coś rozwiązać?

    • @JakNauczycSieProgramowania
      @JakNauczycSieProgramowania  3 года назад

      Pomyślę nad takim odcinkiem :) Trochę tego typu proces pokazywałem tutaj: ruclips.net/video/T9UtiKT5AnE/видео.html ale nie były to takie problemy, nad którymi musiałbym siedzieć godzinami. Raczej nieznajomość technologii i zadawanie odpowiednich pytań, żeby dowiedzieć się jak daną rzecz można zrobić.
      To o czym piszesz to trochę bardziej skomplikowana kwestia, muszę to dobrze przemyśleć i postaram się podzielić swoimi doświadczeniami i wskazówkami :)

    • @nowyty556
      @nowyty556 3 года назад

      @@JakNauczycSieProgramowania super czekam na odcinek bo wydaje mi się że to częsty problem

  • @mateuszjagielski4599
    @mateuszjagielski4599 3 года назад

    Bardzo mi się podoba styl w jaki przekazujesz wiedzę, częściowo potoczny i profesjonalny. Miło się tego słucha i bardzo dużo rozumiem, jednak zauważyłem (na 2 filmach podstawy i obiektowe), że zaczynam się gubic na ostatnich częściach projektowych. Zaczynasz tam dosyć szybko wdrażać nowe rozwiązania i terminy których nie do końca rozumiem. Wyprzedzasz fakty np. Tutaj zacząłeś robić pełno metod które w projekcie które przydadzą się później i skaczesz, przez co się gubię. Jeśli chciałbyś jeszcze polepszyć jakość kanału skup się na kolejności logicznej i doprowadzaniu metod do końca. Wolę jak odpiszesz coś później niż na zapas. Czasem też stosujesz metodę w której specjalnie popelniasz błąd żeby potem go na0rawiasz i tlukaczysz dlaczego. Super mi się to podoba ale czasami mowisz z góry że to błąd przez co od razu człowiek się zamyka na tą wiedzę.
    Tak czy inaczej jesteś ponad innych mentorow na YT, po prostu nie chce slodzic tak jak reszta na dole ;) Wolę dać feedback

    • @JakNauczycSieProgramowania
      @JakNauczycSieProgramowania  3 года назад

      Dzięki Mateusz, to specjalne popełnianie błędu i jego późniejsze naprawianie jest właśnie po to, żeby uniknąć tych dużych przeskoków, o których piszesz. Wychodzę z założenia, że przedstawienie jedynie właściwego rozwiązania i stwierdzenie "macie robić tak i tak, bo inne podejście jest złe" niewiele uczy. Ktoś doświadczony będzie wiedział, dlaczego jedno rozwiązanie jest ok, a drugie nie, ale osoba początkująca będzie zagubiona. Nie zrozumie tego w wystarczającym stopniu i pewnie też tego właściwego podejścia nie zapamięta. Dlatego tak istotne jest napisanie kodu w taki sposób, w jaki prawdopodobnie napisałaby to osoba początkująca, a następnie wskazanie problemu, który z tak napisanym kodem się wiąże. Wtedy mamy już odpowiedni kontekst, widzimy niedoskonałość naszego rozwiązania i zastanawiamy się, jak możemy zrobić to lepiej. Na to wprowadzanie zbyt dużej ilości metod zwrócę uwagę, postaram się w przyszłych filmach faktycznie robić tylko to, co jest potrzebne na obecną chwilę. To bardzo dobra uwaga!
      Jeszcze raz dzięki i pozdrawiam!

    • @mateuszjagielski4599
      @mateuszjagielski4599 3 года назад

      @@JakNauczycSieProgramowania Dzięki! Ułatwi mi to naukę, bo wolę Ciebie niż książke która dostalem

  • @tytusgierycz5563
    @tytusgierycz5563 3 года назад +1

    Jea fajny materiał przerobiłem Kod. W pewnym momencie aż złapałem się za głowę ile tu klas jak to wszystko ogarnąć. Jak się ułożyło doszło że właśnie o to chodzi.

    • @JakNauczycSieProgramowania
      @JakNauczycSieProgramowania  3 года назад

      Super! Tak właśnie powinno być - na początku poszczególne klocki mogą wydawać się oderwane od całości, ale z czasem wszystko zaczyna się układać i nabierać coraz większego sensu :)

  • @jankowlaski8721
    @jankowlaski8721 3 года назад

    Odcinek rewelacja, tak samo jak przykładowa muzyka! Cool kidsów i Mansona nie słuchałem od lat. Sprawdziłem ten nowy album króla mroku i faktycznie dobry. Podwójne dzięki Kamil!

    • @JakNauczycSieProgramowania
      @JakNauczycSieProgramowania  3 года назад

      Dla mnie najlepszy album od czasu Holy Wood! Od premiery słucham praktycznie codziennie :)

  • @aleksliniewicz796
    @aleksliniewicz796 Год назад

    Kamil, siwetnie kurs przeprowadzony i wytlumaczony w bardzo jasny i zrozumialy sposob.
    Naprawde zrobiles kawal solidnej roboty.
    Czy moglbys rowniez polecic sensowne zrodlo zadan do wykonania (z rozwiazanym kodem) , ktore dobrze byloby wykonac po kursie?

  • @P1C3EK
    @P1C3EK 3 года назад

    Super robota :) może teraz coś o wzorcach projektowych ?

  • @JakNauczycSieProgramowania
    @JakNauczycSieProgramowania  Год назад +1

    🔥 Sprawdź kurs Java od podstaw - od zera do Junior Developera: javaodpodstaw.pl/ 🔥
    🔥 Roadmapa programisty - Czego, kiedy i dlaczego się uczyć, żeby zostać programistą: roadmapaprogramisty.pl/
    🔥 Programista dzisiaj - Sprawdzone źródła do nauki dla początkujących programistów: programistadzisiaj.pl/
    🔥 Kurs Git od podstaw: gitodpodstaw.pl/
    🔥 Platforma Programuj od podstaw: programujodpodstaw.pl/
    Pobierz bezpłatnego ebooka "Jak zostać programistą - krok po kroku": www.jaknauczycsieprogramowania.pl/#ebook
    Dołącz też tutaj:
    DISCORD: www.jaknauczycsieprogramowania.pl/discord
    INSTAGRAM: instagram.com/jaknauczycsieprogramowania/
    FACEBOOK (GRUPA): facebook.com/groups/jaknauczycsieprogramowania
    FACEBOOK (STRONA): facebook.com/jaknauczycsieprogramowania
    ✉ Współpraca: marketing@jaknauczycsieprogramowania.pl

    • @mirekmichalski5299
      @mirekmichalski5299 Год назад

      Kurcze jak na początek nie zawsze ogarniam skróty klawiaturowe a to początek, to tego Java to już kilka wersji w górę jak i sam program do pisania. Jak to ogarnąć ? A mój początek to z tym kanałem.

  • @pawetomala9327
    @pawetomala9327 Год назад

    Jak jusz mniej więcej rozumiem wszystko co sie w tym filmie dzieje w szystkie zagadnienia to co mam dalej robić? jak sie dalej rozwijać?

  • @_I_like_kebeb
    @_I_like_kebeb Год назад

    moja wiedza jest zbyt mała aby dużo zrozumieć z tego filmu, mialem też kilka błędów których nie mogłem znaleźć bo gubiłem się i nie nadążałem za tobą ale w 0.75x nadążam i jakoś daje rade

  • @michciok92
    @michciok92 2 года назад

    Cześć Kamil, mam mały problem ze zrozumieniem kiedy używamy odniesienia do pola klasy za pomocą this.zmienna a kiedy samego zmienna, jasne jest jak to działa w konstruktorze, ale co z innymi metodami w danej klasie, na przykład w metodzie z kupnem alkoholu, sprawdzając wiek nie powinniśmy się odnosić do pola klasy? this.wiek>=18 zamiast wiek>=18

    • @JakNauczycSieProgramowania
      @JakNauczycSieProgramowania  2 года назад +3

      Jeżeli ustawiamy pole w konstruktorze i nazwa argumentu jest taka sama jak nazwa pola w klasie, musimy użyć this, żeby kompilator wiedział, że wartość argumentu musi przypisać do pola w klasie.
      Mając taki konstruktor:
      Person(int age) {
      age = age
      }
      przekazalibyśmy argument age i jego wartość przypisali do samego siebie, co nie miałoby sensu. Dlatego dodajemy this, żeby kompilator wiedział, że przekazujemy argument o nazwie age, ale jego wartość przypisujemy do pola w klasie.
      Podobnie gdy mamy setter w klasie, np.
      void setAge(int age) {
      this.age = age;
      }
      Musimy dodać this, żeby kompilator wiedział, że chodzi o pole klasy, a nie argument metody setAge.
      W innych przypadkach - gdy mamy inne metody, do których nie przekazujemy argumentów o takich samych nazwach jak pola klasy, możemy użyć this lub nie. To zależy już od tego jaką konwencję przyjmiemy, bo obie opcje będą działać.

  • @januszkuznik137
    @januszkuznik137 8 месяцев назад

    Cześć Kamil, mam pytanie co 2:16:30
    Czy losowa kolejność wyświetlania plików za pomocą drive.listFiles(); w stosunku do kolejności dodawania plików drive.addFile(); to błąd czy norma? Pytam bo u mnie wyświetla jeszcze w innej kolejności, a dodając więcej plików różnego typu ta kolejność się zmienia.
    Świetny materiał! Gratulacje i pozdrawiam

    • @JakNauczycSieProgramowania
      @JakNauczycSieProgramowania  8 месяцев назад +1

      Cześć! Tak, to właściwe zachowanie, ponieważ HashMap nie przechowuje informacji o kolejności dodawanych obiektów. Jeżeli chcesz, żeby obiekty miały określone miejsce w strukturze, powinieneś skorzystać z ArrayListy, a jeżeli potrzebujesz mapy z uporządkowanymi elementami, możesz skorzystać z OrderedMap z biblioteki Apache Commons: www.baeldung.com/apache-commons-ordered-map
      Zazwyczaj jednak jeżeli korzystasz z mapy, to interesuje Cię tylko pobieranie wartości po kluczu, tak więc nie ma dla Ciebie znaczenia jak to zostało ułożone pod spodem:)
      Dzięki i pozdrawiam!

    • @januszkuznik137
      @januszkuznik137 8 месяцев назад

      Dzięki za błyskawiczną odpowiedź :)@@JakNauczycSieProgramowania

  • @pirat19full
    @pirat19full 3 года назад

    Mam pytanie. Czemu jakbym dopisal do klasy garnek (30:15) public static void main(String[] args) to potem w klasie main nie moglbym wyswietlic i korzystac z metod klasy garnek?

    • @JakNauczycSieProgramowania
      @JakNauczycSieProgramowania  3 года назад +1

      Możliwe, że w konfiguracji projektu nie podałeś, która klasa zawierająca metodę main jest Twoją główną klasę i IntelliJ nie wie, w jaki sposób wystartować program.
      Jeżeli napiszesz metodę main w klasie Main i uruchomisz program, IntelliJ sam ogarnie, że główną klasą jest Main. I jeżeli teraz napiszesz metodę main w klasie Garnek wszystko dalej będzie działać.
      Natomiast jeżeli napiszesz metodę main w klasie Main, nie uruchomisz program i napiszesz metodę main w klasie Garnek, IntelliJ nie będzie w stanie ogarnąć, która metoda main powinna być pierwszą metodą startującą program.
      W razie wątpliwości wrzuć jeszcze to co robisz na grupę na fb i tam ogarniemy: facebook.com/groups/jaknauczycsieprogramowania

  • @tomi4995
    @tomi4995 3 года назад

    👍🙋

  • @tomaszs5319
    @tomaszs5319 3 года назад

    Super materiał :) kiedy odcinek o tym jak używać debuggera ? Pozdrawiam

    • @JakNauczycSieProgramowania
      @JakNauczycSieProgramowania  3 года назад +1

      Konkretnej daty jeszcze nie jestem w stanie podać, ale mam go cały czas na liście i mam nadzieję, że pojawi się całkiem niedługo :)

  • @Patryk-pz4sw
    @Patryk-pz4sw 3 года назад

    Cześć zauważyłem że u Ciebie po kliknięciu np w GIFImageFile w konstruktorze na super przenosi cię do kodu konstruktora klasy abstrakcyjnej, czy to są jakieś specjalnie ustawienia w IDE? jak można uzyskać taki efekt? Chciałbym bardzo pochwalić Twoją pracę, oglądam sobie filmiki na temat Javy, są bardzo dobrze wykonane. Świetna robota i oby tak dalej.

    • @JakNauczycSieProgramowania
      @JakNauczycSieProgramowania  3 года назад +2

      Siema, zapomniałem o tym powiedzieć! To domyślne ustawienia IntelliJ, kliknij trzymając wciśnięty przycisk Ctrl (analogicznie Cmd na MacOS) i przeniesie Cię do odpowiedniej klasy :) Podobnie działa skrót klawiaturowy Ctrl + B, tylko w tym przypadku kursor musi być w danym miejscu w kodzie.