Einzelnen Beitrag anzeigen

Der_Unwissende

Registriert seit: 13. Dez 2003
Ort: Berlin
1.756 Beiträge
 
#172

Re: Einige Fragen zu Turbodelphi

  Alt 29. Aug 2006, 11:33
Zitat von Jasocul:
Das Argument, dass für das Lernen die TE-Versionen gut sind, kann ich nicht zu 100% unterstützen. Wer ernsthaft mit Delphi programmieren will (oder lernen will), kommt um OOP nicht herum. Und was ist besser dafür geeignet als Komponenten-Entwicklung?
Hi,
hierzu möchte ich dann aber auch ein wenig etwas sagen, deswegen:
[OT]
In einigen (vielen) Diskussionen wurde hier schon gezeigt, dass man in Delphi auch weiterhin sehr gut um die OOP rum kommt. Einerseits gibt es immer noch eine Menge Menschen die OOP einfach nicht einsetzen wollen (die Gründe sind nicht immer gleich gut nachvollziehbar), andererseits ist mit Delphi kein reines OOP möglich (an einigen Stellen kommen Notlösungen ins Spiel). Diese Diskussionen wurden schon genug geführt, also bitte keiner diesen Thread hier für Antworten zum Thema ob Delphi denn nun OOP kann oder nicht, ist hier schließlich schon OT!

Jedenfalls denke ich man kommt in Delphi um die OOP rum, wenn man möchte. Andererseits hat die Komponentenentwicklung nun wirklich nicht viel mit Objekten zu tun. Das finde ich ist eine einfach falsche Aussage! Ich finde es schlimm genug, dass eine TComponent immer als Komponente bezeichnet wird, zumal der Begriff der Komponente nun wirklich sehr losgelöst von einer Programmiersprache sein sollte. Eine genaue Definition gibt es ja (imho) nicht, was eine Komponente ausmacht, aber so grob gibt es da ja Menschen an denen man sich orientieren kann. Da wird dann sehr stark abstrahiert (was ja der sinn einer Komponente ist), so dass letztlich nur eine Blackbox mit bekannten Abhängigkeiten und Schnittstellen bleibt, deren Implementierung nichts mit OOP zu tun haben muss!
Natürlich hast du nicht unrecht, dass sich die OOP hier anbieten würde, aber ich sehe noch nicht, warum du eine Einbindung in die IDE benötigst?! Auch das hat nichts mit dem Sinn einer Komponente zu tun. Nimm hier einfach die ganzen non-visual Komponenten, die Delphi anbietet, welche davon kannst du nun mit weniger Komfort benutzen?
[/OT]

Hier möchte ich das OT auch verlassen, jedoch an den letzten Satz anknüpfen. Ich denke gerade hier liegt ein großer Vorteil für Leute die Delphi lernen wollen. Möchte man eine nicht-VCL Komponente verwenden, so muss man diese "per Hand" erzeugen, initialisieren und freigeben. Dies führt (hoffentlich) dazu, dass die Leute wieder lernen, ihre Variablen (muss ja nicht alles eine Komponente sein) wieder zu initialisieren und bei Gelegenheit auch mal frei zu geben. Ich denke gerade hier ist der Lerneffekt deutlich höher, als wenn der Objektinspektor irgendwelche Aufgaben für einen übernimmt. Gerade die Jedis voll zu installieren bringt doch (für Anfänger und Fortgeschrittene) eine Vielzahl von neuen Tabs in die IDE, voll mit Dingen die man nicht zuordnen kann. Ich les hier häufiger mal Fragen zu solchen Sammlungen, wo dann steht was macht eigentlich TXyz?
Vorallem denke ich auch, dass man sich der echten Komponenten Entwicklung annhähern muss, wenn man die Express-Versionen bedienen möchte, denn wenn es keinen OI gibt, der einem alle Eigenschaften und Ereignisse auflistet, muss die Dokumentation stimmen! Und das ist einer der wirklich wichtigen Punkte bei Komponenten, sie müssen gut dokumentiert sein. Das fehlt ja gerne mal bei einigen Sammlungen.
Hier finde ich wäre GLScene ein gutes Beispiel. Die haben eine ganze Menge Funktionalität zur Verfügung gestellt und lange Zeit recht wenig Doku dazu. Ist zwar trotzdem eine sehr schöne OpenGL Kapselung (finde ich), aber jetzt wo auch die Doku nachzieht gewinnt die nochmal deutlich.

Natürlich will ich nicht behaupten, dass die Explorer Versionen jetzt dazu beitragen, dass jeder sauber programmiert und gut dokumentiert, aber es besteht immerhin für einige die Möglichkeit.
Auch für Visuelle Elemente finde ich hält sich die Einschränkung durchaus in Grenzen, da man hier mächtige Mittel (z.B. Align, Anchors und Frames) findet, die einem ein sehr einfaches Design ermöglichen (ohne alles sehen zu müssen).

Ansonsten muss ich auch noch sagen, gibt es eine günstige Alternative zum BDS, wenn man eh nur eine Sprache verwenden möchte. Das gehört auch zu den Turbos, man sollte also die Sicht nicht zu sehr auf die Explorer Versionen beschränken.

Gruß Der Unwissende
  Mit Zitat antworten Zitat