Zum Inhalt springen
L

Das Video kommt von YouTube: erst beim Abspielen verbindet sich die Seite mit YouTube (Google).

Was ist Objektorientierte Programmierung?

Programmieren Starten16:44 163.874 Aufrufe veröffentlicht Auf YouTube

Das Wichtigste aus dem Video

Tipp auf eine Zeit – das Video springt genau dorthin.

Transkriptautomatisch erstellt · 113 Zeilen
Herunterladen
  1. 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
  2. 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
  3. objektorientierte programmierung bzw ganz einfach gesagt objektorientierung überhaupt ist denn gerade als anfänger wenn man noch auf der suche nach einer
  4. bestimmten programmiersprache ist die man lernen möchte hört man diesen begriff objektorientierung beziehungsweise op oder
  5. 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
  6. 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
  7. überhaupt diese programm diese frage ist eigentlich ziemlich leicht beantwortet und zwar ist die op also die objektorientierte programmierung ein so
  8. genanntes programm ihr paradigma und programmiere paradigma ist ein wort das den meisten leuten jetzt nicht wirklich geläufig ist das bedeutet auf deutsch
  9. gesagt ganz einfach programmiert stil das heißt es handelt sich bei der objektorientierung um einen programmierer stil und um es noch einmal
  10. ganz deutlich zu erklären es ist eine denkweise die man an den tag legt wenn man programmiert mit einer bestimmten sprache und die
  11. objektorientierung ist sozusagen so eine denkweise die man beim programmieren haben kann mit einer bestimmten sprache wie zum beispiel sie schafft die
  12. objektorientiert ist die objektorientierung ist dabei dem menschlichen denkens sehr ähnlich das heißt es handelt sich hierbei um ein
  13. 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
  14. alles in der objektorientierten programmierung wird durch sogenannte objekte beschrieben das heißt alles was in unserem programm
  15. existiert wird durch ein objekt beschrieben haben wir zum beispiel einen hund in unserem programm wollen wir zum beispiel ein
  16. 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
  17. 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
  18. 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
  19. physisch vorstellbare sache die in unserem raum existiert und bei der objektorientierten programmierung ist es im grunde das gleiche alles was da in
  20. 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
  21. 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
  22. jetzt zum beispiel noch einen mensch haben der ist dann natürlich auch ein eigenes objekt und falls sich in unserem spiel
  23. auch ein haus befindet dann ist dieses haus auch ein eigenes projekt objekt und das ist das tolle an der objektorientierten programmierung das
  24. 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
  25. 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
  26. objektorientierten programmieren natürlich auch um einiges erleichtert aber was sind jetzt diese objekte in unseren programmen jedes objekt wird in
  27. unserem programm durch eigenschaften beschrieben das heißt wir haben zum beispiel in unserem spiel ein haus oder machen wir es mal nicht in
  28. 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
  29. 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
  30. eigenschaften machen jedes objekt ja von den anderen objekten die ähnlich sind ja sozusagen jedes objekt wird durch eigenschaften etwas einzigartiges
  31. 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
  32. 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
  33. blau dann hat ein haus ein baujahr 1990 in diesem fall und einen besitzer und der besitzer heißt es mal hier ganz einfach
  34. 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
  35. 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
  36. diese eigenschaften und werden dementsprechend etwas komplett einzigartiges zum beispiel hat dieses haus sechs zimmer neuen fenster die
  37. 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
  38. 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
  39. 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
  40. hin sondern ein objekt kann auch etwas in unserem programm auslösen und diese dinge werden methoden genannt objekte können auch sogenannte methoden
  41. 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
  42. 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
  43. implementieren könnte so kann jeder besitzer von seinem haus dieses haus verkaufen das heißt ein objekt kann auch
  44. verschiedene methoden nennt man das ganze in der objektorientierung implementieren eine methode ist sozusagen so
  45. 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
  46. 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
  47. 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
  48. 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
  49. auch implementierte methoden aufrufen die dann irgend etwas bestimmtes machen das heißt wenn du das noch mal zusammenzufassen ein objekt ist im
  50. grunde ein physisches etwas in unserem programm das durch eigenschaften einzigartig beschrieben wird jetzt kann es von jedem objekttyp auf typen kommen
  51. wir später noch zu sprechen von jedem typ von objekt kann es natürlich jetzt mehrere verschiedene geben jedes dieser objekte ist allerdings
  52. 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
  53. 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
  54. 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
  55. 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
  56. 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
  57. wichtige sache zu sprechen die für die objektorientierte programmierung eine sehr wichtige grundlage darstellt und zwar die so genannten klassen klassen
  58. 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
  59. häuser so zu sagen und diese klasse implementiert die verschiedenen eigenschaften das heißt diese klasse gibt die verschiedenen
  60. 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
  61. eigenen werte das heißt sie geben die eigenschaften und methoden sozusagen vor die ein objekt hat ja das ist im grunde das was
  62. 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
  63. gesagt und diese haus klasse kann diese eigenschaften hier vorgeben anzahl zimmeranzahl fenster farbe baujahr und besitzer das heißt hier werden in der
  64. klasse natürlich noch keine werte in diese eigenschaften geschrieben diese klasse gibt nur vor dass ein haus solche eigenschaften hat diese klasse
  65. 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
  66. wird dieses objekt erzeugt und bekommt dann eigene werte für diese eigenschaften genau so werden in einer klasse auch die methoden definiert das
  67. 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
  68. programmieren und die können wir dann in den einzelnen objekten die von dieser klasse dann abgeleitet beziehungsweise instanziert werden die dann sozusagen
  69. 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
  70. einen bauplan der vorgibt was ein objekt von dieser klasse sozusagen dann beinhaltet welche member nennt man das ganze auch diese objekte beinhalten
  71. 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
  72. sozusagen dieser klasse beziehungsweise einen bestandteil davon von jeder klasse können dabei dann auch beliebig viele objekte erstellt werden
  73. 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
  74. 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
  75. 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
  76. erstellen um das ganze einfach noch mal zusammenzufassen alle dinge in einem objektorientierten programm sind objekte und klassen sind ein bauplan für diese
  77. objekte klassen geben einfach nur die dinge vor die ein objekt beinhaltet wie zb verschiedene eigenschaften oder methoden die eine bestimmte funktion
  78. 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
  79. selbst aufrufen und ja das heißt klassen sind einfach nur baupläne und objekte sind dann tatsächlich physische dinge die in
  80. unserem programm dann existieren jetzt gibt es in der objektorientierten programmierung allerdings noch ein sehr sehr cool das konzept das sich die
  81. vererbung nennt und das die programmierung sehr sehr sehr viel einfacher macht von objektorientierten programmen
  82. denn in der objektorientierten programmierung ist es möglich klassen zu vererben bei der vererbung übernimmt eine klasse
  83. 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
  84. habe ich dir mal ein beispiel vorbereitet nehmen wir mal an wir haben eine klasse namens säugetieren unserem programm
  85. die ganz einfach ein säugetier beschreibt das heißt hier sind eigenschaften drin wie zum beispiel geschlecht von einem tier und methoden
  86. vielleicht auch noch die zum beispiel sagen essen und trinken das heißt ein säugetier hat ein geschlecht und ein
  87. zeuge ein säugetier kann essen und trinken das geschlechter sind frau eine eigenschaft implementiert die methoden essen und trinken sind methoden
  88. 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
  89. 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
  90. ein bisschen spezifischer sind zb einen hund oder eine katze was ist denn jetzt hier das besondere wir haben die grundeigenschaften und
  91. grund methoden eines säugetiers bereits in der klasse säugetier definiert beziehungsweise auch implementiert das bedeutet dass in säugetier die
  92. grundfunktionalitäten schon mal vorprogrammiert wurde und jetzt können wir aufbauend auf dieser klasse neue klassen erstellen die all diese
  93. funktionalitäten schon beinhalten ohne dass wir das ganze neu programmieren müssen ein hund kann eigene methoden zum
  94. 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
  95. 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
  96. hund hat auch ein geschlecht ein vorprogrammiertes geschlecht das wir nutzen können weil es in säugetier schon definiert wurde
  97. genauso bei der katze eine katze kann zum beispiel rausgehen und die welt erforschen das kann es auch mit einer bestimmten methode machen
  98. 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
  99. 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
  100. 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
  101. katze noch mal selber programmieren mussten und das ist auch ziemlich cool ich hoffe ich habe dir die objektorientierte programmierung in
  102. 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
  103. 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
  104. einfach um einiges einfacher weil wir code nicht immer wiederholt neu schreiben müssen es wäre sehr lästig wenn wir in einer
  105. 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
  106. denselben code wiederholen das wird durch die vererbung verhindert und diese klassen was auch noch ganz wichtig ist was die objektorientierte programmierung
  107. auch sehr toll macht diese klassen können mir immer und immer wieder verwenden wenn wir sie einmal programmiert haben vorausgesetzt wir
  108. 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
  109. 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
  110. 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
  111. 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
  112. 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
  113. 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