Wydajność w języku Java

LICZBA DNI: 5 (40h)

KOD KURSU: J/ADV

POZIOM SZKOLENIA:

# performance

# java

Najbliższy termin:

2 sierpnia 2021

PROWADZI:

Michał Podbielski

4300 PLN netto + 23% VAT

4000 PLN netto + 23% VAT

Skorzystaj z promocyjnej ceny!

Jeszcze 8 miejsc w tej cenie.

  • stacjonarne
  • zdalne

STACJONARNE

W CENIE

  • 5 dni pracy z trenerem
  • Materiały szkoleniowe
  • Lunch
  • Certyfikat ukończenia szkolenia

ZDALNE

W CENIE

  • 5 dni pracy z trenerem na żywo online
  • Materiały szkoleniowe
  • Certyfikat ukończenia szkolenia

Czy wiesz, że możesz uzyskać nawet do 100% DOFINANSOWANIA na szkolenie? Napisz do nas »

Oferta dla firm

Dostosuj zakres, czas i miejsce szkolenia do potrzeb Twojego zespołu. Uzyskaj indywidualną wycenę szkolenia dla grupy.

Weź udział w szkoleniu

Termin

Lokalizacja

Trener

Cena / os

2

sierpnia

Promocja

Warszawa,

Zdalne,

4300 PLN netto 4000 PLN netto
+ 23% VAT

18

października

Warszawa,

Wrocław,

Poznań,

Zdalne,

4300 PLN netto
+ 23% VAT

Termin

2

sierpnia

Promocja

Lokalizacja

Warszawa,

Zdalne,

Trener

Cena / os

4300 PLN netto4000 PLNnetto
+ 23% VAT

Termin

18

października

Lokalizacja

Warszawa,

Wrocław,

Poznań,

Zdalne,

Trener

Cena / os

4300 PLNnetto
+ 23% VAT

Powiadom
o kolejnych terminach

O szkoleniu

DLA KOGO?

Programiści chcący poznać sekrety tworzenia wydajnego programowania w języku Java

WYMAGANIA

Umiejętność programowania w języku Java

ZALETY

Szkolenie skupia się na aspektach wydajnościowych niezależnych od dobranych bibliotek, kontenerów czy frameworków, dzięki czemu poznana wiedza i zdobyte doświadczenie można wykorzystać w dowolnych aplikacjach Java

Kameralne grupy - szkolenia technologiczne prowadzimy w grupach liczących do 8 osób. Pozwala to na indywidualne podejście oraz aktywizację każdego uczestnika

Praktyka przed teorią - wszystkie szkolenia technologiczne prowadzone są w formie warsztatowej. Konieczna teoria jest wyjaśniana na przykładzie praktycznych zadań

Konkretne umiejętności - w ramach każdego szkolenia rozwijamy praktyczne umiejętności związane z daną technologią i tematyką

Nauka z praktykami - wszyscy trenerzy na co dzień pracują w projektach, gwarantuje to dostęp do eksperckiej wiedzy i praktycznego know-how

Cele szkolenia

Obycie się z praktykami tworzenia wydajnego oprogramowania w Java

Badanie wydajności z użyciem benchmarków

Wykorzystanie narzędzi do profilowania i monitorowania

Tuningowanie JVM (w tym Garbage Collector)

Program

  • Różne wymiary wydajności
  • Proces tworzenia wydajnego oprogramowania
  • Co wpływa na wydajność w Javie
  • Problemy ze zwiększaniem wydajności
  • Micro i macrobenchmarking
  • Profilowanie aplikacji
  • Przegląd narzędzi do profilowania i monitorowania
  • Użycie wybranych narzędzi (JConsole, VisualVM, JMC, MAT)
  • Strumienie - jak zepsuć i jak naprawić
  • Swobodny dostęp i inne sztuczki
  • Kanały i bufory (NIO)
  • Odwzorowywanie plików w pamięci (NIO)
  • Optymalizacja Serializacji
  • Przegląd funkcjonalny NIO2
  • Przegląd rozwiązań dla XML
  • Złożoność obliczeniowa
  • Sztuka doboru rozwiązania
  • Rekurencja a iteracja
  • Nie tylko algorytm się liczy
  • API kolekcji z wysoka
  • Porównanie, dobór, konfiguracja i poprawne użycie: zbiorów, list, kolejek, map
  • Stare kontenery, czyli czego i czemu unikać
  • Widoki kolekcji
  • Klasa pomocnicza Collections
  • Przegląd kolekcji wielowątkowych (java.util.concurrent)
  • Tablice - wady i zalety
  • Klasa pomocnicza Arrays
  • Kolekcje na typach prostych - przegląd bibliotek
  • Wstęp do JMH
  • Tworzenie benchmarków
  • Uruchomienie i wyniki
  • Konfiguracja benchmarków
  • Wsparcie wielowątkowości
  • Benchmarki parametryzowalne
  • Blackhole i poprawne pętle
  • Pułapki, profilery i inne tematy zaawansowane
  • Jak działa odśmiecanie pamięci
  • Co gwarantuje Garbage Collector?
  • Cykl życia obiektu
  • Referencje soft, weak i phantom
  • Wycieki pamięci w Javie - powody i unikanie
  • Złe praktyki przy Garbage Collector
  • Ograniczanie zajętości pamięci
  • Słaba teoria generacji, czyli skąd minor i major collections
  • Obszary pamięci: young, eden, survival spaces, old/tenured, metaspace
  • Opcje podglądu GC
  • Rodzaje GC: Serial, Parallel, Concurrent, G1, ZGC, Epsilon, Shenandoah
  • Wybór, działanie i tuning GC
  • Zing jako płatna alternatywa bez pauz
  • Podstawowe tryby pracy a wydajność
  • Parametry tuningowania JVM
  • Przegląd wybranych macrobenchmarków: JBB2015, VolanoMark
  • Usprawnienia w Java
  • Kłopoty z optymalizacją serwerów
  • Przegląd przydatnych narzędzi i bibliotek
  • HttpUnit, JWebUnit, Grinder, Apache JMeter
  • Pokaz możliwości Apache JMeter
  • Optymalizacje kompilatora a microbenchmark
  • Microbenchmark a GC
  • Uruchamianie wielu aplikacji
  • Przyzwyczajenia programistów
  • Optymalizacja za kompilator
  • Przedwczesna optymalizacja
  • Antywzorze związane z wydajnością

Autor szkolenia:

Michał Podbielski

Pierwsze kroki w programowaniu stawiał w podstawówce, jeszcze na ZX-Spectrum w języku BASIC, gdzie załapał bakcyla. Od tego momentu podporządkował IT całe swoje życie. Profil informatyczny w szkole średniej, na studiach dyplom z zakresu Inżynierii Oprogramowania zdobyty z oceną celującą i wyróżnieniem. Zawodowo zaczynał od budowy sieci Internetowych, potem rozwijał oprogramowanie w korporacji Siemens. Obecnie sprzedaje własne oprogramowanie, szkoli, zajmuje się konsultingiem i pisze książki fantasy.

Najbliższe szkolenie poprowadzi:

Michał Podbielski

Pierwsze kroki w programowaniu stawiał w podstawówce, jeszcze na ZX-Spectrum w języku BASIC, gdzie załapał bakcyla. Od tego momentu podporządkował IT całe swoje życie. Profil informatyczny w szkole średniej, na studiach dyplom z zakresu Inżynierii Oprogramowania zdobyty z oceną celującą i wyróżnieniem. Zawodowo zaczynał od budowy sieci Internetowych, potem rozwijał oprogramowanie w korporacji Siemens. Obecnie sprzedaje własne oprogramowanie, szkoli, zajmuje się konsultingiem i pisze książki fantasy.

POLITYKA COOKIES:

Korzystamy z plików cookies, by móc jak najlepiej dostosować stronę do Twoich potrzeb oraz wyświetlać Ci przydatne i adekwatnych dla Ciebie reklamy w serwisie i poza nim. Możesz kontrolować ustawienia ciasteczek w swoich ustawieniach swojej przeglądarki. Odwiedzając tę stronę, wyrażasz zgodę na wykorzystywanie przez nas plików cookies.