AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren

Wie OOP lernen ?

Ein Thema von Neutral General · begonnen am 4. Nov 2005 · letzter Beitrag vom 5. Nov 2005
Antwort Antwort
Benutzerbild von Neutral General
Neutral General

Registriert seit: 16. Jan 2004
Ort: Bendorf
5.219 Beiträge
 
Delphi 10.2 Tokyo Professional
 
#1

Wie OOP lernen ?

  Alt 4. Nov 2005, 18:34
Hi,

also ich habe letztens mal mit Hilfe eines Freundes "richtig" OOP programmiert. Das hat mir Spaß gemacht und ich glaube es bringt noch mehr als Spaß ^^
Die Frage ist : Wie lernt man OOP am besten ?
Wahrscheinlich wird mir zumindest einmal gesagt "Learning by doing". Ok aber welches Art von Programm eigenet sich da am besten für den Anfang ?
Michael
  Mit Zitat antworten Zitat
tigerman33

Registriert seit: 30. Jul 2005
Ort: München
423 Beiträge
 
Delphi 2005 Professional
 
#2

Re: Wie OOP lernen ?

  Alt 4. Nov 2005, 18:47
Der beste Weg ist learning by doing.

Im Ernst, da es sich bei OOP um einen Programmieransatz handelt (quasi eine Strategie) ist IMHO jedes Projekt dafür geeignet. Bei extrem kleinen, übersichtlichen Projekten muss es nicht unbedingt effizient sein (der Aufwand mag dann größer sein als gerechtfertigt), aber funktionieren wird es auf jeden Fall. Und wann immer du mit der VCL arbeitest, ist das ja im Prinzip schon OOP.

Ein gutes Kapitel in der OH für den Anfang wäre auch mit Sicherheit Vererbung.

Viel Spaß und Erfolg bei dem Ganzen.
Christian
Der Computer hilft mir, Probleme zu lösen, die ich ohne Computer nicht hätte.
  Mit Zitat antworten Zitat
Benutzerbild von Luckie
Luckie

Registriert seit: 29. Mai 2002
37.621 Beiträge
 
Delphi 2006 Professional
 
#3

Re: Wie OOP lernen ?

  Alt 4. Nov 2005, 18:49
Vieleicht hilft ja das Klassen-Tutorial: http://www.luckie-online.de/Developer/Delphi/Tutorials/
Michael
Ein Teil meines Codes würde euch verunsichern.
  Mit Zitat antworten Zitat
Benutzerbild von Neutral General
Neutral General

Registriert seit: 16. Jan 2004
Ort: Bendorf
5.219 Beiträge
 
Delphi 10.2 Tokyo Professional
 
#4

Re: Wie OOP lernen ?

  Alt 4. Nov 2005, 19:28
Ok danke Luckie. Ich schau mir deine Tutorials mal morgen an.
Mein Problem ist das man in OOP alles so relativ programmieren muss
Michael
  Mit Zitat antworten Zitat
Benutzerbild von sniper_w
sniper_w

Registriert seit: 11. Dez 2004
Ort: Wien, Österriech
893 Beiträge
 
Delphi 6 Enterprise
 
#5

Re: Wie OOP lernen ?

  Alt 4. Nov 2005, 20:20
Zitat:
Mein Problem ist das man in OOP alles so relativ programmieren muss
Na ja. Alles ist relativ.

OOP ist nicht so schwer wenn man sich daran gewöhnt hat.

Im Grunde mache ich es immer so: Alles ist ein "objekt". Das hat seine Eigenschaften, die des Objekt beschrieben, und auch Methoden, die diese Eigenschaften verändern. Das sind die Schnittschtellen nach "aussen". Aussen ist alles was nicht zum Objekt gehört.
Wenn es 2 verschiedene Objekten gibt die miteinander "interakten" müssen, dann definierst du ein weiteres Objekt die dies macht.
Katura Haris
Es (ein gutes Wort) ist wie ein guter Baum, dessen Wurzel fest ist und dessen Zweige in den Himmel reichen.
  Mit Zitat antworten Zitat
Benutzerbild von Neutral General
Neutral General

Registriert seit: 16. Jan 2004
Ort: Bendorf
5.219 Beiträge
 
Delphi 10.2 Tokyo Professional
 
#6

Re: Wie OOP lernen ?

  Alt 5. Nov 2005, 11:46
Also nachdem ich den Thread "OOP und RPG" gelesen hab, hab ich auch mal alleine was angefangen. So als Grundgerüst finde ichs schon sehr gut. Da ich mit DelphiX arbeite habe ich mal eine Klasse von TImageSprite abgeleitet. Ich wollte jetzt die Create Methode überschreiben weil ich in beim Createn noch das Bild des Sprites direkt übergeben wollte. Nur wenn ich override benutze dann müssen die Parameter bei dem Constructor genauso sein wie die vom Parent. Das wusste ich schon. Früher hab ich dann noch einen Constructor namens TKlasse.ACreate hinzugefügt die dann alle Parameter hatte die ich wollte. Aber das war halt unschön. Und dann habe ich mir mal die Unit von DelphiX angeschaut wo TSprite definiert ist. Und da ist die Create Methode virtual; Und ich hab mir gedacht : Der Constructor hat auch andere Parameter als der vom normalen TObject und ist damit auch überschrieben. So dann hab ich halt auch ne Klasse abgeleitet von TImageSprite :

Delphi-Quellcode:
type
 TRPGSprite = class(TImageSprite)
  private
  public
   constructor Create(AParent: TSprite; SImage: TPictureCollectionItem); virtual;
 end;
Zitat:
[Warnung] uOther.pas(11): Methode 'Create' verbirgt virtuelle Methode vom Basistyp 'TImageSprite'
Also erstmal : TObject->TSprite (Create virtual)-> TImageSprite (Create override)-> TRPGSprite (Create virtual)

und dann bekomme ich diese Warnung. Also es funktioniert alles perfekt. Ist die Warnung berechtigt ?
Und ich sehe virtual im Moment als eine flexibles override mit dem ich sogar neue Parameter hinzufügen kann.

Also ich habe jetzt erfahren das man das so machen muss :

Delphi-Quellcode:
type
 TRPGSprite = class(TImageSprite)
  private
  public
   constructor Create(AParent: TSprite; SImage: TPictureCollectionItem); reintroduce;
 end;
auch wenn ich den Begriff reintroduce noch nie gehört hab - es funktioniert
Michael
  Mit Zitat antworten Zitat
Themen-Optionen Thema durchsuchen
Thema durchsuchen:

Erweiterte Suche
Ansicht

Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 12:49 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