CodeGym /Java blogg /Slumpmässig /En Java-utvecklares checklista. Vad en utvecklare bör vet...
John Squirrels
Nivå
San Francisco

En Java-utvecklares checklista. Vad en utvecklare bör veta

Publicerad i gruppen
Hej! Idag ska vi prata om en Java-utvecklares väg för tillväxt och vad han eller hon måste veta för att vara efterfrågad. En Java-utvecklares checklista.  Vad en utvecklare bör veta - 1I en intervju kan vilken utvecklare som helst grilla jobbkandidaten. Till exempel kan de börja ställa frågor om specifika ämnen som de har stött på i sitt nuvarande projekt. Men att inte veta allt är normalt. Att man inte kan svara på vissa frågor är också normalt. Som en allmän regel måste varje Java-programmerare ha en grundläggande förståelse för mjukvaruutveckling. Så låt oss ta en titt på vad som anses vara "basic".

1. Grundläggande algoritmer

Det första du ska ta itu med när du börjar lära dig programmering (inte bara Java) är att förstå grunderna. Till exempel algoritmer. Det finns ett oändligt antal av dem, och du bör inte döda hela år av ditt liv genom att försöka lära dig så många algoritmer som möjligt: ​​de flesta av dem kommer inte att vara användbara för dig. Du kan få det nödvändiga minimum av kunskap från boken "Grokking Algorithms". Detta räcker för att du ska komma igång, men om du vill kan du lära dig av boken "Structures and Algorithms" eller "Algorithms in Java" av Robert Sedgewick och Kevin Wayne. Jag rekommenderar också att du förbättrar dina kunskaper om grunderna i datavetenskap. Detta kan göras med Harvard CS50 kurs.

2. Java-syntax

Efter att ha lärt oss grunderna i algoritmer måste vi lära oss Java-syntax. När allt kommer omkring studerar vi alla för att bli Java-programmerare här, eller hur? CodeGym-kursen är perfekt för detta. När du utför otaliga uppgifter kommer du att lägga vantarna på Java-syntax och sedan, utan större tvekan, kommer du att skriva/läsa Java-kod som om det vore ditt modersmål. CodeGym är praktik, men utöver det måste du också titta på teorin för att förstå vad du gör. För att göra detta kan du läsa böcker. Till exempel, något av följande:
  • "Head First Java",
  • "Java for Dummies" av Barry Bird;
  • "Java: A Beginner's Guide" av Herbert Schildt.
Efter att ha läst dessa böcker kan du komma ner till svårare böcker:
  • "Tänker på Java," Bruce Eckel;
  • "Effektiv Java" av Joshua Bloch;
  • "Java: The Complete Reference" av Herbert Schildt.
De tre sista böckerna är inte lätta att läsa för nybörjare, men de ger en solid grund i Java-teori. Glöm inte heller CodeGym-artiklarna, eftersom de ger förklaringar till de flesta ämnen som kan intressera dig. Du kan hitta en relevant artikel genom att skriva in det ämne som intresserar dig i sökfältet: En Java-utvecklares checklista.  Vad en utvecklare bör veta - 2Jag rekommenderar också starkt att leta efter frågor från Java-intervjuer. Detta hjälper dig att förstå exakt vad du behöver lära dig och vilka frågor du ska förbereda dig för.

3. Designa mönster

Designmönster är vissa repeterbara mönster som löser problem i ofta förekommande sammanhang. De inkluderar grundläggande, enkla mönster som varje programmerare med respekt för sig själv borde känna till. För att förstå detta ämne, ta boken "Head First Design Patterns". Den förklarar de grundläggande designmönstren på ett lättillgängligt sätt. Men boken talar mycket om Java, så när du konsumerar den här boken behöver du också flytande i detta programmeringsspråk. För en djupare dykning i mönster kan du också läsa "Design Patterns: Elements of Reusable Object-Oriented Software" från Gang of Four ( Redaktörens anmärkning: Gang of Four är ett team av författare som inkluderar Erich Gamma, Richard Helm, Ralph Johnson, John Vlissides.). När du har studerat det här ämnet kommer du att börja se mönster nästan överallt i din kod. Var uppmärksam på detta, särskilt på mönstren som används under våren, eftersom detta är en populär intervjufråga.

4. Programmeringsparadigm. Kod renlighet

Förutom standarddesignmönstren finns det olika principer och paradigm att vara medveten om ( SOLID , GRASP ). Du måste också hålla din kod ren och läsbar. För allt behöver du veta om detta ämne, se Clean Code av Robert Martin, eller kolla in "Code Complete" av Steve McConnell.

5. SQL

Vårt nästa steg är att studera ett språk för relationsdatabaser — SQL . Databaser är där informationen (data) som används av en webbapplikation lagras. En databas består av flera tabeller (adressboken på din telefon är ett enkelt exempel). Java-utvecklare ansvarar inte bara för Java-applikationen utan också för databasen som den interagerar med och var den lagrar sina data. I relationsdatabaser (som är den vanligaste typen) sker all interaktion genom ett speciellt språk som kallas Structured Query Language, eller SQL. För att förstå detta ämne behöver du bara läsa en av dessa böcker:
  • "Learning SQL" av Alan Beaulieu;
  • "SQL" av Chris Fehily;
  • "Head First SQL" av Lynn Beighley.
Men praktik utan teori skär inte bort det, eller hur? Och vid intervjuer kan du förvänta dig ett test av dina kunskaper i SQL. Intervjuare ger ofta (nästan alltid) en eller två uppgifter som innebär att skriva en SQL-fråga. Som ett resultat är det mycket viktigt att finslipa dina praktiska SQL-färdigheter för att visa dig själv i ett bra ljus.

6. MySQL/PostgreSQL

Efter att ha lärt dig SQL-språket måste du bli bekant med en specifik databasimplementering. Beroende på databasen kan vissa kommandon variera dramatiskt. Och det finns ganska märkbara skillnader i databaskapacitet. De vanligaste relationsdatabaserna är MySQL och PostgreSQL . En Java-utvecklares checklista.  Vad en utvecklare bör veta - 3MySQL är mycket enklare, men PostgreSQL har mycket bredare möjligheter. Att vara bekant med minst en av dem räcker för att komma igång. Du kan studera databasimplementeringar om du använder dina googlingsfärdigheter – hitta relevanta artiklar och handledningar på YouTube. Du kommer att behöva odla din förmåga att skapa korrekta sökfrågor för de frågor du behöver besvarade. En programmerare är trots allt någon med svart bälte i googling.

7. Maven/Gradle

Du måste lära dig antingen Gradle- eller Maven -ramverket. De är till för byggprojekt, och för dig är Java nu inte bara för uppgifter som involverar ett par klasser, utan också ett språk för att skriva fullfjädrade applikationer. Du måste förstå hur man bygger ett projekt, vad byggstadierna är, hur man laddar de nödvändiga externa biblioteken med tredjepartskod och mycket mer. Trots att Gradle är nyare och mer kortfattad används Maven i de flesta fall. Så ägna särskild uppmärksamhet åt Mavens bygglivscykel.

8. Git

Git är ett distribuerat versionskontrollsystem. Denna teknik låter utvecklare samarbeta i en enda applikation utan att störa varandra. Naturligtvis finns det andra versionskontrollsystem. Till exempel Subversion . Men Git används mest, och du måste kunna arbeta med det.En Java-utvecklares checklista.  Vad en utvecklare bör veta - 4Förutom de många artiklarna om Git du kan hitta online, har YouTube mer än tillräckligt med videor för att hjälpa dig att bemästra denna teknik, steg för steg. Till en början är det bättre att använda Git från kommandoraden snarare än någon form av GUI-implementering, eftersom du kommer att tvingas göra allt med hjälp av kommandon. I intervjuer gillar folk ofta att fråga om några Git-kommandon, så jag rekommenderar att du skriver ut dem och håller någonstans i närheten. Jag rekommenderar också att du gör anteckningar, håller reda på de viktigaste punkterna för att gå igenom dem innan intervjun och fräscha upp minnet.

9. JDBC

Denna teknik kopplar ihop din Java-applikation och en relationsdatabas. För grunderna rekommenderar jag att du läser vilken JDBC-handledning som helst. Det finns ett överflöd av artiklar som förklarar JDBC och ger rudimentära exempel, även om ingen använder naken JDBC direkt längre.

10. JPA. Övervintra

JPA är ett sätt att upprätta en koppling mellan en Java-applikation och en databas, precis som JDBC. Men samtidigt är JPA en teknik på högre nivå och därför lättare att använda. Men JPA är bara en specifikation, inte en implementering. Det behöver ett konkret genomförande. Många av dem finns, men den som ligger närmast JPA-ideal, den mest populära och mest utvecklade är Hibernate. Du kommer att stöta på denna teknik mer än en gång under din karriär inom mjukvaruutveckling. Så, förutom att bekanta sig med denna teknik genom att läsa artiklar, kan det vara värt att tänka på att läsa en bok, till exempel "Java Persistence API".

11. Vår

När du blir Java-utvecklare är Spring inte längre bara ett ord för dig. En Java-utvecklares checklista.  Vad en utvecklare bör veta - 5Att känna till detta ramverk är nu lika viktigt som att känna till Java Syntax. Man kan säga att Spring har ett syskon, dvs Java EE. Men Java EE är föråldrat och används inte längre i nya projekt. Den överväldigande majoriteten av Java-utvecklare är nu Java-Spring-utvecklare, så att känna till några grundläggande Spring-teknologier är ett måste. Våren är inte bara ett ramverk, utan ett helt ramverk av ramar: En Java-utvecklares checklista.  Vad en utvecklare bör veta - 6Och detta är bara en delmängd av ramarna som våren tillhandahåller. För en nybörjare är det tillräckligt att känna till ett fåtal av dem:

  • Fjäderkärna

Du bör sätta detta i första hand, så att du kan förstå vad Spring är - allt om Spring-behållare, bönor, DI, IoC och så vidare. Att förstå själva filosofin med att använda Spring, så att säga. Dina fortsatta studier av vårens ramverk kommer att bygga på denna bas. Kanske borde du skapa din egen lilla applikation där du gradvis kan införliva alla nyinlärda teknologier.

  • Spring JDBC

Tidigare nämnde vi JDBC som en teknik för att skapa en databasanslutning. I allmänhet kan "naken" användning av tekniken inte längre hittas i projekt, så du kan dra slutsatsen att det inte är nödvändigt att lära sig JDBC. Detta är inte riktigt rätt inställning. Genom att utforska naken (direkt) användning av JDBC kan du se tekniken på en lägre nivå och förstå dess problem och brister. Sedan när du börjar lära dig Spring JDBC kommer du att inse vad exakt detta ramverk förbättrar, optimerar och döljer.

  • Spring Hibernate

Analogt med situationen med naken JDBC, utnyttjar detta ramverk en befintlig teknik, i det här fallet Hibernate. Om du överväger att använda Hibernate utan Spring, kommer du definitivt att inse fördelarna som Spring Hibernate erbjuder.

  • Våren JPA

Tidigare pratade vi om JPA och nämnde att det bara är en specifikation, även om det har olika implementeringar. Bland dessa implementeringar kommer Hibernate närmast idealet. Spring har sin egen idealiska JPA-implementering som använder Hibernate under huven. Den ligger så nära JPA-specifikationens ideal som möjligt. Det kallas Spring JPA. Med ett ord, det förenklar databasåtkomst avsevärt. Du kan bara lära dig JPA utan att lära dig JDBC, Hibernate, Spring JDBC eller Spring Hibernate. Men om du tar det här tillvägagångssättet kommer din kunskap om hur man ansluter till en databas att vara mycket ytlig.

  • Fjäder MVC

Denna teknik gör det möjligt att visa vår applikations webbgränssnitt för användarna och underlätta kommunikationen mellan gränssnittet och resten av applikationen. Tekniken kan även användas utan display när du har en applikation som ansvarar för att hantera displayen och du interagerar med applikationen med hjälp av RESTful -teknik. För att bättre insupa information om Våren kan du förutom artiklar och YouTube-föreläsningar läsa flera böcker. Jag gillade verkligen boken "Spring in Action" av Craig Walls. Jag råder dig att läsa den 6:e versionen, om du kan engelska väl. En annan bra bok om våren är "Vår 5 för proffsen". Det är tätare. Mer som en referens som är mer värdefull att ha nära till hands än att läsa pärm till pärm.En Java-utvecklares checklista.  Vad en utvecklare bör veta - 7

  • Fjäderkänga

Denna teknik förenklar användningen av Spring avsevärt. Jag satte det inte i slutet av listan på ett infall. Det gömmer sig faktiskt mycket under huven, och för någon som inte är bekant med vaniljfjädern kan många punkter vara otydliga eller obegripliga. Först, för en bättre förståelse av hur Spring-ramverk fungerar, bör du använda vanliga Spring och sedan plocka upp alla de högre fördelarna med att använda Spring Boot. Jag rekommenderar också att du bekantar dig med Spring Security och Spring AOP. Men till skillnad från teknikerna ovan behövs inte djup kunskap om dessa två ännu. Denna teknik är inte för nybörjare. Vid intervjuer kommer juniorutvecklare inte att tillfrågas om dem (förutom en ytlig fråga, kanske). Läs en översikt över vad dessa teknologier är och principerna bakom deras arbete. I den här artikeln, Jag har upprepade gånger nämnt att läsa böcker. Å ena sidan är detta inte obligatoriskt. Du kan bli programmerare utan att läsa en enda bok och få all nödvändig kunskap från onlineartiklar och utbildningsvideor. Å andra sidan, på arbetsmarknaden är konkurrensen bland nybörjare hög för närvarande, vilket höjer ribban för vad en nybörjare behöver veta. Så ju mer du vet, desto snabbare hittar du ditt första jobb genom att imponera på intervjuaren med din kunskapsnivå. Tack alla, och må Java vara med er. vilket höjer ribban för vad en nybörjare behöver veta. Så ju mer du vet, desto snabbare hittar du ditt första jobb genom att imponera på intervjuaren med din kunskapsnivå. Tack alla, och må Java vara med er. vilket höjer ribban för vad en nybörjare behöver veta. Så ju mer du vet, desto snabbare hittar du ditt första jobb genom att imponera på intervjuaren med din kunskapsnivå. Tack alla, och må Java vara med er.
Kommentarer
TO VIEW ALL COMMENTS OR TO MAKE A COMMENT,
GO TO FULL VERSION