högnivåspråk skapar program som är lättare för en människa att dechiffrera , i motsats till låg - nivå språk , som en maskin kan lättare utföra . De kan klassificeras med paradigm , dvs klassificeringar av abstraktioner som används för att förstå kontrollen språkets struktur . Programmeringsspråk inte " härstammar " från andra språk . Men språkkonstruktörer lånar begrepp och syntax från andra språk . Detta gör nya språk lätt att lära sig när du har bemästrat den grundläggande paradigm . Språk Typing
förhållningssätt till språket skriva avviker med språket . Typing avser klassificeringen av data som en typ , och huruvida eller inte en typ av data som kan behandlas som en annan typ av data genom ett program . Till exempel är alla nummer , alfanumeriska tecken eller sant /falskt värde som representeras av ett binärt värde . Därför , utan att skriva , kan du göra ett juridiskt uttryck som beräknar värdet av symbolen " ! " dividerat med två . Typade språk förhindra detta , och statisk typ språk testa skriva innan programmet körs , vanligtvis när de sammanställs .
Sammanställt och tolkade språk
Kompilera ett språk omvandlar den till maskinen koden och kompilerade språk är utformade för att köras på ett sådant sätt . Däremot driver ett tolkat språk, eftersom tolk Programmet skannar språket syntax och följer de logiska order den hittar , utan att behöva kompilera det i förväg . Distinktionen mellan sammanställs och tolkas språk är mest en fråga om inställningen av språket designer - i teorin , kan alla språk kan antingen kompileras eller tolkas . Tolkade språk kallas även " skriptspråk . " C + + , mest grundläggande dialekter och Common Lisp är alla kompilerade språk . Perl och Python tolkas språk . Java kombinerar både sammanställts och tolkats paradigm , där normal Java-kod kompileras till Java bytekod , som sedan tolkas av Java Virtual Machine .
Deklarativ vs Imperativ
Programmeringsspråk kan förkroppsliga deklarativa eller tvingande paradigm : driven av computational logik eller kontroll flöde . Språk designade med deklarativa paradigm anger vad en maskin ska utföra , utan att nödvändigtvis anger hur det ska göras . De omfattar språk tillägnad ett specifikt problem domän , såsom HTML och funktionella programmeringsspråk utan ett ihållande tillstånd , såsom Lisp . Den tvingande paradigm , däremot , behandlar ett program som en serie kommandon som ändrar tillståndet i programmet . Processuella språk som C är tvingande , och strukturerade språk , som Java , använder imperativ stil . Vissa språk , som de hittade i en Makefile som används för att bygga program , använda både deklarativa och tvingande stilar .
Strukturerad och objektorienterad
En speciell klass av imperativa språk , strukturerade språk dela programlogik i diskreta underavdelningar för att minska " spaghetti -kod , " eller slumpmässiga hopp logiska svårt att följa delar av programmet . Den strukturerade tillvägagångssätt blev stelnade av objektorienterad programmering , som delas kodavsnitt i klasser och metoder . Java och C + + är objektorienterade programmeringsspråk .
Metaprogrammeringstekniker
" metaprogrammeringstekniker " avser program som verkar på andra program . Vissa språk är utformade specifikt för metaprogrammering . The Make språk , till exempel , är ett enkelt skriptspråk som sammanställer och kör program skrivna i kompilerade språk som C. C + + och Python också uppvisar metaprogrammeringstekniker egenskaper .