Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Object-Pascal / Delphi-Language (https://www.delphipraxis.net/32-object-pascal-delphi-language/)
-   -   Erklärung für Objekte? (https://www.delphipraxis.net/186298-erklaerung-fuer-objekte.html)

GroZ 21. Aug 2015 10:46

Delphi-Version: 5

Erklärung für Objekte?
 
Ich versteh nicht so wirklich was Objekte sind. Also laut den Büchern und Wikipedia eine Kapselung von Daten die Zusammengehören samt Funktionalitäten. Aber ich kann mir darunter nicht viel Vorstellen. Also bräuchte ich etwas was ich damit vergleichen kann also ein Beispiel aus dem Alltag beispielsweise.

stahli 21. Aug 2015 11:20

AW: Erklärung für Objekte?
 
Wenn Du z.B. die Position von 5 farbigen Bällen verändern willst, dann würdest Du in Deinem Programm ohne OOP 5 Farben und 5 Positionen verwalten.
Dann müsstest Du in einer Schleife die einzelnen Positionen und Farben verändern und die Bälle zeichnen.

Mit Objekten kannst Du das übersichtlicher gestalten.
Eine Klasse TBall hat selbst eine Farbe und eine Position.
Aber er kann auch selbständig seine Positiion ändern, wenn man eine Methode GeheXPixelNachRechts(X: Integer) einrichtet.
Ggf. kann sich das Objekt dann auch gleich selbst zeichnen.

Das Programm muss das dann nicht mehr selbst berechnen sondern kann das der Klasse übertragen.

Und Du kannst die Klasse TBall in weiteren Programmen ganz einfach einsetzen, da die gesamten Daten und Fähigkeiten ja bereits in der Klasse enthalten sind.

Es vereinfacht also die Übersichtlichkeit und die Wiederverwendung.

Der schöne Günther 21. Aug 2015 11:20

AW: Erklärung für Objekte?
 
Was du in deinem Satz beschreibst sind Klassen. Objekte sind "Instanzen" einer Klasse. Ein Beispiel aus dem Delphi-Alltag:

Die Buttons die du auf dein Formular wirfst. Die Klasse ist
Delphi-Quellcode:
TButton
. Wenn du zwei Buttons platzierst sind das zwei Objekte vom Typ TButton. Mit normalerweise dem Namen
Delphi-Quellcode:
Button1
und
Delphi-Quellcode:
Button2
.

Das Beispiel womit ich es gelernt hatte war eine Klasse "Dosensuppe" mit dem Objekt "erascoSuppentopf". Es hatte ein Feld "inhalt" vom Typ Integer und eine Methode auslaufen() ;-)

Edit: Ja! Das Tutorial gibt es immer noch :-D
http://home.arcor.de/jtaubenheim/cpp...apitel_16.html

Sir Rufo 21. Aug 2015 11:21

AW: Erklärung für Objekte?
 
Lies dir dazu bitte folgendes durch
http://www.delphitutorials.de/node/23

Wenn dann noch Fragen zu den Objekten sind, dann hier stellen

Darlo 21. Aug 2015 11:26

AW: Erklärung für Objekte?
 
Damit das Tippen nicht umsonst war:
Zitat:

Zitat von Darlo (Beitrag 1312994)
Zitat:

Zitat von GroZ (Beitrag 1312993)
Ich versteh nicht so wirklich was Objekte sind. Also laut den Büchern und Wikipedia eine Kapselung von Daten die Zusammengehören samt Funktionalitäten. Aber ich kann mir darunter nicht viel Vorstellen. Also bräuchte ich etwas was ich damit vergleichen kann also ein Beispiel aus dem Alltag beispielsweise.

Ein erzeugtes TEdit ist ein Objekt. Hat Funktionen wie OnChange und Eigenschaften wie Text. Zusätzlich ist das Ding auch visuell, was jedoch keine Voraussetzung für ein Objekt ist.
Aber natürlich auch von mir der allgemeine Tenor:
http://www.delphi-treff.de/object-pa...nd-objekte/#m3

Besser erklärt und anschaulicher Erklärt geht kaum, dazu noch der 1. Treffer von google ;-)


frankyboy1974 21. Aug 2015 11:27

AW: Erklärung für Objekte?
 
Hallo,
in der EDV geht es darum Daten zu Verarbeiten. In der funktionalorientierten Programmierung waren diese Seiten noch getrennt, deswegen hat man irgendwann die objektorientierte Programmierung 'erfunden', Daten und Verarbeitungsanweisungen bilden eine untrennbare Einheit, es macht überhaupt keinen Sinn Daten und Verarbeitungsanweisungen immer wieder neu zu zuordnen zu müssen. Wenn du also eine Klasse programmierst, überlegst du dir welche Daten du für die Klasse benötigst und welche Sachen die Klasse können soll.

Um mal ein Beispiel aus meiner Programmiererlaufbahn zu nehmen, ich habe mal eine Gehaltsabrechnungssoftware geschrieben. In diesem Programm gab es eine Klasse TMitarbeiter, der Mitarbeiter einer Firma muss, für die Gehaltsabrechnung gewisse Dinge Kennen (Seine Steuerklasse, seinen SV-Status, natürlich auch seinen Namen und seine Adresse), daneben ist der Mitarbeiter aber auch für gewisse Dinge zuständig gewesen (beispielsweise wieviele Stunden hat er im konkreten Monat gearbeitet). Ich habe also einmal eine Klasse TMitarbeiter programmiert und für jeden realen Mitarbeiter in der konkreten Firma, die es abzurechnen galt, habe ich mir eine Instanz dieser Klasse erzeugt und dies sind dann die Objekte.

mfg

frank

Mavarik 22. Aug 2015 12:45

AW: Erklärung für Objekte?
 
OK das ist jetzt kein Beispiel aus dem Leben, aber

Ein Object ist ein Pointer auf einen Speicherbereich.

Daher muss ein Object erzeugt werden (create) und auch wieder vernichtet werden (destroy)

Im Speicherbereich liegen die Variablen und auch die Adressen der Funktionen und Proceduren.

Durch oop. können die Proceduren und Funktionen aber auch auf Väter-Objecte oder Kinder-Objecte zeigen...

Mavarik


Alle Zeitangaben in WEZ +1. Es ist jetzt 00:56 Uhr.

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz