gyakran kapok e-maileket az olvasóimtól arról, hogyan válhatnak full-stack Java fejlesztővé, milyen dolgokat kell megtanulniuk, és melyik területen dolgozhatnak, hogy Rockstar Java fejlesztővé váljanak.
miután az elmúlt években külön-külön megválaszoltam őket, arra gondoltam, hogy lejegyezek néhány pontot, amelyek szerintem jobb Java programozóvá és Full-stack Alkalmazásfejlesztővé teszik Önt.
de mielőtt belemennék, szeretném hangsúlyozni, hogy a jobb programozó mindig jobb Java fejlesztő, és ezért az összes tipp, amit korábban megosztottam, hogy fejlessze programozási készségeit és jobb programozóvá váljon, továbbra is igaz.
ha még nem olvastad el őket, akkor a cikk után elolvashatod, segítenek javítani a programozási és kódolási készségeidet, ami elengedhetetlen ahhoz, hogy jobb Java fejlesztővé válj.
ez a cikk teljes mértékben a Java fejlesztési perspektívájára összpontosít, és feltételezem, hogy már jó az olyan alapvető dolgokban, mint a kódolás, az adatstruktúrák és algoritmusok, valamint a számítástechnikai fogalmak, például a hálózatépítés, a protokollok, az objektum-orientált programozás stb.
ezek a tippek egyaránt hasznosak mind a Java fejlesztő számára, úgy értem, hogy a Java srácok, akik szerveroldali alkalmazásokat írnak, de nem igazán foglalkoznak olyan webfejlesztési készségekkel, mint a JSP, a Servlet és a JEE, valamint a Java webfejlesztők számára, akiknek elsődleges feladata a Java technológiát használó webes alkalmazások írása, és azok számára, akik 2020-ban teljes értékű Java fejlesztővé akarnak válni.
bár kihagytam néhány webes dolgot, például a JSF vagy a Servlet 4.0 tanulását egy másik napra, hogy ez a lista rövid és egyszerű legyen. Mindenesetre, minden további nélkül, itt van néhány készség, tipp és javaslat, hogy 2020-ban teljes verem Java fejlesztővé váljon.
- 11 készségek szakértővé válni Java programozó
- szoftvertervezés és architektúra
- mikroszolgáltatások
- DevOps eszközök (Jenkins, Docker és Kubernetes)
- Spring Framework (Spring Boot)
- JUnit és Mockito
- Ismerje meg az API-kat és a könyvtárakat
- JVM belső részek
- tervezési minták
- Kotlin
- IDE (Eclipse vagy IntelliJIDEA)
- React or Angular
- mindkettő nagyszerű tanfolyam az Angular és a React with Spring Boot megtanulásához és a full-stack Java fejlesztővé váláshoz.
- Learn Java Better
11 készségek szakértővé válni Java programozó
ha karrierjét szeretné felgyorsítani, és teljes értékű Java programozóvá válik, ezek olyan készségek, amelyekkel megtanulhatja megkülönböztetni magát a többi programozótól.
szoftvertervezés és architektúra
a szoftvertervezés és architektúra vitathatatlanul a szoftverfejlesztési folyamat legfontosabb fázisai. Hogy képes látni a nagy képet, és gondolja át a problémát kéznél, és dönt a megfelelő architektúra és a technológia verem, hogy végre az alkalmazás alapvető készségek minden szoftverfejlesztő, nem csak egy Java fejlesztő.
ha keres, hogy gyorsítsa fel a karrierjét 2020-ban, és szeretné, hogy egy vezető Java fejlesztő cégek keresettek, azt javaslom, tanulni Szoftverarchitektúra. Ha törekszünk, hogy legyen egy megoldás építész, akkor is ez a képesség segít sokat, és megkülönböztetni a többi fejlesztő.
ha szüksége van egy erőforrás, hogy megtanulják az alapvető dolgokat szoftvertervezés és Építészet, akkor azt javaslom, hogy nézd meg a webes alkalmazás & Szoftverarchitektúra 101 természetesen Eductive. Ez egy nagyszerű tanfolyam, hogy megtanulják a különböző építészeti minták, mint a Microservice, kliens-szerver, és elosztott alkalmazások.
hogy őszinte legyek veled, ez a legjobb tanfolyam nemcsak a vezető fejlesztők, hanem minden szoftverfejlesztő számára is, mivel kibővíti a gondolkodási folyamatot, és magabiztosabbá teszi a webfejlesztőt. Van egy jelentős kedvezmény a tanfolyam most, és ez elérhető mindössze $44, eredeti ár $79, ez egy kicsit drága őket Udemy tanfolyamok, de megéri.
másrészt, ha szereted az Educative-t, mint platformot, akkor havi 17 dollárért is vásárolhat előfizetést (50% kedvezmény), nekem van egy, és nagyon ajánlom, hogy szerezzen be.
mikroszolgáltatások
az architektúra folyamatosan változik, és sok vállalat a monolitikus alkalmazásokról a mikroszolgáltatásokra tér át.
itt az ideje, hogy a Java fejlesztők megtanulják a mikroszolgáltatások architektúráját és a mikroszolgáltatások létrehozását Java-ban, hogy kihasználják ezt a legutóbbi hullámot.
szerencsére a Spring keretrendszer biztosítja a Spring Cloud és a Spring Boot szolgáltatást, ami nagyban leegyszerűsíti a Java microservice fejlesztését.
ha tanfolyamot keres, akkor a Spring Boot és a Spring Cloud mester Mikroszolgáltatásokkal jó kezdeni.
és ha inkább könyveket, akkor azt javaslom, hogy ellenőrizze cloud Native Java Josh Long, amely egy átfogó útmutató a fejlődő Java alkalmazások a felhő.
DevOps eszközök (Jenkins, Docker és Kubernetes)
egy modern Java fejlesztő számára a DevOps ismerete elengedhetetlen. Legalább ismernie kell a folyamatos integrációt és a folyamatos telepítést, és azt, hogy Jenkins hogyan segít ennek elérésében.
még fontosabbá válik a senior Java fejlesztők számára, akik gyakran felelősek a kódolási legjobb gyakorlatok beállításáért, környezetek létrehozásáért, szkriptek és iránymutatások készítéséért.
azt is javaslom, hogy töltsön időt és tudjon meg többet a DevOps-ról általában és olyan eszközökről, mint a Docker, az Ansible, a Kubernetes, az AWS stb., valamint a Maven és a Jenkins.
ha valamilyen erőforrásra van szükséged, akkor tanuld meg a DevOps: CI/CD-t Jenkins-szel a Pipelines és a Docker használatával az Udemy-ben valószínűleg a legjobb tanfolyam. Nem csak a CI-ről és a CD-ről, hanem a Mavenről és a Jenkinsről is alaposan megismerheti.
és ha inkább a könyveket részesíti előnyben, akkor azt javaslom, olvassa el a Phoenix projektet: egy regényt róla, DevOps, and Helping Your Business Win, amely átfogó áttekintést nyújt arról, hogy a DevOps és az automatizálás hogyan változtathatja meg a vagyont az üzleti életben.
Spring Framework (Spring Boot)
manapság szinte elengedhetetlen, hogy egy Java fejlesztő megtanulja a Spring framework-et, mivel a legtöbb vállalat inkább a Spring frameworks, például a Spring MVC, a Spring Boot és a Spring Cloud segítségével fejleszt egy webes alkalmazás, REST API mikroszolgáltatások fejlesztéséhez.
emellett elősegíti a legjobb gyakorlatokat, mint például a dependency injection, és tesztelhetőbbé teszi alkalmazását, ami kulcsfontosságú követelmény a modern szoftverek számára.
ha új Java fejlesztő vagy, akkor azt javaslom, hogy kezdje el ezt a Java és tavaszi oktatóanyagot, hogy megtanulja ennek a fantasztikus keretrendszernek az alapjait, és ha már ismeri a Spring-et, akkor fedezze fel a Spring Boot és a Spring Cloud alkalmazást a következő generációs Java alkalmazás fejlesztéséhez.
ha referenciákat keres, akkor a Spring Framework 5: Beginner to Guru a legjobb tanfolyam a kezdéshez.
JUnit és Mockito
ha van egy közös dolog, ami elválaszt egy jó Java fejlesztőt egy átlagos Java fejlesztőtől, akkor az az egység tesztelési képessége.
egy jó és profi Java fejlesztő szinte mindig unit teszteket ír a kódjához, és ha valóban Rockstar fejlesztő, akkor ezt láthatja a kódjából és a tesztjeiből.
a tesztelés már hosszú utat tett meg a Java fejlesztők számára elérhető unit teszteléshez, integrációs teszteléshez és automatizálási teszteléshez.
2020-ban jó összeget költhet a Java tesztelési képességeinek élesítésére, de azok számára, akik újak a Java világban és az egységtesztelésben, a JUnit a legjobb könyvtár. A JUnit 5 legújabb verziója erőteljes és rugalmas, és ezt minden Java fejlesztőnek tudnia kell.
ha keres egy jó áttekintést JUnit és egység tesztelés Java majd JUnit és Mockito összeomlás tanfolyamok tökéletes kezdeni. Ez nem a legfrissebb, mivel nem terjed ki a JUnit 5-re, de még mindig nagyon hasznos a kezdők számára.
Ismerje meg az API-kat és a könyvtárakat
ha nagyszerű Java fejlesztőkkel dolgozott együtt, észrevehette, hogy a Java ökoszisztéma általános ismerete és az API-k jelentős részét képezik.
a Java a világ legnépszerűbb és legérettebb programozási nyelve, és rengeteg könyvtár és API áll rendelkezésre, amelyek szinte mindent megtesznek.
természetesen nem várható el, hogy mindegyiket ismeri, de ismernie kell néhány kulcsfontosságú API-t, például a JSON-feldolgozó API-kat, például a Jackson és a Gson, az XML-feldolgozó API-kat, például a JAXB és a Xerces, az Egységtesztelő könyvtárakat, például a Mockito és a JUnit stb.
ha nem ismeri őket, 2020-ban megtanulhatja vagy legalább áttekintést kaphat róluk. Először is megnézheti a 20 Java könyvtár listáját, amelyet minden Java fejlesztőnek tudnia kell, amely olyan kulcsfontosságú területek könyvtárait fedi le, mint az elemzés, a bájtkód-manipuláció, a párhuzamosság, a gyűjtemények stb.
JVM belső részek
ha komolyan gondolja, hogy Rockstar Java fejlesztővé válik, akkor időt kell töltenie a JVM belső részeinek megtanulására, mint például a JVM különböző részei, hogyan működnek, JIT, JVM opciók, Szemétgyűjtések és gyűjtők stb.
ha jól ismeri a JVM-et, akkor robusztus és nagy teljesítményű Java alkalmazásokat is írhat, és ez az, amit a Rockstar Java fejlesztők csinálnak.
ennek részeként azt is meg kell tanulnod, hogyan kell profilozni a Java alkalmazást, hogyan lehet megtalálni a teljesítmény szűk keresztmetszeteit, pl.
a strukturált tanuláshoz azt javaslom, hogy értse meg a Java virtuális gép sorozatát a Pluralsight-on. Ez egy nagyon részletes és gyakorlati tanfolyam, tökéletes kíváncsi Java fejlesztők számára.
Btw, szüksége lenne egy Pluralsight tagságra, hogy hozzáférjen ehhez a kurzushoz, amely havonta körülbelül 29 dollárba vagy évente 299 dollárba kerül (14% kedvezmény).
ha nincs Pluralsight tagság, azt javasoljuk, hogy kap egy, mert lehetővé teszi, hogy hozzáférjen a 5,000+ online tanfolyamok a legújabb témák, mint a front-end és back-end fejlesztés, gépi tanulás, stb. Ez magában foglalja az interaktív vetélkedőket, gyakorlatokat és a legújabb tanúsítási anyagokat is.
a szoftverfejlesztők számára ez inkább a Netflixre hasonlít, és mivel a tanulás fontos része a munkánknak, a Pluralsight tagság nagyszerű módja annak, hogy megelőzze versenytársait.
10 napos ingyenes próbaverziót is biztosítanak minden elkötelezettség nélkül, ami nagyszerű módja annak, hogy ne csak ingyenesen hozzáférjen ehhez a tanfolyamhoz, hanem ellenőrizze a tanfolyamok minőségét is, mielőtt csatlakozna a Pluralsight-hoz.
azok számára, akik inkább könyveket a végleges útmutató Java Performance Scott Oaks egy nagy könyv a mester JVM belső és szemétgyűjtés.
tervezési minták
ha Java alkalmazást ír a semmiből, akkor legtöbbször objektum-orientált kódot ír, és a tervezési minták a gyakori problémák kipróbált és tesztelt megoldásai.
azáltal, hogy ismeri és beépíti őket a kódjába, rugalmasabbá és könnyebben megváltoztathatóvá teszi alkalmazását a jövőben.
emellett javítja az Általános kódminőséget és dokumentációt, mivel más Java fejlesztők is ismerik a tervezési mintákat, és meglehetősen gyorsan megértik a megoldást.
de ne csak a kódrészre koncentrálj, értsd meg a szellemet, és légy kreatív. Használja a Java 8 olyan funkcióit, mint a lambdas és a Streams, hogy átírja a mintákat, például a stratégiai mintákat.
ha valamilyen forrást keres a tervezési minták megtanulásához, akkor ez a tervezési minta tanfolyamok listája jó kiindulópont. Azok számára, akik szeretik a könyveket, a tervezési mintákról szóló ajánlott könyveim itt találhatók.
Kotlin
néhány évvel ezelőtt olvastam egy könyvet, a The Well-Grounded Java Developer címmel, amely rávilágított a soknyelvű programozóvá válás előnyére.
ez inspirált arra, hogy megtanuljam a Scala-t, és később a Groovy-t is kipróbáltam, mert megnövekedett a használata a build szkriptek és az egységtesztelés létrehozásában.
ez a tapasztalat sokat segített nekem, ezért bátorítom a Java fejlesztőket, hogy tanuljanak meg egy új JVM nyelvet. Korábban blogoltam róla 3 JVM nyelvek A Java fejlesztőknek 2020-ban meg kell tanulniuk, de ha siet, csak tanulja meg Kotlint.
ez egy nagyszerű nyelv a JetBrains-től, az IntelliJ IDEA mögött álló cégtől, valamint az Android fejlesztésének hivatalos nyelve, amint azt a Google 2017-ben bejelentette.
ez nem csak javítja a termelékenységet, hanem segít, hogy menjen be az Android fejlesztési területen. Ha 2020-ban szeretné megtanulni Kotlint, és jó forrást keres, akkor itt található a Kotlin tanfolyamok listája.
IDE (Eclipse vagy IntelliJIDEA)
a jobb Java fejlesztők egyik legfontosabb tulajdonsága, hogy nagyon jók az eszközeikben. Nem csak több eszközt ismernek, mint az átlagos fejlesztők, hanem jól ismerik az eszközeiket is.
mivel az olyan IDE-k, mint az Eclipse, a NetBeans és az IntelliJ IDEA a Java programozók legfontosabb eszközei, érdemes időt tölteni a jobb tanulásra.
megismerhet néhány plugint, amelyek megkönnyítik a feladatot, vagy néhány billentyűparancsot, amelyek segítenek a jobb navigálásban.
még néhány apró tipp is hosszú utat segít, mert sokkal többet használja őket, mint gondolná. Ha komolyan veszi az IDE készségeit a következő szintre, és használja az Eclipse-t, akkor azt javaslom, hogy ellenőrizze az Eclipse hibakeresési technikáit és trükköit az Udemy-n, amely tökéletes tanfolyam az Eclipse ismereteinek javítására.
React or Angular
ahhoz, hogy teljes veremű Java fejlesztővé válhasson, ismernie kell a front-end keretrendszert is, és nincs jobb választás, mint a React vagy az Angular.
ez a két JavaScript keretrendszer teljesen megváltoztatta a webes alkalmazások fejlesztését. Java fejlesztőként lehet, hogy Servlet, JSP és jQuery-t használtál a kliens oldalon, de jobb, ha Angular vagy React-et tanulsz, mert a modern frontend fejlesztés ezeket a keretrendszereket használja.
attól függően, hogy az Angular vagy a React lehetőséget választja.js, azt javaslom, hogy a következő két tanfolyam csatlakozzon, hogy teljes verem Java fejlesztővé váljon.
- Go Java Full Stack with Spring Boot and React
- Go Java Full Stack with Spring Boot and Angular
mindkettő nagyszerű tanfolyam az Angular és a React with Spring Boot megtanulásához és a full-stack Java fejlesztővé váláshoz.
Learn Java Better
ez a legfontosabb dolog a Java fejlesztő most. Java folyamatosan frissül, és most minden új verzió 6 hónap, ez egy nagy kihívás, hogy tartsa magát up-to-date. Én már a tanulás Java 10 funkciók és tudom, hogy sok programozó, akik nem írtak egy sor kódot Java 8 funkciók, mint a lambdas és a Stream API.
sajnos többségük tapasztalt Java fejlesztő, jó 7-10 éves tapasztalattal az övében. Megértem, hogy a karriered egy bizonyos pontján a tanulás lassúvá válik, de ha nem cselekszel most, akkor lemaradsz.
szinte minden Java fejlesztési feladathoz Java 8+ készségekre van szükség, és ha nem rendelkezel velük, nagyon nehéz lenne jól teljesíteni és jól teljesíteni a Java interjúkban.
most, ha úgy döntöttél, hogy megtanulod a Java-t, de aggódsz, hogy hol kezdd, javaslom, hogy nézd meg a teljes Java mesterkurzust az Udemy-n, amely megtanítja a Java 8 funkciók alapjait és más új funkciókat, amelyeket a Java 9, 10, 11 és talán a Java 12-ben vezettek be.
és ha érdekel egy fejlettebb, a gyakorlati tanfolyam, majd Refactoring Java 8 Dr. Heinz Kabutz egy jó, hogy csatlakozzon.
ez az összes tippem, hogy 2020-ban jobb Java fejlesztővé váljak. Tudom, hogy nehéz követni ezeket a tippeket, és nem ezt kérem, egyszerűen nem praktikus.
akkor összpontosítani fontosabb első, mint a tanulás Java 8 és tanulási Spring Framework, ha még nem ismeri őket, de ha jó ezekben, mint akkor vedd más témák értem unit tesztelés, JVM belső, és a DevOps.
először is ki kell választania egyet, mint például a Java 8-tól a Java 13-ig terjedő legújabb Java-funkciók megtanulása, és ezzel el kell köteleznie magát, mielőtt a következő tippre lépne. Ha alacsonyan lógó gyümölcsöket keres, akkor jó választás az IDE jobb megtanulása.
már ismered az IDE-t, és ha egy kis időt töltesz azzal, hogy jobban megtanulod, gyors idő alatt produktívabb és jobb Java fejlesztővé válsz.
minden jót, és ne felejtsd el megosztani tippjeidet, amelyek szerinted jobb Java fejlesztővé tettek.
ha bármilyen javaslata vagy visszajelzése van, akkor nagyon szívesen látjuk, mindannyian tanulunk egymástól.
UI. — Ha még nem ismeri a Java programozási nyelvet, és átfogó és strukturált tanfolyamot keres a Java mélyreható tanulásához, akkor azt is javaslom, hogy nézze meg Tim Buchalaka Teljes Java Masterclass tanfolyamát. Ez is a leginkább up-to-date természetesen, és magában foglalja az új Java funkciók a legutóbbi kiadásokban.