CodeGym/Java-blogg/Tilfeldig/Hva slags Java-oppgaver har du?
John Squirrels
Nivå
San Francisco

Hva slags Java-oppgaver har du?

Publisert i gruppen
Når noen begynner å lære å programmere , enten alene eller gjennom nettkurs, er det veldig viktig å legge vekt på noen domene og strukturere alt. I denne artikkelen presenterer vi strukturen vår - Java-oppgaver for nybegynnere, med en indikasjon på hvor mye en bestemt type oppgave er representert i CodeGym online programmeringskurs, sammen med nyttige lenker. Hva slags Java-oppgaver har du?  - 1

Øv med språksyntaks

Dette er de aller første Java-programmeringsoppgavene for nybegynnere – grunnlaget – fra «Hello, World» til loops og arrays. CodeGym har mange av dem: de er spesielt konsentrert i de første seks nivåene i Java Syntax- oppdraget. Du trenger neppe å lete etter flere av dem andre steder. Vi har absolutt nok til å mestre dem. Dessuten, når du har en vanskelig oppgave, går du automatisk gjennom syntaksen. Men hvis du plutselig finner deg selv i nød, inneholder enhver Java-lærebok for nybegynnere lignende problemer. Men i motsetning til CodeGym, vil disse oppgavebøkene ikke ha umiddelbar oppgaveverifisering.

Øv med samlinger

Samlinger er det første "seriøse" emnet som nybegynnerprogrammerere møter i studiene. Nybegynneroppgaver viet til Java-samlinger er også godt representert på CodeGym - på det syvende og åttende nivået i Java Syntax-oppdraget. Det er her studenten først får høre om Java Collections Framework, og vil jobbe litt med Set-, List- og Map-grensesnittene sammen med noen av deres implementeringer. Men på dette stadiet får du bare en introduksjon til dette nyttige verktøyet og enkle Java-oppgaver. Du vil studere samlinger mer grundig under Java Collections- oppdraget. Du kan se hvor viktig dette emnet er - et helt oppdrag har blitt oppkalt etter det!

Øv med unntak

Java gir en spesiell mekanisme for å håndtere eksepsjonelle situasjoner, noe som forenkler prosessen med å "fange" applikasjonsfeil betydelig. Men for å få mest mulig ut av det, må du finne ut hvordan unntakshåndtering fungerer i Java. CodeGym har haugevis av slike oppgaver. Du vil til og med møte dem i det første oppdraget - Java Syntax. Hva slags Java-oppgaver har du?  - 2

Øv med typestøping

Denne gruppen av oppgaver kan selvfølgelig klassifiseres som grunnleggende oppgaver på syntaks. Imidlertid, etter vår ydmyke mening, undervurderer folk ofte slike oppgaver, og nybegynnere nøler i dem. Det er derfor vi bryter formen: Vi studerer ikke primitive typekonverteringsoppgaver helt i begynnelsen, slik andre ofte gjør. I stedet takler vi dem litt senere - på slutten av Java Syntax-oppdraget. Og så lærer vi å kaste ikke-primitive typer (objekter) når vi studerer OOP i Java Core- oppdraget. CodeGym har nok av disse oppgavene. Du trenger ikke lete lenger.

Øv med OOP

OOP er ikke det vanskeligste temaet, men det er ekstremt viktig. Og det skjuler mange finesser som intervjuere liker å bruke for å fange opp kommende juniorutviklere. CodeGym-kurset inneholder praktiske programmeringsoppgaver for nybegynnere for å hjelpe deg å forstå den objektorienterte filosofien. Men for å virkelig forstå OOP anbefaler vi at du leser relatert litteratur (for eksempel Cay Horstmanns og Gary Cornells "Core Java", McLaughlins "Object-Oriented Analysis and Design" eller andre bøker ) .

Øv med input/output-strømmer

Vi begynner å bruke I/O-strømmer lenge før vi forstår dem. Dette er Java, min unge gresshoppe! Å forklare System.out, enn si System.in, er vanskelig og unødvendig når du først begynner. Men mens du jobber gjennom Java Core -oppdraget, vet du akkurat nok til å forstå dette litt forvirrende emnet, og vi snakker ikke bare om konsoll-I/O, men også om å jobbe med filsystemet. Det viktigste er å ikke hoppe over disse oppgavene (CodeGym har ganske mye) og å fordype seg konsekvent i teorien.

Hjernetrim

Med «hjerneasere» mener vi oppgaver med økt kompleksitet som ikke handler så mye om kunnskap som om evnen til å anvende det du vet på ukonvensjonelle måter. Dette er vanlige oppgaver for en junior Java-utvikler. Bedrifter er veldig glade i å spørre dem under intervjuer, men i virkelig arbeid støter man ikke på slike hjernetrimlere så ofte. Så CodeGym har noen, men ikke veldig mange (du vil vanligvis se disse i leksjoner av Captain Squirrels). Hva slags Java-oppgaver har du?  - 3Hvor kan jeg finne hjernetrim?

Algoritmer og datastrukturer

Når det gjelder algoritmer og datastrukturer, er det konstant debatt om hvor mye en fremtidig programmerer trenger dem. Vi svarer nok en gang: de er avgjørende for å etablere riktig tankesett, men de er sjelden direkte nødvendige for arbeid. Dette er fordi Java, så vel som andre programmeringsspråk, har biblioteker med implementeringer av alle tenkelige algoritmer for sortering, søking og mer. Likevel kan det å skrive din egen implementering av en algoritme være svært nyttig og kan gi deg en ide om kompleksiteten. Spesielt for folk som bare studerte matematikk på videregående. I utgangspunktet kan disse oppgavene byttes ut med hjernetrimere med den eneste forskjellen at de alle har blitt beskrevet og løst gjentatte ganger online. Du trenger ikke engang et valideringsverktøy. Velg et kurs fra for eksempel Princeton Universityeller en høyskole i California . Øv med datastrukturer:

Multithreading

Hvem som helst kan skrive et "Hei, verden!" program. Men hva med å bruke Java Thread API for å vise den berømte setningen fra en egen tråd? Eller hva med å vise "Hello, World!" fem ganger fra fem forskjellige tråder uten å blande sammen strengene? Multithreading vil være den beste "testen av din styrke" når du studerer Java Core. Et helt CodeGym-oppdrag, kalt Java Multithreading , er dedikert til dette emnet, som er langt fra enkelt. Den inneholder et stort antall oppgaver for å la elevene føle «smerten og skjønnheten» ved parallell prosessering. Studentenes første "ekte" prosjekter inneholder vanligvis et eller annet nivå av multithreading. For eksempel enkle spill. Hva slags Java-oppgaver har du?  - 4

Øv med multithreading

Fem tause filosofer sitter ved et rundt bord. En tallerken spaghetti er foran hver av dem. Det er gafler på bordet mellom hver filosof (en til venstre og en til høyre). Hver filosof kan enten spise eller tenke dype tanker. Men han eller hun kan bare spise hvis han holder to gafler, dvs. ved å plukke opp den til venstre og den til høyre. "Plukk opp gaffel" og "legg ned gaffel" er distinkte handlinger som utføres sekvensielt.

Øv med generika

Generalisering er selve essensen av automatisering, så på en eller annen måte er det essensen av programmering. Følgelig kan vi ikke ignorere emnet generikk i Java. CodeGym har programmeringsoppgaver som involverer generikk (hovedsakelig i Java Collections-oppdraget, som starter på nivå 5). Hvor kan jeg finne nyttige øvelser og materiell om generiske legemidler?

Øv med designmønstre

På et tidspunkt (to tredjedeler av veien gjennom CodeGym-kurset) må nybegynnerprogrammerere begynne å se på reglene for å oppnå god form i programmering. Vi snakker om riktig kodeformatering (enklere) og designmønstre (vanskeligere). CodeGym har oppgaver til dette. Du trenger mer, og du kan finne dem i " Head First Design Patterns " av Elisabeth Freeman og Kathy Sierra. Eller du kan tenke på hvordan du kan bruke designmønstre på tidligere løste oppgaver.

Enhetstesting

En viktig ferdighet for enhver programmerer, ofte feilaktig tilskrevet testere, er evnen til å skrive enhetstester for sin egen kode. CodeGym har noen få oppgaver knyttet til enhetstester, men du trenger egentlig ikke bry deg med å søke etter mer. Når du forstår hvordan du skriver enhetstester, gjør det til en vane å dekke koden din (i egne prosjekter, i studiene) med dem. Dette er mye mer nyttig enn å utføre kontroller med konsollutdata, en praksis som vanligvis rammer studentprogrammerere. I tillegg er det veldig ofte det første nye juniorutviklere får i oppgave i bedrifter å skrive enhetstester for andres kode.

Øv med regulære uttrykk

Dette er et enkelt emne som nesten ingen nybegynnere forstår, fordi det er ukjent og de er late. Det er virkelig verdt å bruke noen dager på å studere emnet, komme til bunns i "regex", og få en fordel over de som ikke har gjort det. Dette er også nyttig fordi regulære uttrykk er nesten språkuavhengige: hvis du lærer dem én gang, vil du kunne bruke dem overalt. CodeGym har ingen oppgaver dedikert til regulære uttrykk, selv om noen kan løses med deres hjelp. Her er flere ressurser for å forstå dette emnet:
  • regex101.com — et nettsted hvor du kan sjekke regulære uttrykk på nettet
  • Mike Fitzgeralds "Introducing Regular Expressions" - en kortfattet og enkel primer.
Hva slags Java-oppgaver har du?  - 5

Øv med lurespørsmål om Java

Denne kategorien inkluderer vanskelige oppgaver som vanligvis ikke er direkte relatert til ekte programmeringsarbeid. De møtes hovedsakelig under intervjuer, hvor de brukes til å forstå en kandidats dybde av forståelse/kunnskap om en bestemt teknologi eller for å teste hans eller hennes oppmerksomhet på detaljer. Trenger du oppgaver som dette, søk etter «Java-intervjuspørsmål» eller noe lignende på Google. Du vil sannsynligvis finne en haug med problemsett, samt spørsmål og svar i alle slags fora. Det er godt å forstå dem, men er det verdt å bruke for mye tid på dem? I en artikkel for InformIT gjorde Cay Horstmann en gang et godt poeng om slike oppgaver. For å kort omskrive tankene hans, er det oppgaver i den virkelige verden og det er det parallelle universet av "intervjuspørsmål".

Øv med lambda-uttrykk

Støtte for lambda-uttrykk dukket opp i Java 8, men de er ennå ikke brukt med entusiasme av alle programmerere. I dag inkluderer konseptet "oppgaver for junior Java-utviklere" operasjoner med lambda-uttrykk, så vi anbefaler å bli kjent med dem .

Øv på å jobbe med nettverk

Serialisering til JSON, RMI, HttpUrlConnection, sockets... dette er ikke akkurat programmeringsemner for nybegynnere. De krever solide ferdigheter og er noe som en bro til dine egne prosjekter, praksisplasser og ansettelse. CodeGyms avanserte nivåer (Java Collections-oppdraget) har mange øvelser for å hjelpe deg med å mestre disse strategiene og teknologiene, men alt vil bli mye klarere etter hvert som du fullfører et online internship.
Kommentarer
  • Populær
  • Ny
  • Gammel
Du må være pålogget for å legge igjen en kommentar
Denne siden har ingen kommentarer ennå