object oriented programming c
Introduksjon til objektorientert programmering i C ++.
Med denne opplæringen starter vi en serie opplæringsprogrammer for å lære om C ++ som et objektorientert programmeringsspråk.
Som vi vet, før objektorientert programmering (OOP), ble programmer skrevet ved hjelp av prosessuelle språk. Prosessuelle språk stresser funksjoner. De større problemene deles opp i mindre delproblemer og skrives som funksjoner.
=> Se her for å utforske hele C ++ opplæringslisten.
Prosessuelle språk tok ikke hensyn til data. Som et resultat var muligheten for ikke å løse problemet på en effektiv måte høy. Da data nesten ble neglisjert, kom datasikkerheten lett i fare.
Alle disse ulempene med prosessuell programmering ble overvunnet av objektorientert programmering.
I denne opplæringen vil vi diskutere det grunnleggende i objektorientert programmering og kort sagt alle funksjonene i OOP.
Hva du vil lære:
- Objektorientert programmering i C ++
- Hvorfor C ++ er delvis OOP?
- OOP-funksjoner
- Fordeler med OOP
- Konklusjon
- Anbefalt lesing
Objektorientert programmering i C ++
Objektorientert programmering dreier seg om data. Hovedprogrammeringsenheten til OOP er objektet. Et objekt er en representasjon av en sanntidsenhet og består av data og metoder eller funksjoner som fungerer på data. På denne måten er data og funksjoner tett bundet og datasikkerhet sikret.
I OOP representeres alt som et objekt, og når programmer kjøres, interagerer objektene med hverandre ved å sende meldinger. Et objekt trenger ikke å vite implementeringsdetaljene til et annet objekt for å kommunisere.
Bortsett fra objekter støtter OOP forskjellige funksjoner som er oppført nedenfor:
- Klasser
- Innkapsling
- Abstraksjon
- Arv
- Polymorfisme
Ved hjelp av OOP skriver vi programmer ved hjelp av klasser og objekter ved å bruke de ovennevnte funksjonene. Et programmeringsspråk sies å være et ekte objektorientert programmeringsspråk hvis alt det representerer bruker et objekt. Smalltalk er ett språk som er et rent objektorientert programmeringsspråk.
På den annen side sies det at programmeringsspråk som C ++ og Java er delvis objektorienterte programmeringsspråk.
Hvorfor C ++ er delvis OOP?
C ++ språk ble designet med hovedintensjonen om å bruke objektorienterte funksjoner til C-språk.
Selv om C ++ språk støtter funksjonene i OOP som klasser, objekter, arv, innkapsling, abstraksjon og polymorfisme, er det få grunner til at C ++ er klassifisert som et delvis objektorientert programmeringsspråk.
defekte livssyklus i programvaretesting
Vi presenterer noen av disse grunnene nedenfor:
# 1) Opprettelse av klasse / objekter er valgfritt
I C ++ er hovedfunksjonen obligatorisk og er alltid utenfor klassen. Derfor kan vi bare ha en hovedfunksjon i programmet og kan klare oss uten klasser og objekter.
Dette er det første bruddet på Pure OOP-språk der alt er representert som et objekt.
# 2) Bruk av globale variabler
C ++ har et konsept med globale variabler som er erklært utenfor programmet og kan nås av en hvilken som helst annen enhet i programmet. Dette bryter med innkapsling. Selv om C ++ støtter innkapsling med hensyn til klasser og objekter, tar den seg ikke av det i tilfelle globale variabler.
# 3) Tilstedeværelse av en vennefunksjon
C ++ støtter en venneklasse eller funksjon som kan brukes til å få tilgang til private og beskyttede medlemmer av andre klasser ved å gjøre dem til en venn. Dette er enda en funksjon av C ++ som bryter OOP-paradigmet.
For å konkludere, selv om C ++ støtter alle OOP-funksjonene nevnt ovenfor, gir den også funksjoner som kan fungere som en løsning for disse funksjonene, slik at vi kan klare oss uten dem. Dette gjør C ++ til et delvis objektorientert programmeringsspråk.
OOP-funksjoner
Her vil vi introdusere forskjellige OOP-funksjoner som brukes til programmering.
Klasser og objekter
Et objekt er en grunnleggende enhet i objektorientert programmering. Et objekt inneholder data og metoder eller funksjoner som fungerer på disse dataene. Objekter tar plass i minnet.
En klasse er derimot en blåkopi av objektet. Omvendt kan et objekt defineres som en forekomst av en klasse. En klasse inneholder et skjelett av objektet og tar ikke noe plass i minnet.
La oss ta en Eksempel av en bilgjenstand. Et bilobjekt som heter “Maruti” kan ha data som farge; merke, modell, fartsgrense osv. og funksjoner som akselerere. Vi definerer et annet objekt 'ford'. Dette kan ha lignende data og funksjoner som det forrige objektet pluss noen flere tillegg.
På samme måte kan vi ha mange objekter med forskjellige navn som har lignende data og funksjoner og noen mindre variasjoner.
Så i stedet for å definere disse lignende dataene og funksjonene i disse forskjellige objektene, definerer vi en blåkopi av disse objektene som er en klasse som heter Car. Hver av gjenstandene ovenfor vil være forekomster av denne klassebilen.
Abstraksjon
Abstraksjon er prosessen med å skjule irrelevant informasjon fra brukeren. For eksempel , når vi kjører bilen, starter vi først motoren ved å sette inn en nøkkel. Vi er ikke klar over prosessen som går i bakgrunnen for å starte motoren.
Ved hjelp av abstraksjon i programmering kan vi skjule unødvendige detaljer for brukeren. Ved å bruke abstraksjon i applikasjonen vår påvirkes ikke sluttbrukeren selv om vi endrer den interne implementeringen.
Innkapsling
Innkapsling er prosessen der data og metodene eller funksjonene som brukes på dem er samlet sammen. Ved å gjøre dette er data ikke lett tilgjengelig for omverdenen. I OOP oppnår vi innkapsling ved å gjøre data-medlemmer som private og ha offentlige funksjoner for å få tilgang til disse data-medlemmene.
Arv
Ved å bruke arveobjekt av en klasse kan du arve eller tilegne seg egenskapene til objektet til en annen klasse. Arv gir gjenbrukbarhet av kode.
Som sådan kan vi designe en ny klasse ved å tilegne oss egenskapene og funksjonaliteten til en annen klasse, og i denne prosessen trenger vi ikke endre funksjonaliteten til overordnede klassen. Vi legger bare til ny funksjonalitet i klassen.
safe gratis youtube til mp3 converter
Polymorfisme
Polymorfisme betyr mange former.
Polymorfisme er et viktig trekk ved OOP og implementeres vanligvis som operatøroverbelastning eller funksjonsoverbelastning. Overbelastning av operatører er en prosess der en operatør oppfører seg annerledes i forskjellige situasjoner. På samme måte oppfører funksjonen seg i forskjellige situasjoner i overbelastning av funksjoner.
Dynamisk binding
OOP støtter dynamisk binding der funksjonsanrop løses ved kjøretid. Dette betyr at koden som skal utføres som et resultat av en funksjonsanrop, avgjøres ved kjøretid. Virtuelle funksjoner er et eksempel på dynamisk binding.
Melding overføres
I OOP kommuniserer objekter med hverandre ved hjelp av meldinger. Når objekter kommuniserer, føres informasjon frem og tilbake mellom objektene. En melding består vanligvis av objektnavnet, metodenavnet og faktiske data som skal sendes til et annet objekt.
Fordeler med OOP
La oss diskutere noen av fordelene med OOP.
# 1) Gjenbrukbarhet
OOP gjør at eksisterende kode kan brukes på nytt gjennom arv. Vi kan enkelt skaffe oss eksisterende funksjonalitet og forbedre den uten å måtte skrive om koden igjen. Dette resulterer i mindre oppblåst kode.
# 2) Modularitet
Når vi modulerer programmet i OOP, er det enkelt å endre eller feilsøke programmet hvis det oppstår et problem eller en ny funksjon eller forbedring skal legges til. Modularisering hjelper også med å gi klarhet i koden og gjør den mer lesbar.
# 3) Fleksibilitet
OOP hjelper oss med fleksibel programmering ved hjelp av polymorfisme-funksjonen. Ettersom polymorfisme tar mange former, kan vi ha operatorer eller funksjoner som vil fungere med mange objekter og dermed redde oss fra å skrive forskjellige funksjoner for hvert objekt.
# 4) Vedlikehold
Det er lettere å opprettholde koden ettersom det er enkelt å legge til nye klasser, objekter osv. Uten mye omstrukturering eller endringer.
# 5) Skjuling av data og informasjon
OOP hjelper oss med å skjule data og dermed beskytte informasjon fra å lekke. Bare dataene som kreves for at programmet skal fungere tilfredsstillende, blir eksponert for brukeren ved å skjule iboende detaljer.
Konklusjon
OOP er det viktigste og fleksible programmeringsparadigmet for moderne programmering. Det er spesielt nyttig i modellering av virkelige problemer og er derfor veldig populært.
Vi har diskutert de forskjellige funksjonene i OOP i denne opplæringen. Fremover vil vi diskutere alle disse funksjonene i detalj.
Det neste emnet i denne serien 'OOP med C ++' vil fokusere på klasser og objekter i detalj.
=> Klikk her for den absolutte C ++ treningsserien.
Anbefalt lesing
- OOP Java: Introduksjon til objektorientert programmering i Java
- C ++ datatyper
- Topp 10 Data Science-verktøy i 2021 for å eliminere programmering
- Dataabstraksjon i C ++
- Introduksjon til datastrukturer i C ++
- Unix Pipes Tutorial: Pipes in Unix Programming
- QTP Opplæring # 8 - Lær om QTP-opptaksmoduser, Object Spy og Object Repositories
- 70+ BEST C ++ opplæringsprogrammer for å lære C ++ programmering GRATIS