Hvad du skal gøre for at tænke som en programmør

  1. Hvorfor er dette vigtigt?
  2. Find mønsteret
  3. 1. Forstå hende
  4. 2. Planlæg
  5. 3. Opdel problemet i små underproblemer.
  6. 4. fast?
  7. praksis
  8. Udnævnt til de 5 mest populære programmeringssprog ifølge HackerRank
  9. Sådan bliver du en programmør, hvis du virkelig vil, men der er ingen erfaring

Hvad betyder det at tænke som en programmør? Faktisk er alt på en mere effektiv måde at løse problemer på. Blogger og mobilapplikationsudvikler Richard Rees gav nogle tip til, hvordan man udvikler en beregningsmæssig tankegang.

Hvorfor er dette vigtigt?

Problemløsning er metanavyk. Hvordan takler vi dem? Temmelig tilfældigt. Hvis du ikke har et system, vil du sandsynligvis "løse" problemer på denne måde:

  1. Prøv løsningen.

  2. Hvis det mislykkes, kan du prøve en anden.

  3. Gentag trin to, indtil heldig.

Så gør det ikke. Dette er et enormt spild af tid. Du skal a) finde et mønster og b) praksis.

”Næsten alle arbejdsgivere ser først på, hvordan medarbejdere løser problemer. Denne færdighed er vigtigere for dem end viden om programmeringssprog, fejlsøgning og systemdesign. Computational tænkning og evnen til at tackle store og komplekse problemer værdsættes på samme måde som de grundlæggende tekniske færdigheder, der er nødvendige for at arbejde, ”- HackerRank (Developer Skills Report 2018).

Find mønsteret

”Begyndere-programmører fokuserer ofte på syntaks, ikke på problemløsning. Og dette er den største fejltagelse. ” V. Anton Sproul .

Hvad skal du gøre, når du står over for et nyt problem?

1. Forstå hende

Du skal vide, hvad der kræves af dig. Opgaverne virker komplicerede, fordi du ikke forstår dem. Hvordan ved du, om du forstår problemet eller ej? Prøv at forklare det på simpelt sprog.

Foto: Unsplash

Dette sker ret ofte: sidder du fast på en opgave, begynder at forklare den og bemærker pludselig logiske mangler? De fleste programmerere er bekendt med denne følelse. Skriv dit problem ned på papir, eller fortæl nogen om det.

2. Planlæg

Gå ikke med det samme til at løse et problem uden en plan. Intet hjælper dig, hvis du ikke skriver de nøjagtige trin. Giv hjernen tid til at analysere problemet og behandle informationen. For at lave en god plan skal du besvare dette spørgsmål:

"Antag, at der er et X ved indgangen. Hvilke trin er nødvendige for at få Y ved udgangen?"

Programmerere har et fantastisk værktøj til dette ... Kommentarer!

3. Opdel problemet i små underproblemer.

Dette er det vigtigste trin. Forsøg ikke med det samme at løse et stort problem. I stedet skal du opdele det i små gåder og løse dem gradvist. Start med det enkleste - det vil sige den, du allerede kender svaret på. Så snart du takler alle, skal du forbinde prikkerne. Så du kan løse det originale problem.

”Jeg råder altid nybegynderprogrammører til at forenkle problemet. Lad os forestille os, at du er nødt til at skrive et program, der læser ti numre og bestemmer, hvilket der vil være det tredje største. For begyndere kan denne opgave virke meget vanskelig, på trods af at dens løsning kræver kendskab til den grundlæggende syntaks. Hvis du sidder fast, kan du prøve at forenkle problemet. I stedet for det tredje største antal, prøv at finde bare det største af alle. Stadig hårdt? Find det største antal på tre givne. Eller to. Forenkle problemet, indtil du forstår, hvordan du løser det. Komplicér derefter gradvist opgaven og omskriv løsningen ”, - V. Anton Sprol.

4. fast?

Nu tænker du sandsynligvis: ”Nå, ja, dette er selvfølgelig godt, men hvad nu hvis jeg sidder fast og ikke selv kan løse et lille problem?”

Foto: Unsplash

Bare rolig. Det sker for alle. Forskellen er, at programmerere ikke bliver vrede, når de står overfor dette. Tværtimod er de interesseret i at finde en løsning. Her er tre måder at gøre dette på:

  • Bedøm igen . Se på problemet fra den anden side. Er der noget, der kan præsenteres på en enklere måde?

”Nogle gange går vi tabt i detaljerne og savner de generelle principper, der ville hjælpe med at løse problemet hurtigere. Det klassiske eksempel er summen af ​​fortløbende tal - 1 + 2 + 3 + ... + n. Karl Friedrich Gauss præsenterede dette i form af udtrykket n (n + 1) / 2, og han behøvede ikke at udføre unødvendige beregninger. ”

Der er en anden mulighed - at omskrive koden helt. Slet alt og start forfra.

  • Udforsk . Ligegyldigt hvilket problem du prøver at løse nu. Nogen har allerede gjort det før dig. Du skal bare søge. Gør dette, selvom du har løst problemet.

praksis

Tror ikke, at du om en uge bliver en mester på dette felt. Hvis du vil løse problemer godt, skal du gøre det regelmæssigt. Praksis. Skak, matematiske problemer, sudoku, go, monopol, videospil, cryptocotics - alt dette vil hjælpe dig med at perfektere dine problemer med at løse problemer. Kendte mennesker gør det også. F.eks. Spiller Peter Thiel skak, og Ilon Musk - i videospil .

"Ilon Musk, Reed Hoffman, Mark Zuckerberg og andre hævder, at spilene lagde grundlaget for deres succes" - Mary Meeker .

Betyder det, at du bare skal spille videospil? Ikke rigtig. Selvfølgelig skal du stadig lære. Find noget, hvor du kan øve dine evner.

Materialer om emnet:

Udnævnt til de 5 mest populære programmeringssprog ifølge HackerRank

12 tegn på en dårlig programmør - vi identificerer en lægmand

Sådan bliver du en programmør, hvis du virkelig vil, men der er ingen erfaring

Hvordan jeg afslutter mit job som grafisk designer og blev frontend-udvikler på fem måneder

Har du fundet en skrivefejl? Fremhæv tekst, og tryk på Ctrl + Enter

Hvorfor er dette vigtigt?
4. fast?
Hvorfor er dette vigtigt?
Hvordan takler vi dem?
Hvad skal du gøre, når du står over for et nyt problem?
Hvordan ved du, om du forstår problemet eller ej?
Hvilke trin er nødvendige for at få Y ved udgangen?
Stadig hårdt?
4. fast?
Nu tænker du sandsynligvis: ”Nå, ja, dette er selvfølgelig godt, men hvad nu hvis jeg sidder fast og ikke selv kan løse et lille problem?