Das Video kommt von YouTube: erst beim Abspielen verbindet sich die Seite mit YouTube (Google).
Was ist Objektorientierte Programmierung?
Das Wichtigste aus dem Video
Tipp auf eine Zeit – das Video springt genau dorthin.
Transkriptautomatisch erstellt · 113 Zeilen
- hallo und herzlich willkommen auf dem youtube-kanal von programmieren - starten punkt.de mein name ist jannik grün und im heutigen video möchte ich
- dir eine kleine einführung bieten in die welt der objektorientierten programmierung das heißt ich möchte dir in diesem video einfach mal erklären was
- objektorientierte programmierung bzw ganz einfach gesagt objektorientierung überhaupt ist denn gerade als anfänger wenn man noch auf der suche nach einer
- bestimmten programmiersprache ist die man lernen möchte hört man diesen begriff objektorientierung beziehungsweise op oder
- objektorientierte programmierung sehr häufig und deswegen möchte ich da jetzt einfach mal erklären was das ist in vielen leuten ist gar nicht klar worum
- es sich dabei überhaupt handelt und ja ich würde sagen wir fangen einfach mal mit einer sehr einfachen frage an was ist die objektorientierte programmierung
- überhaupt diese programm diese frage ist eigentlich ziemlich leicht beantwortet und zwar ist die op also die objektorientierte programmierung ein so
- genanntes programm ihr paradigma und programmiere paradigma ist ein wort das den meisten leuten jetzt nicht wirklich geläufig ist das bedeutet auf deutsch
- gesagt ganz einfach programmiert stil das heißt es handelt sich bei der objektorientierung um einen programmierer stil und um es noch einmal
- ganz deutlich zu erklären es ist eine denkweise die man an den tag legt wenn man programmiert mit einer bestimmten sprache und die
- objektorientierung ist sozusagen so eine denkweise die man beim programmieren haben kann mit einer bestimmten sprache wie zum beispiel sie schafft die
- objektorientiert ist die objektorientierung ist dabei dem menschlichen denkens sehr ähnlich das heißt es handelt sich hierbei um ein
- programm ihr stil der sehr einfach ist zu verstehen da er unserem eigentlichen menschlichen denkens sehr ähnlich ist und das hat einen ganz bestimmten grund
- alles in der objektorientierten programmierung wird durch sogenannte objekte beschrieben das heißt alles was in unserem programm
- existiert wird durch ein objekt beschrieben haben wir zum beispiel einen hund in unserem programm wollen wir zum beispiel ein
- programmieren und da befindet sich ein hund in unserem spiel dann ist dieser hund ein eigenes objekt genau so wie ein mensch der einen hund auf der straße
- sieht das auch eigentlich so wahrnimmt der nimmt den hund als ein existierendes etwas dar als ein objekt das sich in unserer welt befindet ich möchte damit
- jetzt nicht sagen dass hunde objekte sind um gottes willen das könnte ich genauso über menschen jetzt auch sagen damit meine ich ganz einfach es ist eine
- physisch vorstellbare sache die in unserem raum existiert und bei der objektorientierten programmierung ist es im grunde das gleiche alles was da in
- unserem programm sofort kommt alles was wir in unserem programm haben wird durch objekte beschrieben ein hund ist zum beispiel ein eigenes objekt für sich ein
- hund objekt ein mensch in einem programm der durch irgendwie code beschrieben wird wird durch ein objekt beschrieben das heißt wenn wir in unserem spiel
- jetzt zum beispiel noch einen mensch haben der ist dann natürlich auch ein eigenes objekt und falls sich in unserem spiel
- auch ein haus befindet dann ist dieses haus auch ein eigenes projekt objekt und das ist das tolle an der objektorientierten programmierung das
- ist schon mal im grunde der ganze grundsatz davon alles sind objekte das heißt alles wird einzeln für sich programmiert das ist schon mal das erste
- und alles ist getrennt voneinander das ist auf jeden fall sehr toll und alles kann man sich wie ein physisches etwas vorstellen dass das denken beim
- objektorientierten programmieren natürlich auch um einiges erleichtert aber was sind jetzt diese objekte in unseren programmen jedes objekt wird in
- unserem programm durch eigenschaften beschrieben das heißt wir haben zum beispiel in unserem spiel ein haus oder machen wir es mal nicht in
- mit dem beispiel von einem spiel sondern mit dem beispiel von einer verwaltungs software für immobilien jedes haus in unserem programm das wir gespeichert
- haben ist als ein sogenanntes haus objekt abgespeichert und jedes dieser häuser hat eine reihe von eigenschaften die es natürlich beschreiben denn diese
- eigenschaften machen jedes objekt ja von den anderen objekten die ähnlich sind ja sozusagen jedes objekt wird durch eigenschaften etwas einzigartiges
- jedes hat seine eigenen eigenschaften und ein haus könnte zum beispiel die eigenschaften anzahl zimmer haben dieses haus hat zum beispiel acht zimmer dann
- haben wir eine eigenschaft namens anzahl fenster dieses hoster zehn fenster dann hat jedes haus natürlich auch eine farbe das ist auch eine eigenschaft das ist
- blau dann hat ein haus ein baujahr 1990 in diesem fall und einen besitzer und der besitzer heißt es mal hier ganz einfach
- hanswurst so das sind die eigenschaften die dieses objekt beschreiben die dieses objekt zu etwas einzigartigem machen wir könnten jetzt natürlich noch ein
- anderes haus in unserem programm haben dass auch ein haus objekt ist und dieses haus hätte dann natürlich dieselben eigenschaften aber andere werte für
- diese eigenschaften und werden dementsprechend etwas komplett einzigartiges zum beispiel hat dieses haus sechs zimmer neuen fenster die
- farbe grün wurde 1975 gebaut und gehört max mustermann das heißt objekte werden in unserem code durch eigenschaften sozusagen beschrieben und natürlich kann
- es von jedem typ von objekt auch mehrere objekte geben die sich dann natürlich nur in den eigenschaften unterscheiden objekte werden jetzt allerdings nicht
- nur durch eigenschaften beschrieben objekte können natürlich auch etwas tun das heißt ein objekt hat nicht nur eigenschaften und existierte vor sich
- hin sondern ein objekt kann auch etwas in unserem programm auslösen und diese dinge werden methoden genannt objekte können auch sogenannte methoden
- beziehungsweise funktionen aufrufen das heißt ein objekt kann nicht nur stelle dastehen sondern auch etwas machen zb könnte dieses haus hier eine methode
- implementieren die verkaufen heißt und wenn man sein haus verkauft dann bekommt man natürlich geld das wäre eine sinnvolle methode die ein haus
- implementieren könnte so kann jeder besitzer von seinem haus dieses haus verkaufen das heißt ein objekt kann auch
- verschiedene methoden nennt man das ganze in der objektorientierung implementieren eine methode ist sozusagen so
- was wie eine funktion im grunde das gleiche nur das ist halt in der objektorientierung methoden genannt wird und diese methoden können code enthalten
- der etwas bestimmtes auslöst zb die verkaufen methode sorgt dafür dass das haus an einen anderen besitzer weitergegeben wird und der besitzer dem
- es davor gegeben den es davor gehört hat dass der sein geld bekommt genauso könnte dieses haus auch eine methode beinhalten die abreißen heißt und mit
- dieser methode würde man dieses haus objekt im grunde zerstören man würde es einfach vernichten und ja so kann jedes objekt natürlich
- auch implementierte methoden aufrufen die dann irgend etwas bestimmtes machen das heißt wenn du das noch mal zusammenzufassen ein objekt ist im
- grunde ein physisches etwas in unserem programm das durch eigenschaften einzigartig beschrieben wird jetzt kann es von jedem objekttyp auf typen kommen
- wir später noch zu sprechen von jedem typ von objekt kann es natürlich jetzt mehrere verschiedene geben jedes dieser objekte ist allerdings
- einzigartig und für sich weil die eigenschaft werte ja sich unterscheiden können die werte die in den eigenschaften drin stecken wie zb der
- besitzer von einem haus der besitzer von einem haus könnte zb hier mal max mustermann sein und auf der anderen seite für ein anderes haus objekt könnte
- der besitzer hans wurst sein und jedes objekt hat natürlich dann auch die methoden für sich selber die es für sich selber aufrufen kann
- und das wären zum beispiel so dinge wie eine verkaufen methode die das haus verkauft und an einen anderen besitzer weitergibt oder eine abreißen methode
- mit der man sein haus zerstören kann warum auch immer man das wollen würde aber man kann es implementieren jetzt kommen wir aber auf eine ganz ganz
- wichtige sache zu sprechen die für die objektorientierte programmierung eine sehr wichtige grundlage darstellt und zwar die so genannten klassen klassen
- sind nämlich baupläne für objekte das heißt es gibt zum beispiel eine klasse namens haus das heißt wir haben eine klasse die heißt haus ein bauplan für
- häuser so zu sagen und diese klasse implementiert die verschiedenen eigenschaften das heißt diese klasse gibt die verschiedenen
- eigenschaften vor die andere haus objekte haben und jedes objekt das dann tatsächlich in unserem code existiert hat für diese eigenschaften dann seine
- eigenen werte das heißt sie geben die eigenschaften und methoden sozusagen vor die ein objekt hat ja das ist im grunde das was
- eine klasse macht sie beschreiben sozusagen die art von objekt bzw den objekttyp jetzt kann es zb hier diese klasse haus geben wie gerade eben schon
- gesagt und diese haus klasse kann diese eigenschaften hier vorgeben anzahl zimmeranzahl fenster farbe baujahr und besitzer das heißt hier werden in der
- klasse natürlich noch keine werte in diese eigenschaften geschrieben diese klasse gibt nur vor dass ein haus solche eigenschaften hat diese klasse
- beschreibt also eine ja ein haus objekt sozusagen nur ganz abstrakt ohne werte reinzuschreiben und wenn wir von dieser klasse dann ein objekt erzeugen dann
- wird dieses objekt erzeugt und bekommt dann eigene werte für diese eigenschaften genau so werden in einer klasse auch die methoden definiert das
- heißt in einer klasse können wir dann die methoden verkaufen vermieten abreißen oder renovieren implementieren das heißt sie kodieren und wirklich
- programmieren und die können wir dann in den einzelnen objekten die von dieser klasse dann abgeleitet beziehungsweise instanziert werden die dann sozusagen
- von dieser klasse erstellt werden diese objekte in denen können wir diese methoden dann aufrufen das heißt eine klasse ist wie gesagt nur
- einen bauplan der vorgibt was ein objekt von dieser klasse sozusagen dann beinhaltet welche member nennt man das ganze auch diese objekte beinhalten
- member sind so was wie die eigenschaften zum beispiel jede eigenschaft ist ein eigener member und jede methode ist natürlich auch ein member ein mitglied
- sozusagen dieser klasse beziehungsweise einen bestandteil davon von jeder klasse können dabei dann auch beliebig viele objekte erstellt werden
- das haben wir vorhin schon gesehen das heißt wenn wir jetzt zum beispiel eine klasse namens haus haben können wir auch mehrere häuser erstellen die eigene
- eigenschaft werte haben zb hat dieses einer aus dem besitzer max mustermann und das andere haus hat dem besitzer hans wurst völlig egal wir können so
- viele objekte erstellen von einer klasse wie wir wollen eine klasse ist nämlich nur einen bauplan und nach diesem bauplan können wir dann objekte
- erstellen um das ganze einfach noch mal zusammenzufassen alle dinge in einem objektorientierten programm sind objekte und klassen sind ein bauplan für diese
- objekte klassen geben einfach nur die dinge vor die ein objekt beinhaltet wie zb verschiedene eigenschaften oder methoden die eine bestimmte funktion
- beinhalten und die objekte haben dann eigene werte für diese eigenschaften und können diese methoden die wir implementiert haben natürlich für sich
- selbst aufrufen und ja das heißt klassen sind einfach nur baupläne und objekte sind dann tatsächlich physische dinge die in
- unserem programm dann existieren jetzt gibt es in der objektorientierten programmierung allerdings noch ein sehr sehr cool das konzept das sich die
- vererbung nennt und das die programmierung sehr sehr sehr viel einfacher macht von objektorientierten programmen
- denn in der objektorientierten programmierung ist es möglich klassen zu vererben bei der vererbung übernimmt eine klasse
- alle eigenschaften und methoden einer anderen klasse das heißt man kann dadurch eine klasse erweitern ohne diese selber zu verändern und dafür
- habe ich dir mal ein beispiel vorbereitet nehmen wir mal an wir haben eine klasse namens säugetieren unserem programm
- die ganz einfach ein säugetier beschreibt das heißt hier sind eigenschaften drin wie zum beispiel geschlecht von einem tier und methoden
- vielleicht auch noch die zum beispiel sagen essen und trinken das heißt ein säugetier hat ein geschlecht und ein
- zeuge ein säugetier kann essen und trinken das geschlechter sind frau eine eigenschaft implementiert die methoden essen und trinken sind methoden
- so jetzt haben wir diese klasse aber diese klasse naja da kamen wir ja noch nicht wirklich ein objekt von erstellen wir wollen ja nicht einfach nur ein
- säugetier erstellen und nicht wissen was jetzt das eigentlich für ein tier ist wir wollen auf dieser klasse aufbauend natürlich noch neue tiere erstellen die
- ein bisschen spezifischer sind zb einen hund oder eine katze was ist denn jetzt hier das besondere wir haben die grundeigenschaften und
- grund methoden eines säugetiers bereits in der klasse säugetier definiert beziehungsweise auch implementiert das bedeutet dass in säugetier die
- grundfunktionalitäten schon mal vorprogrammiert wurde und jetzt können wir aufbauend auf dieser klasse neue klassen erstellen die all diese
- funktionalitäten schon beinhalten ohne dass wir das ganze neu programmieren müssen ein hund kann eigene methoden zum
- beispiel beinhalten wie zum beispiel bällen oder stöckchen fangen und er kann auch eigene eigenschaften haben wie zb einen namen und ein herrchen und so
- weiter und so fort dieser hund kann allerdings auch weil er von säugetier erbt ein etwas essen und er kann auch etwas trinken und dieser
- hund hat auch ein geschlecht ein vorprogrammiertes geschlecht das wir nutzen können weil es in säugetier schon definiert wurde
- genauso bei der katze eine katze kann zum beispiel rausgehen und die welt erforschen das kann es auch mit einer bestimmten methode machen
- eine katze kann an dem kratzbaum kratzen und so weiter und so fort halt bestimmte dinge die katzen halt so machen ich habe keine ahnung ich bin runde besitzer
- katzen können wir ganz spezifisch für sich als eine klasse programmieren und runde können wir auch ganz spezifisch für sich hat seine klasse programmieren
- aber auch die katze erbt von säugetier und kann dementsprechend etwas essen und etwas trinken und hat ein geschlecht ohne dass wir das ganze in der klasse
- katze noch mal selber programmieren mussten und das ist auch ziemlich cool ich hoffe ich habe dir die objektorientierte programmierung in
- diesem video ein bisschen näher bringen können ich hoffe ich konnte das ganze verständlich erklären und ich hoffe ich konnte dir auch
- erklären was die vererbung bedeutet vererbung ist sozusagen einfach nur eine art und weise um klassen zu erweitern und ja das macht das programmieren
- einfach um einiges einfacher weil wir code nicht immer wiederholt neu schreiben müssen es wäre sehr lästig wenn wir in einer
- klasse und zb auch die methode essen und trinken implementieren müssten und dann in der katze das ganze dann auch noch mal neu machen müssten immer wieder
- denselben code wiederholen das wird durch die vererbung verhindert und diese klassen was auch noch ganz wichtig ist was die objektorientierte programmierung
- auch sehr toll macht diese klassen können mir immer und immer wieder verwenden wenn wir sie einmal programmiert haben vorausgesetzt wir
- haben einen guten programm ihr stil angewendet das heißt wenn wir eine klasse komplett unabhängig von anderen klassen entwickeln wie zb diesen hund
- dann könnten wir diesen hund in einem anderen projekt auch wieder verwenden ohne ihn neu programmieren zu müssen das ist auch sehr cool an der
- objektorientierten programmierung okay aber das war es jetzt mit diesem thema ich hoffe das war eine einfache einführung in das thema ich hoffe ich
- konnte dir das ganze ein bisschen näher bringen und falls es dir gefallen hat dann würde ich mich sehr über einen daumen nach oben freuen es würde mich
- auch sehr freuen wenn du diesen kanal abonnierst denn so wächst dieser kanal und du bekommst auch die neuesten videos immer direkt in deiner abo box geliefert
- das ist also eine win win situation in diesem sinne bedanke ich mich fürs zu sehen wünscht dir noch einen schönen tag und verabschiede mich auf wiedersehen
Zum Nachlesen
ObjektorientierungUnter Objektorientierung (kurz OO) versteht man in der Softwaretechnik eine Sichtweise auf komplexe Systeme, bei der ein System durch das Zusammenspiel …
Objektorientierte ProgrammierungDie objektorientierte Programmierung (kurz OOP) ist ein auf dem Konzept der Objektorientierung basierendes Programmierparadigma. Die Grundidee besteht darin …
Abgeleitete KlasseDie abgeleitete Klasse erbt alle Attribute (Member) und Methoden der Basisklasse, kann dabei aber nur auf die nicht als privat deklarierten direkt zugreifen.
Klasse (Objektorientierung)Die Klasse dient als Bauplan für die Abbildung von realen Objekten in Softwareobjekte und beschreibt Attribute (Eigenschaften) und Methoden (Verhaltensweisen) …