Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Sonstige Werkzeuge (https://www.delphipraxis.net/63-sonstige-werkzeuge/)
-   -   IDE Erweiterungen: ModelMaker (und CodeExplorer) (https://www.delphipraxis.net/130219-ide-erweiterungen-modelmaker-und-codeexplorer.html)

quantum 5. Mär 2009 03:37


IDE Erweiterungen: ModelMaker (und CodeExplorer)
 
Meiner bescheidenen Meinung nach empfinde ich diese Tools als total unterschätzt und ungenügend im Bewusstsein unserer Community. Nirgendwo lese ich ein Wort darüber, obwohl diese Tools unser Delphi-Programmiererleben so umfassend verbessern können, wie es keine anderen Delphi-Erweiterungen können.
Scheinbar mag es daran liegen, dass es ein kostenpflichtiges Produkt ist (obwohl sehr schnell amortisierend).

Die GExperts und CnWizards sind unverzichtbare Helfer bei unserem Aufenthalt im Delphi-Editor und der IDE. Die CnWizards haben eigentlich schon die GExperts assimiliert, womit die GExperts durch Unpflege (gibt es diese Wort?) fast schon obsolet sind. Zudem "fressen" sie zudem Castalia (Block-Highlighting) auf.

Aber habt ihr mal mit dem ModelMaker CodeExplorer gespielt? Für alle faulen oder einfach nur pragmatisch und effizient denkenden Programmierer ist das fast das Schlaraffenland :o

Du sitzt gerade in einer Routine und denkst: "ist doch besser den Typ oder den Namen des Argumentes der Routine zu ändern, um mehr Klarheit zu schaffen" - also Name von xy in aPoint, Typ von Integer in TPoint geändert (blödes Beispiel, aber mir ist kein Besseres eingefallen)

Was würdest du jetzt normalerweise machen? SHIFT+STRG+UP und das gleiche im Interface nochmal abändern.
Was für eine Zeitverschwendung die wir täglich machen. In der gesammelten Zeit könnten wir Romane wie der "Herr der Ringe" mit Leichtigkeit schreiben.

Um es kurz zu fassen, beim CodeExplorer (lovely named: MMX) drückt man einfach SHIFT+STRG+Y und die Parameterliste wird synchronisiert, jenachdem wo man sich befindet (Interface oder Implementierung).

Es geht noch weiter...

Meine Klasse soll eine andere Klasse besitzen - eine Komposition. Und täglich grüßt das Murmeltier: privates Feld anlegen, Klasse im Constructor instanziieren, im Destructor freigeben, evtl. - aber nur wenn WIRKLICH nötig als property lesend Zugriff gewähren.

Da freut sich der MMX und kann mal für 10ns Prozessorzeit beanspruchen, erledigt unsere Arbeit, für die wir wohl mind. 5 Minuten benötigen würden (Tippfehler ausgeschlossen).

Dies waren nur 2 Beispiele die in diesem Ding stecken - und da habe ich noch garnicht mit dem ModelMaker angefangen.

Wer Together - also die in Delphi integrierte Modelling-Umgebung kennt und schleichende Abscheu empfindet, der sollte sich mal den ModelMaker anschauen.

Zeit ist das kostbarste was wir besitzen - viele der unnötigen, ständig wiederholenden Vorgänge, die wir beim schreiben unseres Codes in Delphi aufwenden, lassen sich durch diese Tools einsparen.

Probiert es aus! Embarcadero sollte diese Tools in die nächste IDE integrieren. Die max. 100€ Mehrkosten pro Lizenz würden keinen großen Unterschied ausmachen, aber unser geliebtes Delphi doch stark profilieren, da es die Schattenseite der Sprache sehr gut kompensieren würde.

PS: Bevor ich wieder als Werbefuzzi dastehe: NEIN, ich habe keinen Werbevertrag. Ich bin nur sehr zufrieden mit diesen Erweiterungen.

taaktaak 5. Mär 2009 07:19

Re: IDE Erweiterungen: ModelMaker (und CodeExplorer)
 
Moin, Moin.
Ich empfinde deinen Beitrag nicht als Werbung! Er macht mich neugierig - lässt mich nach Interesse weckenden Aussagen aber dennoch etwas ratlos mit der Frage allein: Was ist ModelMaker eigentlich?
Wenn ich mich recht entsinne, ist auch bei D7 eine (vermutlich abgespeckte) Version von ModelMaker dabei. Hab' sie nicht installiert, da ich mir darunter nichts vorstellen konnte. Also, vielleicht könntest du noch etwas mehr berichten, was das eigentlich ist. Habe ich das richtig verstanden, das dieser in deinen Anwendungsbeispielen genannte "CodeExplorer" ein Bestandteil des ModelMakers ist?

Uwe Raabe 5. Mär 2009 07:27

Re: IDE Erweiterungen: ModelMaker (und CodeExplorer)
 
MMX ist das erste, was ich auf eine frische Delphi-Installation drauf packe und den Desktop so einstelle, daß er immer sichtbar ist. Ohne das Ding fühle ich mich irgendwie "amputiert".

Die meisten Funktionen lassen sich per Tastenkürzel aufrufen und in den Dialogen ist im Allgemeinen auch eine reine Tastatur-Navigation möglich. So arbeitet man mit MMX quasi fließend während der Programmierung.

Auf der Seite ModelMaker Code Explorer gibt es links eine Liste von Demo-Movies. Die zeigen zwar nur ein paar ausgewählte Features, sollten aber schon mal Lust auf die Demo-Version machen.

Auf alle anderen Experten kann ich notfalls verzichten, aber nicht auf MMX. Und das schönste ist: es gibt immer wieder Erweiterungen und Verbesserungen. Gerrit Beuze ist da sehr rege und reagiert sehr schnell auf Anregungen. Ich kann MMX nur jedem uneingeschränkt empfehlen.

[Edit]
@taaktaak:
ModelMaker ist ein eigenständiges Programm, das eine Art Model-Driven-Development ermöglicht. Source-Code und Modell sind bidirektional verknüpft. Einen ähnlichen Ansatz verfolgt auch das in einigen Delphi-Versionen vorhandene Together (meiner Meinung nach aber lange nicht so gut).

ModelMaker Code Explorer ist ein Plug-In für Delphi mit dem das Code-Schreiben in Delphi drastisch erleichtert wird.

Die beiden haben ausser dem Author nur ein paar Konzepte und Resourcen gemein und sind insbesondere getrennt zu erwerben.

taaktaak 5. Mär 2009 07:35

Re: IDE Erweiterungen: ModelMaker (und CodeExplorer)
 
Sehr interessant - Danke!
Das Wochenende ist ja nicht mehr weit.

Allerdings ...
sehe gerade, dass für MMX 199 bzw. 99 Euronen fällig werden
:cry:

himitsu 5. Mär 2009 08:08

Re: IDE Erweiterungen: ModelMaker (und CodeExplorer)
 
Joar, die Preise immer (für Hobbyprogrammierer ist vieles halt nicht wirklich erschwinglich)

Und ich hab mir mal einige der Videos angesehn ...
ok, da sind schon ein/zwei nette Funktionen dabei,
aber vieles würde ich wohl garnicht nutzen, da ich, wenn ich mal irgendwann gebrauchen könnte, garnicht mehr weiß daß es das gibt und wo es sich nochmal versteckte. Da bin ich dann mit selbermachen wohl schneller als mit'm Suchen danach, ob es da wirklich was für gab.

Das größte Hindernis ist da aber auch noch meine "eigene" Codeformatierung ... würde mich voll jackig machen, wenn da ständig was zwischendrin anders aussäh.

taaktaak 5. Mär 2009 08:24

Re: IDE Erweiterungen: ModelMaker (und CodeExplorer)
 
Moin himitsu!
Nun wollen wir auch nicht unnötig auf die Tränendrüse drücken: 99 Euro sind nur wenig mehr, als 1x mit der family Essen gehen. Aber: Deine Bedenken bezüglich der Differenzen zur persönlichen Codeformatierung sind tatsächlich ein sehr gewichtiger Punkt. Mit den Jahren gewöhnt man sich eben doch seinen ganz eigenen Stil an - und den bin ich tatsächlich ebenfalls nicht bereit aufzugeben :wink:

dataspider 5. Mär 2009 12:09

Re: IDE Erweiterungen: ModelMaker (und CodeExplorer)
 
Liste der Anhänge anzeigen (Anzahl: 1)
Zitat:

Zitat von taaktaak
Moin himitsu!
Nun wollen wir auch nicht unnötig auf die Tränendrüse drücken: 99 Euro sind nur wenig mehr, als 1x mit der family Essen gehen. Aber: Deine Bedenken bezüglich der Differenzen zur persönlichen Codeformatierung sind tatsächlich ein sehr gewichtiger Punkt. Mit den Jahren gewöhnt man sich eben doch seinen ganz eigenen Stil an - und den bin ich tatsächlich ebenfalls nicht bereit aufzugeben :wink:

Wobei man eigentlich alles notwendige konfigurieren kann (siehe Anhang):
Block indention
Wrap margin
Wrap indention

Und per Default ist die Formatierung top!

Ich würde auch ohne nicht mehr glücklich sein ;)

Frank

Meflin 5. Mär 2009 12:18

Re: IDE Erweiterungen: ModelMaker (und CodeExplorer)
 
Quantum, das was du hier beschreibst sollte doch locker-leicht auch mit dem Delphi-2009-eigenen Refactoring gehen. Kennt da jemand sein eigenes Handwerkszeug nicht?!

dataspider 5. Mär 2009 12:26

Re: IDE Erweiterungen: ModelMaker (und CodeExplorer)
 
Zitat:

Zitat von Meflin
Quantum, das was du hier beschreibst sollte doch locker-leicht auch mit dem Delphi-2009-eigenen Refactoring gehen. Kennt da jemand sein eigenes Handwerkszeug nicht?!

Tja, und hier kennt eben einer MMX nicht.

Frank

Meflin 5. Mär 2009 12:30

Re: IDE Erweiterungen: ModelMaker (und CodeExplorer)
 
Zitat:

Zitat von dataspider
Tja, und hier kennt eben einer MMX nicht.

Ich habe nie behauptet, dass es die IDE nicht um nützliche Features erweitern täte :roll:

Aber so Sachen wie Parameter umbenennen oder Typen ändern hauen selbst einen BDS 2006 Besitzer nicht mehr vom Hocker :roll:

Uwe Raabe 5. Mär 2009 12:31

Re: IDE Erweiterungen: ModelMaker (und CodeExplorer)
 
Zitat:

Zitat von Meflin
Quantum, das was du hier beschreibst sollte doch locker-leicht auch mit dem Delphi-2009-eigenen Refactoring gehen. Kennt da jemand sein eigenes Handwerkszeug nicht?!

Was das Refactoring betrifft, hat Delphi seit 2007 sicher um einiges nachgezogen. In einigen Fällen ist das bordeigene Refactoring auch vorzuziehen, da es Unit-übergreifend implementiert ist. Allerdings ist es auch um Einiges umständlicher anzuwenden und man kommt oft mit MMX wesentlich schneller zum Ziel. Für den, der mit verschiedenen Delphi-Versionen arbeiten muss, bietet MMX allerdings eine übergreifende Funktionalität an - immerhin werden neue Features (wenn überhaupt möglich) auch für ältere Delphi-Versionen bereitgestellt, was man von den Bordmitteln wohl nicht erwarten kann. (Übrigens: es gibt MMX auch für VS.)

mkinzler 5. Mär 2009 12:34

Re: IDE Erweiterungen: ModelMaker (und CodeExplorer)
 
Zitat:

Übrigens: es gibt MMX auch für VS.
Und Together auch
Together zeigt seine Stärken sicherlich erst in den teureren Ausgaben

quantum 5. Mär 2009 17:47

Re: IDE Erweiterungen: ModelMaker (und CodeExplorer)
 
Zitat:

Zitat von Meflin
Quantum, das was du hier beschreibst sollte doch locker-leicht auch mit dem Delphi-2009-eigenen Refactoring gehen. Kennt da jemand sein eigenes Handwerkszeug nicht?!

Falls du die Parameteränderung meinst: so locker-leicht geht es mit dem D2009-Refaktoring eben nicht - falls überhaupt.
Ruft man bei D2009 zb das "Change Parameters"-Refaktoring auf, so ist bei mir "Edit" ständig deaktiviert. Man kann nur umständlich Parameter hinzufügen oder löschen, aber nicht ändern. Es könnte aber auch ein BUG sein.

Zudem gibt es noch viele kleine Helfer in MMX, wie "Field to Property", "Add Event" (Event-Handler inkl. Dispatcher).
Was auch genial ist: "Apply Class Template". Damit kann man Design-Patterns (auch selbst erstellte) auf die ausgewählte Klasse anwenden, welche sämtliche Felder, Methoden, Eigenschaften und Implementierung eingenständig einfügt und mit bestehendem Code verschmilzt. Was das alles an Zeit spart, kann man kaum zählen.

Allerdings bedarf es einer Umgewöhnungszeit, bis man die Funktionen inne hat und bei Bedarf aufruft. Es sind unglaublich viele. Dafür habe ich mir einen kleinen Zettel mit Shortcuts unter dem Monitor geklebt, bis die "sitzen".

Meflin 5. Mär 2009 18:29

Re: IDE Erweiterungen: ModelMaker (und CodeExplorer)
 
Zitat:

Zitat von quantum
Falls du die Parameteränderung meinst: so locker-leicht geht es mit dem D2009-Refaktoring eben nicht - falls überhaupt.
Ruft man bei D2009 zb das "Change Parameters"-Refaktoring auf, so ist bei mir "Edit" ständig deaktiviert. Man kann nur umständlich Parameter hinzufügen oder löschen, aber nicht ändern. Es könnte aber auch ein BUG sein.

Hm, ka. Ich hab das eben nur schnell Testweise mit dem BDS2006 hier alles probiert, und da hat das wunderbar funktioniert :)

Ralf Kaiser 5. Mär 2009 18:36

Re: IDE Erweiterungen: ModelMaker (und CodeExplorer)
 
Zitat:

Zitat von himitsu
Das größte Hindernis ist da aber auch noch meine "eigene" Codeformatierung ... würde mich voll jackig machen, wenn da ständig was zwischendrin anders aussäh.

Ähmm... Sag bloss du formatierst deine Quellen per Hand??

Da nimmt man einen Codeformatierer (DelForEx, GExperts mit Formatter oder den der JEDIs) stellt ihn so ein, dass er nach den eigenen Formatierungsregeln formatiert und einen Tastendruck später ist der Source so wie er sein sollte. Auch wenn MMX etwas mit anderer Formatierung eigefügt hat...

:-D

Ciao,
Ralf

P.S. auch ich fühle mich ohne MMX als wenn man mir mindestes eine Hand auf den Rücken gebunden hätte!

Uwe Raabe 5. Mär 2009 18:49

Re: IDE Erweiterungen: ModelMaker (und CodeExplorer)
 
Zitat:

Zitat von Alfi001
P.S. auch ich fühle mich ohne MMX als wenn man mir mindestes eine Hand auf den Rücken gebunden hätte!

Wie amputiert - sag ich doch...

stahli 9. Jun 2014 18:13

AW: IDE Erweiterungen: ModelMaker (und CodeExplorer)
 
Ich blicke beim MM leider ein bissl wie ein Schwein in´s Uhrwerk... ;-(

Hat denn jemand schon ein komplettes Projekt mit dem ModelMaker realisiert?
Kann man auch so etwas wie eine Factory realisieren und mit Schnittstellen arbeiten?
Kann man einer Klasse auch mehrere Schnittstellen zuweisen?

Schade, dass es für den MM keine Videotutorials gibt.
Die auf der MM-Seite sind ja auch nicht sehr ergiebig.

Bei kompletter Planlosigkeit ist der MM wohl etwas komplex, um sich durch ausprobieren zurecht zu finden.

Oder kennt jemand gute Demovideos (oder umfangreiche deutsche Texte)?

stahli 11. Jun 2014 10:13

AW: IDE Erweiterungen: ModelMaker (und CodeExplorer)
 
*ZaghaftesPüschelchen*


Alle Zeitangaben in WEZ +1. Es ist jetzt 05:50 Uhr.

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