Alt om C, C++ og C#

Alt vi ser og gjør på digitale plattformer stammer fra samme basis-programmering. Gjennom tidene har det oppstått en lang rekke forskjellige språk å kunne programmere i, og det er så godt som sikkert å si at det i fremtiden vil oppstå mange flere.

Etter hvert som teknologien fortsetter å utvikle seg, er det mange språk som har falt ut av standarden, men noen få av disse språkene har såpass mange bruksområder at de ikke har gått av moten uavhengig av hvilke sprang som skjer på teknologifronten. Et av de beste eksemplene på slike språk er C, og dens biprodukter.

  • C er et av de eldste programmeringsspråkene som fortsatt er i bruk – språket ble utviklet så tidlig som i 1972.
  • Siden den gang har det oppstått et par videreutviklinger av C, C++ og C#.

Historie

C har sine tidligste røtter i utviklingen av operativsystemet Unix, noe som fant sted fra og med slutten av 60-tallet, og ble ledet av Dennis Ritchie og Ken Thompson. Ritchie og Thompson arbeidet med å implementere operativsystemet på en tidlig datamaskin ved navn PDP-7. Dette arbeidet ble utført ved hjelp av assemblerspråk (språk tatt i bruk av en spesifikk maskinarkitektur). Da paret senere bestemte seg for å utvikle operativsystemet til en oppdatert versjon av PDP-7 ved navn PDP-11, ble det klart at de kom til å trenge et nytt språk for å skulle kunne utvikle verktøy på maskinens operativsystem.

Dette hendelsesforløpet førte til at Thompson bega seg ut på å lage et nytt språk – B. B var en forenklet versjon av et allerede eksisterende språk ved navn BCPL. Dessverre viste det seg at det ikke kunne bli skrevet mange maskinverktøy i B ettersom språket var tregt, og egnet seg dårlig til å benytte seg av alle funksjonene ved PDP-11, slik som den mer avanserte bruken av byte. Det var av disse årsakene at Ritchie bestemte seg for å prøve å forbedre B betraktelig. Disse utviklingene førte til at et nytt, og betraktelig kraftigere språk ble skapt, nemlig C.

Funksjoner og videreutviklinger

C har blitt tatt i bruk over såpass lang tid fordi det støtter strukturert programmering, et paradigme som ligger til bunns for det aller meste av utviklingen av moderne programvare. Dette gjør at C, som er et høynivåspråk, er i stand til å programmere på svært maskinelt vis, noe som har vist seg å være et problem for mange høynivåspråk. Til forskjell fra de fleste lavnivåspråk kan C også tas i bruk på de aller fleste maskiner. Denne balansen mellom å kunne brukes på de fleste maskiner, samt også uttrykkes på maskinelt vis, gjør at C har et stort bruksområde til dags dato.

Doktorgradsstudenten Bjarne Stroustrup fra Danmark bestemte seg en dag for å utvikle C videre, og legge til en rekke flere funksjoner, noe som førte til at C++ ble skapt. C i seg selv er et språk som egner seg godt for nybegynnere, noe som gjør C++ til et språk for viderekomne ettersom de to språkene i stor grad er særdeles like. Siden C++ ble oppfunnet i 1985 har språket blitt kjent som en mer objektorientert variant av C. Ettersom C++ har såpass sterke røtter i C brukes de to språkene ofte symbiotisk når det gjelder utviklingen av operativsystemer og programvare.

Utviklingen av C#

C# er enda en videreutvikling av C-språket, men med en rekke tydelige forskjeller fra vanlig C og C++. C# ble utviklet i 2002 av en gruppe ansatte ved Microsoft under ledelse av Anders Hejlsberg. Til tross for at språket helt tydelig har sine røtter i C, er det basert på rammeverket fra .NET. Det som i størst grad skiller C# fra C og C++, er at C# opererer innen bytekode i stedet for maskinkode. Dette vil si at kode som skrives i C# utføres på en virtuell maskin som automatisk oversetter koden til generisk maskinkode. C# brukes sjeldnere i kommersiell software enn C/C++.

Leave a Reply

Your email address will not be published. Required fields are marked *