OOP oder prozedurale Programmierung?

Welche Programmierparadigma bevorzugt ihr?


  • Umfrageteilnehmer
    64
also ich muss zugeben das ich OOP einfach geordneter finde, da es doch sehr auf Methoden aufrufen basiert. Wenn ich von jemand anderes einen prozentualen Quellcode bekomme muss ich zugeben das ich da häufig Probleme habe durchzusehen.
Auch in Beziehung von:
- welche globalen Variablen sind jetzt wirklich global und welche werden nur kurz benötigt,
- welche Funktionen gibt es, werden diese häufiger im Quellcode verwendet oder sind sie nur für diese spezielle Anwendung.
- teilweise muss ich immer wieder den Quellcode von oben nach unten durchgehen um den verlauf zu verfolgen

Wie man merkt bin ich schon ein sehr überzeugter OOP Mensch, doch das ist ja bekanntlich nur eine Meinung. :))

-------
aber dann muss ich auch wieder zugeben, das ich hier einen sauberen OOP Quellcode mit einem unaufgeräumten proz. Quellcode vergleiche, was natürlich für mich von Vorteil ist.
 
Zuletzt bearbeitet:
Ich mache beruflich mit C# und privat mit Java rum :)
Also insgesamt nur OOP.
Da ich aber auch mit C mal per JNI mir nativen Code für Java schreiben will, wird auch die alte Art der programmierung bei mir wieder einzug halten.
Ich habe früher auch viel mit C++ gemacht ohne OOP dabei zu verwenden.

Aber insgesamt würde ich nur noch mit OO Sprachen arbeiten wenn nicht anders nötig :)
 
Ich habe mal eine Frage zu Objektorientierung.

Wenn ihr vor einer Aufgabe steht wie entscheidet ihr wie viele Klassen ihr dafür machen wollt?

Beispielsweise eine Registration und ein Login coden.
Ich würde zwei Klassen machen, eine Register Klasse und eine Login Klasse.
Und Sachen wie Validierung der Formular Daten, Benutzer Daten vergleichen, neue User Daten eintragen usw. alles als Methoden in diesen beiden Klassen machen.

Woran orientiere ich mich wie viele Klassen ich machen sollte?
 
Das ist eine gute Frage. Es geht nicht um die Anzahl der Klassen. Letztendlich ist OOP ja auch viel mehr als einfach nur Klassen. Wenn du nur zwei Klassen machst und da ne Menge Methoden rein, dann ist das kein OOP. Das ist rein prozedural und hat mit OOP nix zu tun.

Je nach Anwendungsfall gibt es unterschiedliche Anforderungen an den Aufbau der Anwendung. Und hier sollte man erst die ganze Anwendung kennen. Man kann in OOP nicht den Login nur für sich betrachten. Beispiel: Resultat wird ein angemeldeter User sein. Dieser wird sehr wahrscheinlich ein Objekt sein. Welche Eigenschaften hat also ein User deiner Anwendung. Dann das Login. Idealerweise (und nur dann macht OOP Sinn) ist eine Klasse für die Authentifizierung zuständig, eine andere für die Autorisierung. Wieder eine andere für die Validierung des Formulars. Und noch eine andere zum Beispiel für das Formular an sich (in J2EE+Struts wären das z.B. JSPs und sogenannte Actions). Diese Klassen sollten dann nach Möglichkeit nicht voneinander abhängen. (Das heisst, nirgendwo im Quellcode von Login ist eine Variable des Typs Anwender.) Es sollte ein generelles Interface verwendet werden und die tatsächliche Klasse, die verwendet wird z.B. über Dependency Injection instanziert werden.

Wobei das obige Beispiel ein Beispiel von vielen ist. OOP ist viel viel mehr als nur "Klassen" Es gibt Abhängigkeiten, Vererbung, Polymorphie, Patterns (sozusagen Kochrezepte, auf jeden Fall empfehlenswert sich da einmal zu informieren). Dann der Prozess des Programmierens überhaupt. Regelmässiges Refactoring ist eine gute Idee, und in OOP einfacher als in prozeduraler Programmierung (meine Meinung).

Man merkt der Aufwand ist recht hoch. Würde ich also ein Shellskript in OOP machen? Nie im Leben. Wo ist die Grenze? Wie so vieles beim Programmieren basieren all diese Sachen auf a) Erfahrung und b) einem kontinuierlichen Lernprozeß. Schwierig ist es nur, das alleine aus Büchern zu schaffen, es gibt viel Mist. Mein Studium hat mich da auf einen ganz guten Weg gebracht denke ich. @supersucker: Doch wir haben es gelernt, von der Pike auf und mit Smalltalk, meiner Meinung nach für OOP die ideale Lernsprache. Aber wer denkt, man ist irgendwann fertig mit Lernen, der hat ohnehin etwas nicht verstanden.
 
Ahh, endlich wieder eine Umfrage; wie kann man daran teilnehmen ?

Die Umfragen hier sind immer so befruchtend, und die Kommentare sind echt gut!
BTW. ich esse gar keine Eier zum Frühstück, aber Müsli


Uuups, ist ja uralt die Umfrage, wie kann man denn eine Neue starten ?
Hätte viele Ideen ?
 
Zuletzt bearbeitet:
da musst du auf "new Thread" gehen in einem geeigneten Forum natürlich ... wenn du alles ausgefüllt hast, kommt ganz unten die Frage "Umfrage erstellen" dies musst anhäckeln und mit Leben befüllen und zum guten Schluss "Thema erstellen" drücken ... hoffe ich konnte dir helfen ...
 

Ähnliche Themen

Programmierung unter Linux

Tipps zum Einstieg

Problem mit Apache2 + MySQL Server

GUI Programmierung: Toolkit vergleich

Zurück
Oben