Hva er objektorientert programmering?
Til å begynne med, la oss først definere Objektorientert programmering. Programmeringskonseptet kjent som Oop deler data og logikk i gjenbrukbare, modulære enheter kjent som objekter. Disse objektene inneholder data (kalt egenskaper eller attributter) og funksjoner (kalt metoder) som kan manipulere og samhandle med dataene. I Oop, Vektleggingen er på å lage veldefinerte og innkapslede objekter som kan kommunisere med hverandre for å utføre en oppgave.
Er C-programmeringsspråkobjektorientert?
Dessverre fungerer C -programmeringsspråket som et prosessuelt språk i stedet for et objektorientert. Med tanke på dette kan vi nå vurdere årsakene.
1: Klasser
Ideen om klasser er et av hovedbegrepene til OOP. EN klasse beskriver attributtene og metodene som tilhører objektet og fungerer som en blåkopi for å bygge objekter. Dessverre mangler C en innebygd metode for klasse definisjon. Imidlertid er det fortsatt mulig å lage en klasselignende struktur Bruke C -datastrukturer og funksjoner. Disse strukturene kan holde data, og funksjonene kan utføre operasjoner på disse dataene, omtrent som en klasse.
2: Innkapsling
Nok et viktig aspekt av Oop er data innkapsling. Innkapsling refererer til ideen om å skjule data og begrense tilgangen til den for å sikre at den bare blir endret på en kontrollert måte. C har Nei Innebygde mekanismer for innkapsling, Men det kan implementeres manuelt ved hjelp av teknikker som struktur og pekere.
3: Arv
En klasse evne til å arve Attributter og funksjoner fra en annen klasse er et annet avgjørende aspekt av OOP. Selv om C ikke har en kompilatorstøtte for arvemekanismer, arv kan gjøres med pekere og strukturer ved å plassere arvet Klasseattributtstruktur som det første medlemmet av den avledede klasseattributtstrukturen.
4: Polymorfisme
C også mangler en innebygd funksjon for Polymorfisme, som lar objekter ta på seg forskjellige former og typer. Imidlertid kan C oppnå en form for Polymorfisme Ved å erklære pekere som peker på funksjoner etter bruk av strukturer.
Konklusjon
Mens C gjør det ikke ha innebygd Støtte for objekt orientert Programmeringsfunksjoner som klasser, innkapsling, arv, og Polymorfisme, Det er fortsatt mulig å skrive objekt orientert Kode ved hjelp av C -datastrukturer og funksjoner. Som et resultat er det nøyaktig å hevde at C er et programmeringsspråk som støtter objektorientert programmering, men det er ikke utelukkende en. Det er imidlertid verdt å merke seg at bruk av C for Oop krever en mer manuell tilnærming sammenlignet med språk som er spesielt designet for Oop, som Java eller Python.