Helion


Szczegóły kursu video

 
Java. Kurs video. Poziom drugi. Programowanie funkcyjne i współbieżne

Java. Kurs video. Poziom drugi. Programowanie funkcyjne i współbieżne


Obierz kurs na... Javę!

Wśród wielu języków programowania to właśnie Java cieszy się ogromną popularnością. Wiąże się to z jej fantastycznymi możliwościami i niesłychaną elastycznością, pozwalającą na wykorzystywanie tego języka w wielu technologiach: aplikacjach serwerowych, desktopowych i mobilnych. Java to język obiektowy, współbieżny, wykorzystujący klasy... ale o tym, skoro sięgasz po ten kurs, z pewnością doskonale wiesz. Podobnie jak o tym, czego możesz dokonać za pomocą Javy, jeśli tylko opanujesz ją wystarczająco dobrze. W tym właśnie pomoże Ci Java. Kurs video. Poziom drugi. Programowanie funkcyjne i współbieżne.

Autor szkolenia skupia się na przekazaniu praktycznych rozwiązań w zakresie zagadnień funkcyjnych i wielowątkowości. Omawia też kwestie związane z typami generycznymi, wyrażeniami lambda, strumieniami, wątkami oraz mechanizmami do pracy z wielowątkowością z wykorzystaniem głównych elementów języka od wersji 8 do 11. Dowiesz się, jak działają zaawansowane mechanizmy w Javie, i sprawdzisz, co nowego proponują Ci jej twórcy.

Doceń w pełni niezwykłą siłę Javy!

Czego nauczysz się podczas naszego profesjonalnego szkolenia?

  • Poznasz zagadnienia paradygmatu funkcyjnego.
  • Przestudiujesz zagadnienia wielowątkowości.
  • Nauczysz się używać mechanizmu garbage collector (GC).
  • Odkryjesz sposoby zarządzania pamięcią.
  • Zobaczysz, jak używać wyrażeń lambda i funkcji.
  • Sprawdzisz, do czego służą typy generyczne i wątki.
  • Docenisz zalety programowania funkcyjnego, czyniącego język bardziej spójnym i ekspresywnym.

Aby w pełni korzystać z możliwości Javy, musisz poznać najróżniejsze mechanizmy rządzące logiką tego języka. W ramach 52 lekcji składających się na ten ponad 5-godzinny kurs przetestujesz działanie typu wyliczeniowego enum i zobaczysz, jak zastosować serializację. Odkryjesz tajniki typów generycznych. Zobaczysz, jak przebiega programowanie funkcyjne w Javie. Dowiesz się, do czego służą wyrażenia lambda i co to są funkcje wyższego rzędu. Opanujesz obsługę strumieni i stworzysz przykładową aplikację z wykorzystaniem programowania funkcyjnego.

Podczas kolejnych lekcji skupisz się na stosowaniu wątków, a także puli wątków. Zrozumiesz różnicę między wielowątkowością a wielozadaniowością i odkryjesz, czemu tak trudno sensownie zaimplementować ją we własnym projekcie. Nauczysz się synchronizować różne wątki oraz łączyć ich wyniki. Zaczniesz też używać obiektów Future i posługiwać się bezpiecznymi dla wątków strukturami danych. Miłym akcentem na koniec kursu jest analiza ostatnich zmian w języku, jakie zaszły w jego czterech najnowszych wersjach.

Java w wątki wpleciona

Wykorzystanie współbieżności i wielozadaniowości podczas projektowania aplikacji pozwala zaoszczędzić mnóstwo czasu i zasobów systemowych, tyle że zapewnienie prawidłowego działania takiej aplikacji wcale nie jest proste. Autor szkolenia Java. Kurs video. Poziom drugi. Programowanie funkcyjne i współbieżne wie o tym doskonale, dlatego sporo czasu poświęca na wyjaśnienie działania wątków i procesów w Javie. Pokazuje, jak tworzyć równoległe wątki wykonywane w ramach procesu, jak je ze sobą łączyć i jak doprowadzić do fuzji ich wyników. Przypomina, że wątki współdzielą przestrzeń adresową oraz inne elementy dostępne w procesie, na przykład listy otwartych plików. Omawia także problemy związane z wielozadaniowością, czyli równoczesnym wykonywaniem więcej niż jednego procesu (programu) w systemie operacyjnym.

Kawa na Javę

Jasność i klarowność wywodu jest cechą niezwykle ważną przy tłumaczeniu zaawansowanych, niełatwych zagadnień. Jeśli chcesz osiągnąć poziom profesjonalnego developera Javy, ten kurs jest wręcz niezbędny jako etap pośredni w zdobywaniu szlifów. Słynna elastyczność Javy jest jej wielką zaletą, ale bez dobrego przewodnika łatwo zgubić się w ogromie możliwości. Autor tego szkolenia podpowie Ci, jak najlepiej wykorzystać Javę w konkretnych sytuacjach. Zobaczysz, jak wycisnąć z niej wszystko, co się da, a jednocześnie zapewnić stabilność Twojej aplikacji. Sprawdzisz, jak w praktyce działają różne mechanizmy, i przekonasz się, jak inteligentnie używać programowania funkcyjnego.

Java. Kurs video. Poziom drugi. Programowanie funkcyjne i współbieżne oferuje Ci niecodzienną pomoc w codziennej pracy z Javą!

Tylko dla wtajemniczonych

Aktualne zarobki programistów Javy w Polsce kształtują się na poziomie od 6,5 tysiąca do ponad 10 tysięcy złotych miesięcznie (dane Ogólnopolskiego Badania Wynagrodzeń z lutego 2019). To stawki nie do pogardzenia, ale i tak ważniejsza jest satysfakcja z dobrze wykonanej pracy. Jeśli chcesz tworzyć aplikacje, które działają w różnych systemach i przy różnych architekturach, dają się łatwo przenosić i są fantastycznie funkcjonalne, pora porządnie zapoznać się z Javą.

Java. Kurs video. Poziom drugi. Programowanie funkcyjne i współbieżne może być Twoją przepustką do świata profesjonalistów Javy!

„Nie przewiduj przyszłości — twórz ją!”

Michał Szczepanik

  • 1. Wprowadzenie
    • 1.1. Wprowadzenie do kursu00:02:37
    • 1.2. Wprowadzenie do programowania funkcyjnego00:03:47
    • 1.3. Wprowadzenie do wątków00:05:00
  • 2. Uzupełnienie poprzedniej części kursu
    • 2.1. Enum - wprowadzenie00:03:48
    • 2.2. Enum - zastosowanie00:08:04
    • 2.3. Serializacja00:04:13
    • 2.4. Zapis i odczyt danych do plików00:06:44
    • 2.5. Zarządzanie pamięcią w Javie00:12:13
    • 2.6. Rozmiar obiektów00:05:49
    • 2.7. Typy generyczne - teoria00:04:19
    • 2.8. Typy generyczne - praktyka00:04:43
  • 3. Interfejsy
    • 3.1. Przypomnienie00:04:08
    • 3.2. Metody statyczne, domyślne i prywatne00:09:58
    • 3.3. Rozstrzyganie konfliktów metod domyślnych00:05:39
  • 4. Programowanie funkcyjne
    • 4.1. Programowanie funkcyjne - wprowadzenie00:07:28
    • 4.2. Java a języki typowo funkcyjne00:14:26
    • 4.3. Wyrażenia lambda - wprowadzenie00:04:15
  • 5. Wyrażenia lambda
    • 5.1. Składnia00:06:54
    • 5.2. Interfejsy funkcyjne00:05:38
    • 5.3. Implementacja odroczonego wykonania00:05:01
    • 5.4. Widoczność00:05:00
    • 5.5. Funkcje wyższego rzędu00:05:20
    • 5.6. Dobre praktyki00:05:20
  • 6. Strumienie
    • 6.1. Strumienie - wprowadzenie00:06:53
    • 6.2. Tworzenie strumieni00:05:22
    • 6.3. Funkcje pośredniczące00:07:57
    • 6.4. Przetwarzanie sekwencyjne i równoległe00:02:51
    • 6.5. Łączenie strumieni00:04:51
    • 6.6. Dobre praktyki00:05:35
    • 6.7. Podsumowanie00:05:41
  • 7. Programowanie funkcyjne
    • 7.1. Aplikacja przykładowa00:11:42
  • 8. Wątki - wprowadzenie
    • 8.1. Wielowątkowość a wielozadaniowość00:11:23
    • 8.2. Czemu wielowątkowość jest trudna00:04:02
    • 8.3. Wątki w Javie00:07:33
    • 8.4. Sekcja krytyczna00:05:09
    • 8.5. Problem 5 filozofów00:10:53
    • 8.6. Użycie synchronized00:05:10
    • 8.7. Producent i konsument00:04:33
    • 8.8. Pozorna niezależność00:06:25
    • 8.9. Podsumowanie00:03:18
  • 9. Wątki - Java concurrent
    • 9.1. Przegląd rozwiązań00:03:50
    • 9.2. Executors00:09:20
    • 9.3. Obiekty Future00:05:20
    • 9.4. CompletableFuture00:04:16
    • 9.5. Łączenie wyników z wątków00:02:15
    • 9.6. Struktury danych bezpieczne dla wątków oraz kolejki00:03:36
    • 9.7. Atomowe liczniki i akumulatory00:06:52
    • 9.8. Blokady i semafory00:10:43
  • 10. Java i kluczowe zmiany w jej ostatnich wersjach
    • 10.1. Java 900:11:30
    • 10.2. Java 1000:02:43
    • 10.3. Java 1100:06:05
    • 10.4. Przyszłość Javy00:05:08
    • 10.5. Podsumowanie00:06:06