CodeGym/Java blogg/Slumpmässig/Vilka typer av Java-uppgifter har du?
John Squirrels
Nivå
San Francisco

Vilka typer av Java-uppgifter har du?

Publicerad i gruppen
När någon börjar lära sig hur man programmerar , antingen ensam eller genom onlinekurser, är det mycket viktigt att betona en viss domän och strukturera allt. I den här artikeln presenterar vi vår struktur - Java-uppgifter för nybörjare, med en indikation på hur mycket en viss typ av uppgift är representerad i CodeGym online -programmeringskurs, tillsammans med användbara länkar. Vilka typer av Java-uppgifter har du?  - 1

Öva med språksyntax

Det här är de allra första Java-programmeringsuppgifterna för nybörjare – grunden – från "Hello, World" till loopar och arrayer. CodeGym har många av dem: de är särskilt koncentrerade till de första sex nivåerna av Java Syntax -uppdraget. Det är osannolikt att du behöver leta efter fler av dem någon annanstans. Vi har säkert tillräckligt för att bemästra dem. Vad mer är, när du har en svårare uppgift, granskar du automatiskt syntaxen. Men om du plötsligt befinner dig i nöd, innehåller alla Java-läroböcker för nybörjare liknande problem. Men till skillnad från CodeGym kommer dessa övningsböcker inte att ha omedelbar uppgiftsverifiering.

Öva med samlingar

Samlingar är det första "seriösa" ämnet som nybörjarprogrammerare stöter på i sina studier. Nybörjaruppgifter som ägnas åt Java-samlingar är också väl representerade på CodeGym — på den sjunde och åttonde nivån i Java Syntax-uppdraget. Det är här studenten först får höra om Java Collections Framework och kommer att arbeta lite med Set, List och Map-gränssnitten tillsammans med några av deras implementeringar. Men i detta skede får du bara en introduktion till detta användbara verktyg och enkla Java-uppgifter. Du kommer att studera samlingar mer noggrant under Java Collections- uppdraget. Du kan se hur viktigt det här ämnet är - ett helt uppdrag har fått sitt namn efter det!

Öva med undantag

Java tillhandahåller en speciell mekanism för att hantera exceptionella situationer, vilket avsevärt förenklar processen att "fånga" applikationsfel. Men för att få ut det mesta av det måste du ta reda på hur undantagshantering fungerar i Java. CodeGym har massor av sådana uppgifter. Du kommer till och med att stöta på dem i det första uppdraget - Java Syntax. Vilka typer av Java-uppgifter har du?  - 2

Öva med typgjutning

Denna grupp av uppgifter skulle naturligtvis kunna klassificeras som grundläggande uppgifter om syntax. Men enligt vår ödmjuka åsikt underskattar människor ofta sådana uppgifter, och nybörjare slänger i dem. Det är därför vi bryter formen: Vi studerar inte primitiva typkonverteringsuppgifter i början som andra ofta gör. Istället tar vi oss an dem lite senare - i slutet av Java Syntax-uppdraget. Och sedan lär vi oss att gjuta icke-primitiva typer (objekt) när vi studerar OOP i Java Core- uppdraget. CodeGym har nog av dessa uppgifter. Du behöver inte leta längre.

Träna med OOP

OOP är inte det svåraste ämnet, men det är oerhört viktigt. Och det döljer många finesser som intervjuare gillar att använda för att fånga blivande juniorutvecklare. CodeGym-kursen innehåller praktiska programmeringsuppgifter för nybörjare för att hjälpa dig förstå den objektorienterade filosofin. Men för att verkligen förstå OOP rekommenderar vi att du läser relaterad litteratur (till exempel Cay Horstmanns och Gary Cornells "Core Java", McLaughlins "Object-Oriented Analysis and Design" eller andra böcker ) .

Öva med input/output-strömmar

Vi börjar använda I/O-strömmar långt innan vi förstår dem. Det här är Java, min unga gräshoppa! Att förklara System.out, än mindre System.in, är svårt och onödigt när du först börjar. Men när du arbetar genom Java Core- uppdraget vet du precis tillräckligt för att förstå detta något förvirrande ämne, och vi pratar inte bara om konsol-I/O, utan också att arbeta med filsystemet. Huvudsaken är att inte hoppa över dessa uppgifter (CodeGym har ganska mycket) och att konsekvent fördjupa sig i teorin.

Gåtor

Med "brainteasers" menar vi uppgifter av ökad komplexitet som inte handlar så mycket om kunskap som om förmågan att tillämpa det du vet på okonventionella sätt. Dessa är vanliga uppgifter för en junior Java-utvecklare. Företag är väldigt förtjusta i att fråga dem under intervjuer, men i verkligt arbete stöter man inte på sådana hjärnsläpp så ofta. Så CodeGym har några, men inte särskilt många (du brukar se dessa på lektioner av Captain Squirrels). Vilka typer av Java-uppgifter har du?  - 3Var kan jag hitta hjärnsläpp?

Algoritmer och datastrukturer

När det gäller algoritmer och datastrukturer pågår det konstant debatt om hur mycket en framtida programmerare behöver dem. Vi svarar ännu en gång: de är viktiga för att etablera rätt tänkesätt, men de krävs sällan direkt för arbetet. Detta beror på att Java, liksom andra programmeringsspråk, har bibliotek med implementeringar av alla tänkbara algoritmer för sortering, sökning och mer. Ändå kan det vara till stor hjälp att skriva din egen implementering av en algoritm och ge dig en uppfattning om dess komplexitet. Speciellt för personer som bara läste matte på gymnasiet. I grund och botten kan dessa uppgifter bytas ut med hjärnbrännare med den enda skillnaden att de alla har beskrivits och lösts upprepade gånger online. Du behöver inte ens ett valideringsverktyg. Välj valfri kurs från till exempel Princeton Universityeller ett college i Kalifornien . Öva med datastrukturer:

Multithreading

Vem som helst kan skriva ett "Hej världen!" program. Men vad sägs om att använda Java Thread API för att visa den berömda frasen från en separat tråd? Eller vad sägs om att visa "Hello, World!" fem gånger från fem olika trådar utan att blanda ihop strängarna? Multithreading kommer att vara det bästa "testet på din styrka" när du studerar Java Core. Ett helt CodeGym-uppdrag, kallat Java Multithreading , är tillägnat detta ämne, vilket är långt ifrån lätt. Den innehåller ett stort antal uppgifter för att låta eleverna känna "smärtan och skönheten" med parallell bearbetning. Elevernas första "riktiga" projekt innehåller vanligtvis en viss nivå av multithreading. Till exempel enkla spel. Vilka typer av Java-uppgifter har du?  - 4

Öva med multithreading

Fem tysta filosofer sitter vid ett runt bord. En tallrik spagetti ligger framför var och en av dem. Det finns gafflar på bordet mellan varje filosof (en till vänster och en till höger). Varje filosof kan antingen äta eller tänka djupa tankar. Men han eller hon kan bara äta om han håller två gafflar, dvs genom att ta upp den till vänster och den till höger. "Plocka upp gaffel" och "lägg ner gaffel" är distinkta åtgärder som utförs sekventiellt.

Öva med generika

Generalisering är själva essensen av automatisering, så i någon mening är det essensen av programmering. Följaktligen kan vi inte ignorera ämnet generika i Java. CodeGym har programmeringsuppgifter som involverar generika (främst i Java Collections-uppdraget, med start på nivå 5). Var kan jag hitta användbara övningar och material om generika?

Öva med designmönster

Någon gång (två tredjedelar av CodeGym-kursen) måste nybörjarprogrammerare börja titta på reglerna för att uppnå god form i programmering. Vi pratar om korrekt kodformatering (enklare) och designmönster (svårare). CodeGym har uppgifter för detta. Du behöver mer och du kan hitta dem i " Head First Design Patterns " av Elisabeth Freeman och Kathy Sierra. Eller så kan du fundera på hur du kan tillämpa designmönster på tidigare lösta uppgifter.

Enhetstestning

En viktig färdighet för alla programmerare, som ofta felaktigt tillskrivs enbart testare, är förmågan att skriva enhetstester för sin egen kod. CodeGym har några uppgifter relaterade till enhetstester, men du behöver egentligen inte bry dig om att söka efter mer. När du förstår hur man skriver enhetstester, gör det till en vana att täcka din kod (i egna projekt, i dina studier) med dem. Detta är mycket mer användbart än att utföra kontroller med konsolutdata, en praxis som vanligtvis drabbar studentprogrammerare. Dessutom är det väldigt ofta det första som nya juniorutvecklare får i uppdrag på företag att skriva enhetstester för någon annans kod.

Öva med reguljära uttryck

Det här är ett enkelt ämne som nästan ingen nybörjare förstår, eftersom det är obekant och de är lata. Det är verkligen värt besväret att ägna några dagar åt att studera ämnet, gå till botten med "regex" och få en fördel gentemot de som inte har gjort det. Detta är också användbart eftersom reguljära uttryck är nästan språkoberoende: om du lär dig dem en gång kommer du att kunna använda dem överallt. CodeGym har inga uppgifter dedikerade till reguljära uttryck, även om vissa kan lösas med deras hjälp. Här är ytterligare resurser för att förstå detta ämne:
  • regex101.com — en webbplats där du kan kontrollera reguljära uttryck online
  • Mike Fitzgeralds "Introducing Regular Expressions" — en kortfattad och enkel primer.
Vilka typer av Java-uppgifter har du?  - 5

Öva med knepfrågor om Java

Denna kategori innehåller knepiga uppgifter som vanligtvis inte är direkt relaterade till riktigt programmeringsarbete. De påträffas främst under intervjuer, där de används för att förstå en kandidats djupa förståelse/kunskaper om en viss teknik eller för att testa hans eller hennes uppmärksamhet på detaljer. Om du behöver sådana här uppgifter, sök efter "Java intervjufrågor" eller något liknande på Google. Du hittar förmodligen en massa problemuppsättningar, såväl som frågor och svar i alla möjliga forum. Det är bra att förstå dem, men är det värt att lägga onödigt mycket tid på dem? I en artikel för InformIT gjorde Cay Horstmann en gång en bra poäng om sådana uppgifter. För att kort omskriva hans tankar så finns det verkliga uppgifter och det finns ett parallellt universum av "intervjufrågor".

Träna med lambda-uttryck

Stöd för lambda-uttryck dök upp i Java 8, men de används ännu inte med entusiasm av alla programmerare. Ändå inkluderar begreppet "uppgifter för junior Java-utvecklare" idag operationer med lambda-uttryck, så vi rekommenderar att du bekantar dig med dem .

Träna på att arbeta med nätverk

Serialisering till JSON, RMI, HttpUrlConnection, sockets... det här är inte precis programmeringsämnen för nybörjare. De kräver gedigna färdigheter och är något som en bro till dina egna projekt, praktikplatser och anställning. CodeGyms avancerade nivåer (uppdraget Java Collections) har många övningar som hjälper dig att bemästra dessa strategier och teknologier, men allt kommer att bli mycket tydligare när du genomför en onlinepraktik.
Kommentarer
  • Populär
  • Ny
  • Gammal
Du måste vara inloggad för att lämna en kommentar
Den här sidan har inga kommentarer än