Hva du trenger å gjøre for å tenke som en programmerer

  1. Hvorfor er dette viktig?
  2. Finn mønsteret
  3. 1. Forstå henne
  4. 2. Planlegg
  5. 3. Del opp problemet i små delproblemer.
  6. 4. fast?
  7. praksis
  8. Kåret til de 5 mest populære programmeringsspråk i følge HackerRank
  9. Hvordan bli programmerer, hvis du virkelig vil, men det er ingen erfaring

Hva betyr det å tenke som en programmerer? Faktisk er alt på en mer effektiv måte å løse problemer. Blogger og mobilapplikasjonsutvikler Richard Rees ga noen tips for hvordan du kan utvikle en beregningsmessig måte å tenke på.

Hvorfor er dette viktig?

Problemløsing er metanavyk. Hvordan takler vi dem? Ganske tilfeldig. Hvis du ikke har et system, vil du sannsynligvis "løse" problemer på denne måten:

  1. Prøv løsningen.

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

  3. Gjenta trinn to til de er heldige.

Så ikke gjør det. Dette er et enormt bortkastet tid. Du må a) finne et mønster og b) øve.

”Nesten alle arbeidsgivere ser først på hvordan ansatte løser problemer. Denne ferdigheten er viktigere for dem enn kunnskap om programmeringsspråk, feilsøking og systemdesign. Beregningstenkning og evnen til å takle store og sammensatte problemer verdsettes på samme måte som de grunnleggende tekniske ferdighetene som trengs for å fungere, ”- HackerRank (Developer Skills Report 2018).

Finn mønsteret

"Nybegynnere som programmerer, fokuserer ofte på syntaks, ikke problemløsing. Og dette er den største feilen. ” V. Anton Sproul .

Hva bør du gjøre når du står overfor et nytt problem?

1. Forstå henne

Du må vite hva som kreves av deg. Oppgavene virker kompliserte fordi du ikke forstår dem. Hvordan vet du om du forstår problemet eller ikke? Forsøk å forklare det på enkelt språk.

Foto: Unsplash

Dette skjer ganske ofte: blir du fast på en oppgave, begynner å forklare den og plutselig merke logiske mangler? De fleste programmerere er kjent med denne følelsen. Skriv ned problemet på papir eller fortell noen om det.

2. Planlegg

Ikke fortsett med å løse et problem uten en plan. Ingenting vil hjelpe deg hvis du ikke skriver ut nøyaktig trinn. Gi hjernen tid til å analysere problemet og behandle informasjonen. For å lage en god plan, svar på dette spørsmålet:

"Anta at det er et X ved inngangen. Hvilke trinn er nødvendig for å få Y ved utgangen?"

Programmerere har et flott verktøy for dette ... Kommentarer!

3. Del opp problemet i små delproblemer.

Dette er det viktigste trinnet. Ikke prøv å løse ett stort problem umiddelbart. I stedet bryter du det opp i små gåter og løser dem gradvis. Begynn med det enkleste - det vil si den du allerede vet svaret på. Så snart du takler alt, kobler du til prikkene. Så du kan løse det opprinnelige problemet.

“Jeg anbefaler alltid nybegynnere som skal forenkle problemet. La oss tenke oss at du trenger å skrive et program som leser ti tall og bestemmer hvilket som vil være det tredje største. For nybegynnere kan denne oppgaven virke veldig vanskelig, til tross for at løsningen krever kunnskap om den grunnleggende syntaks. Hvis du blir sittende fast, kan du prøve å forenkle problemet. I stedet for det tredje største tallet, kan du prøve å finne det største av alle. Fortsatt vanskelig? Finn det største antallet av tre som er gitt. Eller to. Forenkle problemet til du forstår hvordan du løser det. Kompliser deretter gradvis oppgaven og omskriver løsningen ”, - V. Anton Sprol.

4. fast?

Nå tenker du sannsynligvis: "Vel, ja, dette er selvfølgelig flott, men hva om jeg sitter fast og ikke kan løse selv et lite problem?"

Foto: Unsplash

Ikke bekymre deg. Det skjer med alle sammen. Forskjellen er at programmerere ikke blir sinte når de blir møtt med dette. Tvert imot, de er interessert i å finne en løsning. Her er tre måter å gjøre dette på:

  • Ranger igjen . Se på problemet fra den andre siden. Er det noe som kan presenteres på en enklere måte?

Noen ganger går vi vill i detaljene og savner de generelle prinsippene som kan bidra til å løse problemet raskere. Det klassiske eksemplet er summen av påfølgende tall - 1 + 2 + 3 + ... + n. Karl Friedrich Gauss presenterte dette i form av uttrykket n (n + 1) / 2, og han trengte ikke å utføre unødvendige beregninger. ”

Det er et annet alternativ - å omskrive koden fullstendig. Slett alt og begynn på nytt.

  • Utforsk . Uansett hvilket problem du prøver å løse nå. Noen har allerede gjort det før deg. Du trenger bare å søke. Gjør dette selv om du har løst problemet.

praksis

Tror ikke at om en uke vil du bli en mester på dette feltet. Hvis du vil løse problemer godt, gjør du det regelmessig. Praksis. Sjakk, matteproblemer, sudoku, go, monopol, videospill, cryptocotics - alt dette vil hjelpe deg med å perfeksjonere dine problemer med å løse problemer. Kjente mennesker gjør det også. For eksempel spiller Peter Thiel sjakk, og Ilon Musk - i videospill .

"Ilon Musk, Reed Hoffman, Mark Zuckerberg og andre hevder at spillene la grunnlaget for deres suksess" - Mary Meeker .

Betyr det at du bare skal spille videospill? Egentlig ikke. Selvfølgelig trenger du fortsatt å lære. Finn noe der du kan øve dine ferdigheter.

Materialer om emnet:

Kåret til de 5 mest populære programmeringsspråk i følge HackerRank

12 tegn på en dårlig programmerer - vi identifiserer en lekmann

Hvordan bli programmerer, hvis du virkelig vil, men det er ingen erfaring

Hvordan jeg sa opp jobben som grafisk designer og ble frontend-utvikler på fem måneder

Fant du en skrivefeil? Uthev tekst og trykk Ctrl + Enter

Hvorfor er dette viktig?
4. fast?
Hvorfor er dette viktig?
Hvordan takler vi dem?
Hva bør du gjøre når du står overfor et nytt problem?
Hvordan vet du om du forstår problemet eller ikke?
Hvilke trinn er nødvendig for å få Y ved utgangen?
Fortsatt vanskelig?
4. fast?
Nå tenker du sannsynligvis: "Vel, ja, dette er selvfølgelig flott, men hva om jeg sitter fast og ikke kan løse selv et lite problem?
 
Карта