|
||||||||
![]() |
||||||||
När man väljer programmeringsspråk är det två aspekter som är viktiga. Språket bör helst kommunicera så direkt som möjligt med datorn för att få så snabba och små program som möjligt. Problemet med detta är att källkoden blir processorspecifik och måste i stort sett skrivas om för varje ny generation datorer. Å andra sidan så vill man att programmeringsspråket ska möjliggöra skapandet av program som fungerar på olika processortyper och plattformar. Det är ganska uppenbart att dessa två aspekter inte är så lätta att förena. Programmeringsspråk som kommunicerar mer eller mindre direkt med processorn brukar man kalla för lågnivå-språk. Motsatsen, dvs högnivå-språk kännetecknas av att det är portabelt (fungerar på olika maskiner och plattformar) samt att språket har en högre abstraktionsgrad. Det sistnämnda innebär bl.a. att man i sin källkod uttrycker sig mer "mänskligt" än vad man gör i lågnivåspråk. Källkoden kan ofta bli mer konkret och begriplig för betraktaren, men betydligt mer abstrakt för datorn. Som programmerare har du då mindre kontroll över de exakta instruktionerna till datorn. När man skriver t.ex. cout<<"Hej"; i C++ vet programmeraren att Hej kommer upp på skärmen, men de exakta instruktionerna för att åstadkomma detta är förmodligen okända. Ofta är det ointressant att känna till detta, men i vissa fall kan det vara värdefullt. Om man t.ex. gör avancerade grafiska program kan det vara mycket viktigt att känna till de exakta grafik-instruktionerna samt ha möjlighet att manipulera dessa. Nedan finns små exempelprogram i språken Assembly (lågnivå-språk),
C++, Pascal och Basic (högnivå-språk). För den
oinvigde går det ganska väl att gissa vad Pascal och Basic-programmen
gör. Lite svårare är det att gissa resultatet av C++
programmet och Assembly-programmet är förmodligen helt obegripligt. |
||||||||
|
||||||||
C/C++ är alltså ett högnivå-språk och är portabelt, dvs källkod som du skrivit kan kompileras på en Mac, PC, UNIX etc. Koden är densamma, enbart olika kompilatorer krävs (förutsatt att du inte skriver hårdvaruspecifika program). Språket ger även goda möjlighet att kommunicera mer direkt med datorn och det går rent av att infoga assambler-kod i C++ koden. Ett viktigt skäl för att välja C++ som sitt programmeringsspråk
är dess spridning. De allra flesta applikationer som skapas skrivs
i C eller C++. Detta medför att det finns en stark utveckling kopplad
till språket, samt gott om intressant kod att laborera med. Du
kan t.o.m. ladda hem källkoden till Netscape och göra egna
modifieringar¹. |
||||||||
© Stockholms Stad 2001 |