Hva er det beste programmeringsspråket å lære?

Hvor skal du begynne å lære?

Foto av Chris Ried på Unsplash

I dag er det så mange programmeringsspråk tilgjengelig i markedet, og hvis du er en nybegynner innen programmering av datamaskiner, kan du lure på hvilket programmeringsspråk som er det beste å velge og hvordan du skal begynne å lære det. Dette er de hyppigste spørsmålene jeg har blitt spurt. Her i denne artikkelen ønsker jeg å svare på disse spørsmålene om hvordan du finner det beste programmeringsspråket å begynne med, og hvor du skal begynne å lære det.

Hver gang jeg hører et slikt spørsmål at hvilket språk som er det beste å lære, svarer jeg: "Vel, det kommer an." Ja, det er ikke noe entydig svar på å si hvilket språk som er best for alle formål. Hvert språk har sine egne formål, fordeler og ulemper. Hvert programmeringsspråk er bra og nyttig for spesifikke jobber. Det rette spørsmålet kan omformuleres som: "Hva er det mest relevante eller riktige språket for meg å velge?" Dette spørsmålet gir mer mening. Før jeg svarer på dette, stiller jeg vanligvis noen få spørsmål for å få en klar forståelse av hva du faktisk ønsker.

1. Hva vil du utvikle?

Hvis du vil starte programmering, må du kjenne området og typen applikasjoner / programvare som du ønsker å utvikle. Er du interessert i spillutvikling? kontor automatiseringsprogramvare? vitenskapelige beregninger? verktøy? maskinvareapplikasjon? og så videre. Svaret viser retningen din mot programmering.

Men hva om du ikke vet svaret, eller i det minste ikke er sikker på svaret ?! Det er så mange mennesker at de ikke vet svaret, og at de ganske enkelt vil begynne å programmere. Så du kan tenke på det som det som har oppmuntret deg til å bestemme deg for å lære et programmeringsspråk? Var det en interessant programvare? Sannsynligvis vil du utvikle en lignende programvare. Eller var det en utvikler? Sannsynligvis vil du bli som ham. Eller var det nyheter du leste? Sannsynligvis vil du utvikle det samme som i nyhetene. Derfor er det viktig å vite hva du skal gjøre før du velger et tilfeldig språk.

Hvis du vet svaret, bør du undersøke de mest relevante språkene og teknologiene på det området. Hvis du for eksempel er interessert i:

  • automatisere noen av dine daglige rutineoppgaver: skriptspråk - dvs. tolkebaserte språk - (f.eks. Python, JavaScript eller VBScript) anbefales.
  • utvikling av flotte nettsteder: front-end teknologier og språk (f.eks. HTML, CSS, JavaScript, JQuery, etc.) anbefales.
  • å utvikle nettbaserte applikasjoner: back-end-teknologier og språk (f.eks. ASP, PHP, Node.JS, Java, Django Python, Go, etc.) anbefales.
  • arbeider med data og databaser: databaserelaterte språk (som SQL) og plattformer (f.eks. MySQL, SQLServer, Mongo, etc.) anbefales.
  • utvikle programvare på bedriftsnivå: kompilatorbaserte språk (f.eks. Java, C ++, C #, etc.) anbefales.
  • gjør noen fantastiske ting i kunstig intelligens eller vitenskapelige beregninger: Python, R, Go, Julia. Matlab, etc. anbefales.
  • etc.

Som du har sett, er det mange språk som kan velges fra hver av disse kategoriene (som ikke er begrenset til listen ovenfor). I dette stadiet, hvis du vet hva du vil gjøre, kan du målrette deg mot lignende selskaper og personer som faktisk gjør den samme jobben som du ønsker å gjøre for å finne de mest relevante språkene og teknologiene. Så du har kanskje færre alternativer, men likevel er det så mange programmeringsspråk igjen. Derfor stiller jeg det andre spørsmålet.

2. Hvorfor og hvor vil du bruke språket?

Dette spørsmålet kan være litt forvirrende. La meg omformulere spørsmålet mitt. Vil du lære og bruke dette språket for moro skyld og / eller bare for deg selv? eller vil du ha det som en ferdighet å bli ansatt? Hvem skal bruke den utviklede programvaren eller koden?

Hvis du er ute etter et språk med stor etterspørsel og høy lønn, kan sannsynligvis et jobbsøkingsnettsted eller LinkedIn hjelpe deg mye bedre med å sjekke antall stillinger som er tilgjengelige for hvert språk i din region / land.

For eksempel spurte en venn av meg, en maskiningeniør, meg en gang “hva er det beste språket å lære?”, Og da jeg spurte ham: “hvor vil du bruke det?” Han svarte at han har hørt at det mekaniske Ingeniører med programmeringskunnskap kan lett finne jobber med høyere lønn. Så jeg spurte ham: "hva er de språkkunnskapene som disse selskapene forventer av en maskiningeniør?" Han sa: "Java og Python." Så, svarte han selv. Hva kan jeg anbefale når målmarkedet hans leter etter disse to språkene?

3. Hvor mye tid er du villig til å bruke?

Moderne programmeringsspråk (f.eks. Python) er veldig enkle å lære og kode; og de gjør vanligvis mange ting bak en scene uten at du legger merke til dem. Det er en fantastisk ting, men det har noen bivirkninger. Det fører til en tregere programvare med mer minneforbruk. En lignende oppgave på andre konvensjonelle språk som C, C ++ eller Java kan kreve mye flere kodelinjer, og det kan også hende du må forstå en dypere logikk bak koden du skriver. Men de er vanligvis raskere, mer minneeffektive, mens det kan ta flere tiår å mestre på disse språkene (spesielt C ++).

Hvis du vil lære noe raskt, hvis du vil kode raskere, dynamisk og mindre komplekst, kan du velge Python. Hvis du vil ha noe sterkt, raskt og effektivt, kan du velge C ++ eller Java. Det tar imidlertid også mye lengre tid å lære og å kode den samme tingen i C ++ kontra Python. Denne generaliseringen er bare et eksempel, og det kommer veldig an på svaret ditt på det første spørsmålet.

Så ved å ha svarene på de tre spørsmålene ovenfor, kan du ha færre alternativer nå for ønsket språk. Det neste vanlige spørsmålet er hvordan du lærer det?

Hvordan lære det valgte språket?

Det er mange ressurser for å lære et nytt programmeringsspråk eller forbedre programmeringsferdighetene, for eksempel bøker, YouTube, online kurs og mange flere. Det spiller ingen rolle hvordan du lærer det, men du bør huske to ting uavhengig av hvilket språk du lærer:

  1. Algoritmisk tenking (dvs. strukturell tenking) er hvordan du strukturerer et program i tankene dine, så konverterer du tankene dine til en kode. Det er den viktigste ferdigheten for en programmerer å utvikle seg. Når du mestrer din algoritmiske tenkning, kan du enkelt lære andre språk og utvide programmeringskunnskapen. De sentrale materialene for algoritmisk tenking er god kunnskap om språkstrukturen (f.eks. Syntaks), funksjoner og matematikk.
  2. Lær strukturen. Jeg har sett mange programmerere at de ganske enkelt hopper over noen strukturer og kurs da de antar at de kjenner dem eller at de kanskje ikke er viktige. Det er den største feilen. Som elev, selv som profesjonell programmerer, bør du gå gjennom alle språkstrukturene og syntaksdetaljene for å kjenne kraften og egenskapene til det nye programmeringsspråket. Hvis du savner et enkelt punkt, kan det koste deg flere linjer med kode og frustrasjon i fremtiden.

Hva er fremtiden for det valgte programmeringsspråket?

I datamaskinindustriens historie er ingenting vedvarende. Et hett og trending språk i dag, kanskje et dødt og glemt språk i morgen. Så du bør også være forberedt på det.

I skrivende stund er denne artikkelen veldig populær, og den har stor etterspørsel i dag. Takk til det store samfunnet av Python-programmerere for å tilby forskjellige pakker. Men blir det varmt i fremtiden? Det er et annet og vanskelig spørsmål å svare på.

Konklusjon

Hvis du er villig til å starte reisen med å være dataprogrammerer, bør du være tydelig med deg selv om hva du skal utvikle, hvor du skal bruke den, hvem som skal bruke den, og hvorfor du utvikler den. Da kan du enkelt finne ressurser og mennesker som kan anbefale deg det passende språket som tilfredsstiller dine behov. Det er ingen diskrete og absolutt beste programmeringsspråk. Hvert språk er laget for et formål, og det er viktig å identifisere ditt før du velger språket.

Programmering er ikke en lett oppgave, det krever tålmodighet, mye trening, tenking og kontinuerlig læring. Lykke til for reisen.

Du er også invitert til å lese: