Annonse

Når du prøver å finne ut hvilket programmeringsspråk du skal lære 6 enkleste programmeringsspråk å lære for nybegynnereÅ lære å programmere handler like mye om å finne det rette språket som det handler om oppbyggelsesprosessen. Her er de seks enkleste programmeringsspråkene for nybegynnere. Les mer , vil du sannsynligvis komme over begrepene «høyt nivå» og «lavt nivå». Folk snakker om programmeringsspråk på høyt og lavt nivå hele tiden.

Men hva betyr det egentlig? Og hva betyr det for å lære å skrive kode? La oss starte med definisjonene av hver og gå derfra.

Programmeringsspråk for "høyere" og "lavere nivå".

Gjennom denne artikkelen vil jeg snakke om språk på "høyt" og "lavt" nivå. Men det er det ingen spesifikke kvalifiseringskriterier for begge. Derfor vil jeg også snakke om "høyere" og "lavere" nivåer.

Bare husk at det i stor grad avhenger av perspektivet ditt. Hvis du er en C-programmerer, kan Java virke ganske høyt nivå. Hvis du er vant til Ruby, kan Java virke som et språk på lavt nivå.

instagram viewer

Maskinkode og lavnivåspråk

Om et språk anses på høyt eller lavt nivå (eller et sted i midten) handler om abstraksjon. Maskinkode har ingen abstraksjon – den inneholder de individuelle instruksjonene som sendes til en datamaskin. Og fordi maskiner bare handler i tall, er de representert i binær (selv om de noen ganger er skrevet i desimal eller heksadesimal notasjon).

Her er et eksempel på maskinkode (via Wikipedia):

8B542408 83FA0077 06B80000 0000C383. FA027706 B8010000 00C353BB 01000000. B9010000 008D0419 83FA0376 078BD989. C14AEBF1 5BC3

I maskinkode må operasjoner spesifiseres nøyaktig. For eksempel, hvis en del informasjon må hentes fra minnet, vil maskinkoden måtte fortelle datamaskinen hvor i minnet den skal finne den.

Å skrive direkte i maskinkode er mulig, men veldig vanskelig.

Programmeringsspråk på lavt nivå legger til litt abstraksjon til maskinkoden. Denne abstraksjonen skjuler spesifikke maskinkodeinstruksjoner bak erklæringer som er mer lesbare for mennesker. Monteringsspråk er språkene på laveste nivå ved siden av maskinkode.

I maskinkode kan du skrive noe sånt som "10110000 01100001" - men et assemblerspråk kan forenkle det til "MOV AL, 61t“. Det er fortsatt en nesten en-til-en samsvar mellom det som er skrevet på assemblerspråket og instruksjonene som sendes til maskinen.

binær kode
Bildekreditt: extradeda/Depositphotos

Når du flytter til mer populære programmeringsspråk, kommer du til noe sånt som C Kjennetegn ved C-programmering som gjør den unik (og bedre)C-programmeringsspråket er mor til alle moderne programmeringsspråk. Nesten hvert språk som brukes i dag inkluderer flere funksjoner som først dukket opp på C-språket. Les mer . Selv om det ikke er så lavt som et assemblerspråk, er det fortsatt en sterk samsvar mellom det som er skrevet i C og maskinkoden. De fleste operasjoner skrevet i C kan fullføres med et lite antall maskinkodeinstruksjoner.

Programmeringsspråk på høyt nivå

Akkurat som språk på lavere nivå, dekker språk på høyere nivå et bredt spekter av abstraksjon. Noen, som Java (som du kan hevde er faktisk en midtnivå programmeringsspråk), gir deg fortsatt mye kontroll over hvordan datamaskinen administrerer minne og data.

Andre, som Ruby og Python, er veldig abstrakte. De gir deg mindre tilgang til funksjonene på lavere nivå, men syntaksen er mye lettere å lese og skrive. Du kan gruppere ting i klasser, som arver egenskaper slik at du bare trenger å deklarere dem én gang.

javascript-kode
Bildekreditt: micrologia/Depositphotos

Variabler, objekter, rutiner og løkker er alle viktige deler av høynivåspråk. Disse og andre konsepter hjelper deg å fortelle maskinen å gjøre mange ting med korte, konsise utsagn.

Der et assemblerspråk har en nesten en-til-en-korrespondanse mellom kommandoene og maskinkodekommandoer, kan et språk på høyere nivå være i stand til å sende dusinvis av kommandoer med en enkelt kodelinje.

Det er viktig å merke seg at "programmeringsspråk på høyt nivå" kan inkludere alt som er mer abstrahert enn et assemblerspråk. Det kommer an på hvem som diskuterer temaet. Så når du snakker eller leser om språk, sørg for at du er på samme side.

Bør du lære et språk på lavt eller høyt nivå?

Dette er garantert et vanlig spørsmål blant nye og ambisiøse programmerere. Er programmeringsspråk på høyt eller lavt nivå bedre? Som tilfellet er med mange programmeringsspørsmål, er høynivå vs. Spørsmålet om programmeringsspråk på lavt nivå er ikke så enkelt.

Begge typer språk har viktige fordeler. Språk på lavt nivå, fordi de vanligvis krever lite tolkning av datamaskinen løpe veldig fort Hvorfor er noen programmeringsspråk raskere enn andre?Det er mange programmeringsspråk der ute. De har alle individuelle særheter, brukt til forskjellige ting. Men hva gjør ett programmeringsspråk raskere enn et annet? Les mer . Og de gir programmerere mye kontroll over datalagring, minne og gjenfinning.

Språk på høyt nivå er imidlertid intuitivt enklere å forstå, og lar programmerere skrive kode mye mer effektivt. Disse språkene anses også for å være "tryggere", ettersom det er flere sikkerhetstiltak på plass som hindrer kodere i å utstede dårlig skrevne kommandoer som kan forårsake skade. Men de gir ikke programmerere så mye kontroll over prosesser på lavt nivå.

Med dette i bakhodet, her er et utvalg populære språk på en skala fra lav til høy:

  • C
  • C++
  • Java
  • C#
  • Perl
  • Lisp
  • JavaScript
  • Python
  • Rubin
  • SQL

Dette er selvsagt delvis subjektivt. Og det inkluderer bare en lite tverrsnitt av språkene som er tilgjengelige.

Men det burde gi deg en ide om hvor språkene du er interessert i faller på skalaen.

Hva vil du gjøre?

Når du bestemmer deg for hva du vil lære, bør ditt første spørsmål være hva du vil programmere.

Hvis du ønsker å skrive operativsystemer, kjerner eller noe som helst som må kjøres med absolutt høyest mulig hastighet, kan et språk på lavere nivå være et godt valg. Mye av Windows, OS X og Linux er skrevet på C- og C-avledede språk som C++ og Objective-C.

Mange moderne apper er skrevet på høyere nivå eller til og med domenespesifikke språk. Python og Ruby er spesielt populær for nettapper Hvordan velge riktig webprogrammeringsspråk å brukeHvorfor skal visse språk velges fremfor andre i et gitt scenario? Denne artikkelen vil gi en sjekkliste over spørsmål programmereren bør stille for å velge hvilket språk som skal brukes. Les mer , selv om HTML5 blir stadig kraftigere. Språk som Swift, C#, JavaScript og SQL har alle sine egne styrker og svakheter.

Vurder å lære begge deler

Jeg leste nylig en tråd om nettopp dette spørsmålet på et programmeringsforum, og kom over et interessant forslag: lære begge deler på en gang. Du vil få en dypere forståelse av typene abstraksjoner som gjør språket på høyere nivå mer effektivt.

Selvfølgelig, Det er ikke lett å lære to språk samtidig 7 nyttige triks for å mestre et nytt programmeringsspråkDet er greit å bli overveldet når du lærer å kode. Du vil sannsynligvis glemme ting like raskt som du lærer dem. Disse tipsene kan hjelpe deg med å beholde all den nye informasjonen bedre. Les mer , så det kan være lurt å forskyve dem litt. Og å velge to språk som er like kan også være nyttig.

Igjen, vi går tilbake til punktet jeg tok opp før: velg et språk basert på hva du ønsker å bygge. Gjør noen undersøkelser for å finne ut hvilke språk folk i ditt felt bruker. Bruk deretter denne informasjonen til å velge et språk på høyt og lavt nivå, og begynn å studere dem.

Du vil snart se parallellene, og du vil få en mye dypere forståelse av hvordan programmering fungerer.

Fokuser på mål, ikke midler

Det er mange kriterier du kan bruke for å velge et programmeringsspråk. Høy- vs. lavt nivå er en av dem. Men i nesten alle tilfeller er kriteriene du bør bruke hva du vil programmere.

Prosjektet ditt kan ha nytte av et språk på lavt nivå. Eller det kan være mye mer effektivt i et høyt nivå. Nøkkelen er å velge riktig verktøy for jobben. Fokuser på målet ditt, og du vil velge riktig språk hver gang.

Har du erfaring med både høy- og lavnivåspråk? Foretrekker du det ene fremfor det andre? Del dine tanker i kommentarene nedenfor!

Dann er en innholdsstrategi og markedskonsulent som hjelper bedrifter med å generere etterspørsel og potensielle kunder. Han blogger også om strategi og innholdsmarkedsføring på dannalbright.com.