Kursinnhold
C++ OOP
C++ OOP
Hvorfor Bruke Objektorientert Programmering?
Tenk deg at du har fått i oppgave å utvikle en programvareapplikasjon for å håndtere studentdata. Det kan virke enkelt i starten. Du kan begynne med å bruke enkle variabler for å lagre en students navn og GPA.
main.cpp
int main() { std::string student_name = "Bob"; float grade_point_average = 3.3; }
Denne tilnærmingen fungerer fint for å håndtere en enkelt student, men det blir mer komplisert med flere studenter. En naiv løsning kan være å bruke separate variabler for hver enkelt, men dette blir raskt uhåndterlig. Å bruke arrayer er et bedre alternativ for å redusere gjentakelse og forbedre organisering.
main.cpp
int main() { std::string names[2] { "Bob", "Ann" }; float avarage_grades[2] { 3.3, 3.7 }; }
Dette fungerer for øyeblikket. Men hva om du må lagre flere detaljer, som telefonnumre, innmeldingsdatoer eller kurslister? Etter hvert som datamengden øker, blir det å håndtere flere separate arrayer både tungvint og feilutsatt.
main.cpp
int main() { std::string names[2] { "Bob", "Ann" }; float average_grades[2] { 3.3f, 3.7f }; std::string emails[2] { "bob@example.com", "ann@example.com" }; }
For å håndtere disse dataene kan du lage funksjoner som tar disse verdiene som argumenter for å utføre handlinger som å skrive ut studentinformasjon, oppdatere GPA eller endre e-postadresse. Men med flere studenter og felt ender du opp med å gjenta de samme argumentene i mange funksjoner, noe som gjør koden feilutsatt og vanskelig å vedlikeholde.
functions.h
void get_student_info(int id, std::string names[], float gpa[], std::string emails[]); void set_student_info(int id, std::string names[], float gpa[], std::string emails[]); void set_student_name(int id, std::string names[], float gpa[], std::string emails[]); void set_student_gpa(int id, std::string names[], float gpa[], std::string emails[]); void set_student_email(int id, std::string names[], float gpa[], std::string emails[]);
Selv enkle oppgaver krever at du sender det samme settet med arrayer gjentatte ganger. Når du legger til flere felt, blir koden stadig mer kompleks og repeterende.
Objektorientert programmering (OOP) løser dette ved å la deg gruppere relatert data og atferd i en enkelt beholder kalt en klasse. Dette forenkler koden din og forbedrer innkapsling ved å kontrollere tilgangen til interne detaljer gjennom tydelige, veldefinerte grensesnitt.
Takk for tilbakemeldingene dine!