OOP Erstellen eigener Objekte die es schon gibt "schlau"?

Chisao

Mitglied
Hallo Forum,
Ich Programmiere jetzt schon länger in Java und komme mit jedem Programm immer ein Stück weiter. Jetzt komme ich mittlerweile an den Punkt, dass ich einen riesigen Spaß an eigenen Objekten finde^^. Deswegen produziere ich mittlerweile auch für so ziemlich alles eigene Objekte. Jetzt stellt sich mir die Frage, ob dies denn sowohl als Lernmittel, als auch Effizient gut ist. Damit meine ich natürlich nicht, dass ich neue Objekte erstelle die auch nur von mir benötigt werden(Beispiel Level für ein Spiel), sondern eher, dass ich schon vorhandene Objekte selbst neu programmiere(Beispiel: Buttons).



TL;DR:
Ist es schlau bereits vorhandene Objekte "neu zu erfinden" für:
-Effizients(Wenn man beispielsweise nicht den Umfang eines vorhanden Objektes benötigt und Methoden abkürzen will)
-Neues lernen/Langsames schreiben einer eigenen API.

Vielen Dank für die Antworten 🙂!
 
Nein, das wird in der Literatur nicht als effizientes Vorgehen beschrieben.

I.d.R. sollte man so weit wie möglich wiederverwenden. Oder bestehendes Erweitern. Wenn du der Meinung bist, dass ein Algo nicht effizient ist oder überflüssig, dann schreibe ihn neu.

Aber es könnte sein, dass in deinen Augen etwas ineffizent oder zu komplex aussieht, was gar nicht so ist 😉
 
Bereits vorhandenes "neu zu erfinden" ist Unsinn - das bereits vorhandene (insbesondere aus den Java-Standardbibliotheken) ist meist von vielen sehr guten Programmierern entwickelt, überarbeitet, getestet und optimiert worden - da kann man kaum noch etwas verbessern.

Was sinnvoll sein kann, ist, zusätzlich benötigte Funktionalität "draufzusatteln" - z.B. wenn deine Buttons immer einen "Klick" (Soundausgabe) machen sollen, dann kann man von der vorhandenen Klasse JButton erben und entsprechend erweitern.

Ich gehe an Probleme immer so heran:
"Habe dieses (Teil-)Problem nur ich, oder ist es wahrscheinlich, dass auch andere es lösen mussten?"
Falls "auch andere": Suche deren (beste) Lösung, (versteh' sie), baue sie in dein Programm ein/baue darauf auf.
Falls "nur ich/mein Programm": Suche trotzdem erst mal, ob's das vielleicht doch schon (als Sourcecode/Bibliothek) gibt ~ erst danach muss man sich doch selbst eine Vorgehensweise ausdenken...
 
Hallo Forum,
Ich Programmiere jetzt schon länger in Java und komme mit jedem Programm immer ein Stück weiter. Jetzt komme ich mittlerweile an den Punkt, dass ich einen riesigen Spaß an eigenen Objekten finde^^. Deswegen produziere ich mittlerweile auch für so ziemlich alles eigene Objekte. Jetzt stellt sich mir die Frage, ob dies denn sowohl als Lernmittel, als auch Effizient gut ist. Damit meine ich natürlich nicht, dass ich neue Objekte erstelle die auch nur von mir benötigt werden(Beispiel Level für ein Spiel), sondern eher, dass ich schon vorhandene Objekte selbst neu programmiere(Beispiel: Buttons).



TL;DR:
Ist es schlau bereits vorhandene Objekte "neu zu erfinden" für:
-Effizients(Wenn man beispielsweise nicht den Umfang eines vorhanden Objektes benötigt und Methoden abkürzen will)
-Neues lernen/Langsames schreiben einer eigenen API.

Vielen Dank für die Antworten 🙂!

Ich denke du meinst eher modifizieren, weil wenn du ein Code kürzen tust oder ändern, so modifizierst du den Code an deine Bedürfnisse.

Neu erfinden wäre, wenn ich ein neuer Code schreibe, welcher die gleiche Funktion abdeckt.
 

Neue Themen


Zurück
Oben