Petr Nejedlý: Deep dive do světa vývoje v Javě
Rozhovor s expertem a lektorem kurzu Java developer
Java je stále jedním z klíčových jazyků v softwarovém inženýrství. S nástupem nových technologií a metodik vývoje se Java udržuje v popředí díky své robustnosti, všestrannosti a širokému použití. Abychom získali lepší vhled do světa Java vývoje, oslovili jsme Petra Nejedlého, lektora našeho kurzu Java developer, aby nám poskytl své názory a zkušenosti z dlouholeté praxe v programování v Javě.
Petr Nejedlý
Než se pustíme do rozhovoru, pojďme se blíže seznámit s Petrem Nejedlým. Petr má bohaté zkušenosti jako senior software engineer v Komerční Bance a jeho cesta k Java vývoji začala již v roce 2010. Pracoval pro různé renomované společnosti, jako jsou Barclays, Generali a Deutsche Börse, a jeho pracovní zkušenosti zahrnují pozice jako Senior Java Engineer, Team Leader a Hiring Manager. Petr je absolventem ČVUT FEL a své znalosti průběžně rozšiřuje.
Java v praxi
Java je známá svou schopností řešit složité vývojové výzvy a poskytovat stabilní a udržitelné řešení pro různé typy aplikací. Petr Nejedlý nám přiblíží, jak se Java vyvíjela během let a jak se uplatňuje v současných trendech softwarového vývoje. V rozhovoru se zaměříme na klíčové aspekty Java vývoje, včetně objektově orientovaného programování, správy paměti a integrace s moderními frameworky a knihovnami. Tak pojďme na to.
Jak byste popsal vývoj Javy od roku 2010 a kdy jste s ní začal pracovat?
Od roku 2010 prošla Java několika významnými verzemi, které přinesly různé vylepšení a nové funkce. Java 8 byla zvláště významná s přidáním lambda výrazů, Stream API a dalších vylepšení. S Javou jsem začal už na vysoké škole.
Jaké jsou vaše oblíbené funkce v Javě a proč?
Přesto že nemám přímo oblíbené funkce, tak rád zdůraznil přidání stream api a lambda výrazy v Javě 8 a její následují zlepšení v pozdějších verzí.
Jaké jsou problémy s Javou a největší výzvy, kterým jste při práci s ní čelil?
Nemohu přesně říci jaké největší výzvy, které mě potkaly, každé jsou zapeklité v jiné tématice. Ale obecně se dá říci, že mezi výzvy, které každého potkají, a potrápí, je konfigurace pro různá prostředí, ladění, automatický proces nasazování (i když to už zabíháme do DevOps), profiling aplikací a jiné.
Jaké jsou rozdíly mezi Javou a jinými jazyky? Jak si Java stojí v porovnání s programovacími jazyky jako je C, C++ nebo Python?
Každý programovací jazyk byl navrhnut a má svoje uplatnění v nějaké oblasti. Proto nechci zabíhat do porovnávání, který programovací jazyk je “lepší”. Můžeme je porovnávat podle různých kritérii jako je úroveň abstrakce, způsob správy paměti, použití a přenositelnost.
Například jazyk C nabízi nejméně abstrakce od hardwaru a proto je používán pro programování až na HW úrovni. Java nabízí střední až vyšší úrovně abstrakce. A takto bychom mohli pokračovat dál. Co se týká pracovního trhu, tak Java s Pythonem obsazují vrchních pět pozic a jsou následovány právě jazyky C a C++.
Jakou radu byste dal programátorům, kteří s Javou teprve začínají? Jaké má Java výhody pro začátečníky?
Začátečníkům v Javě bych doporučil začít s pochopením základů, jako jsou datové typy, ovládání toku programu a objektově orientovaného programování. Praxe a projekty jsou klíčové pro zdokonalení dovedností. Je to jako se vším. V tomhle případě programovat programovat a programovat.
Jaký je váš názor na roli Javy v umělé inteligenci a strojovém učení?
I když není Java primárním jazykem pro AI a strojové učení, stále se používá pro některé části projektů a má své místo v rozsáhlých korporátních systémech podporujících tyto technologie.
Jaké frameworky a nástroje pro Javu používáte a proč?
Pro vývoj v Javě používám Intellij IDEA. Frameworků pro Javu je celá řada. Nejvíce mainstreamově využívaný je String a celá jeho rodina frameworků.
Co vás stále inspiruje při práci s Javou?
Zdokonalování se. Člověk se má i po letech stále co nového učit, a tak to bude asi navždy. Ať už se jedná o nové knihovny, frameworky, postupy, DevOps zaležitosti, nové projekty a problémy spjaté s doménou konkrétního projektu. Vždy je co nového poznávat. A to mě inspiruje v této práci pokračovat.
Kurz Java Developer
Připoj se k nám v robot_dreams a rozšiř své znalosti a dovednosti v Javě pod vedením Petra Nejedlého. Náš kurz je designován tak, aby vyhovoval potřebám různých skupin zájemců, od úplných začátečníků, přes manuální testery, až po juniorní programátory v jiných jazycích.
Kurz nabízí komplexní přehled o Javě, její syntaxi, základních návrhových vzorech a vývoji aplikací. Budeš se učit, jak psát čistý, efektivní kód, jak řešit běžné programovací výzvy a jak využít Javu pro vytváření robustních a výkonných aplikací. Kurz zahrnuje 22 lekcí s praxí v reálném světě, individuálním přístupem lektora, záznamy z lekcí a učebními materiály.
Absolvováním kurzu získáš:
- Základní i pokročilé znalosti Javy a její aplikace.
- Schopnost efektivně využívat Java pro vývoj aplikací.
- Porozumění objektově orientovanému programování a jeho aplikaci v Javě.
- Praktické dovednosti pro start juniorní pozice v Javě a psaní automatizovaných testů.
Získej cenné dovednosti a znalosti, které posunou tvou IT kariéru na novou úroveň a vstup do světa, kde výkon, bezpečnost a inovace jdou ruku v ruce s kvalitním a dostupným vzděláním.
Autor: Jan Bílek