High-level språk lage programmer som er enklere for et menneske å tyde, i motsetning til lavnivå språk som en maskin kan lettere gjennomføre . De kan klassifiseres etter paradigmer , dvs. klassifiseringer av abstraksjoner som brukes til å forstå kontroll språkets struktur . Programmeringsspråk ikke " ned " fra andre språk . Men språket designere låne konsepter og syntaks fra andre språk . Dette stiller nye språk lett å lære når du mestrer det grunnleggende paradigmet . Språk Typing
tilnærming til språket skrive forskjellig etter språk . Typing refererer til klassifisering av data som en type, og om ikke én type data kan behandles som en annen type data av et program . For eksempel, er hvilket som helst tall , alfanumerisk tegn eller sant /usant verdi representeres av en binær verdi . Derfor, uten å skrive, kan du gjøre et lovlig uttrykk som beregner verdien av symbolet "!" delt på to . Skrevet språk forhindre dette, og statisk -type språk test typing før programmet utfører , vanligvis når kompilert.
Sammensatt og Tolket språk
Kompilering et språk konverterer den til maskinen kode , og kompilert språk er designet for å kjøres på en slik måte . Derimot, kjører en tolket språk fordi tolk Programmet skanner språk syntaks og følger de logiske bestillinger den finner , uten å måtte kompilere den på forhånd. Skillet mellom samlet og tolket språk er hovedsakelig et spørsmål om preferanse for språket designer - i teorien kan alle språk enten samlet eller tolkes . Tolket språk er også kalt " skriptspråk . " C + + , mest grunnleggende dialekter og Common Lisp er alle kompilerte språk . Perl og Python er tolket språk. Java kombinerer både samlet og tolket paradigmer, som vanlig Java -koden er kompilert til Java bytecode , som deretter tolkes av Java Virtual Machine.
Deklarativ vs avgjørende
Programmeringsspråk kan legemliggjøre deklarativ eller viktig paradigmer : drevet av beregningsorientert logikk eller kontroll flyt. Språk designet med deklarative paradigme spesifisere hva en maskin skal oppnå, uten nødvendigvis å si hvordan det skal gjøres . De omfatter språk dedikert til et bestemt problem domene, for eksempel HTML , og funksjonelle programmeringsspråk uten en vedvarende tilstand , for eksempel Lisp . Den avgjørende paradigmet , derimot , behandler et program som en serie med kommandoer som endrer tilstanden til programmet . Prosessuelle språk som C er avgjørende , og strukturert språk, som Java , bruker imperativ stil. Noen språk , som de fant i en makefile brukes til å bygge programmer , bruke både deklarativ og imperativ stiler .
Strukturert og objektorientert
En spesiell klasse av imperative språk , strukturerte språk dele program logikk i diskrete ledd for å redusere " spaghetti -koden ", eller tilfeldige logikk hopper til vanskelige å følge deler av programmet . Den strukturert tilnærming ble befestet av objekt - orientert programmering, som delte kodesnutter i klasser og metoder. Java og C + + er objektorientert programmeringsspråk .
Metaprogramming
" Metaprogramming " refererer til programmer som virker på andre programmer . Noen språk er designet spesielt for metaprogramming . Det gjør språket , for eksempel, er et enkelt skriptspråk som kompilerer og kjører programmer skrevet i kompilerte språk som C. C + + og Python også vise metaprogramming egenskaper .