AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Sprachen und Entwicklungsumgebungen Sonstige Fragen zu Delphi Delphi Historie / Überblick über die verschiedenen Delphi Versionen
Thema durchsuchen
Ansicht
Themen-Optionen

Delphi Historie / Überblick über die verschiedenen Delphi Versionen

Ein Thema von MaBuSE · begonnen am 17. Dez 2021 · letzter Beitrag vom 23. Dez 2021
Antwort Antwort
Seite 2 von 2     12   
Benutzerbild von haentschman
haentschman

Registriert seit: 24. Okt 2006
Ort: Seifhennersdorf / Sachsen
5.388 Beiträge
 
Delphi 12 Athens
 
#11

AW: Delphi Historie / Überblick über die verschiedenen Delphi Versionen

  Alt 22. Dez 2021, 06:42
Zitat:
Zu Delphi 4 gab es wenigstens noch das coole VCL-Poster
...als PDF Version D7.

Hängt als A0 im meinem "Büro" in der Firma.
Angehängte Dateien
Dateityp: pdf dokumen.tips_delphi-vcl-hierarchy-poster.pdf (132,6 KB, 55x aufgerufen)
  Mit Zitat antworten Zitat
Benutzerbild von MaBuSE
MaBuSE

Registriert seit: 23. Sep 2002
Ort: Frankfurt am Main (in der Nähe)
1.840 Beiträge
 
Delphi 10 Seattle Enterprise
 
#12

AW: Delphi Historie / Überblick über die verschiedenen Delphi Versionen

  Alt 22. Dez 2021, 10:37
...als PDF Version D7.
Die personal Version war ja wirklich sehr abgespeckt.


Es sollte aber kein Problem sein, einen einfachen "Parser" zu schreiben, der nur die Txyz = class(Tabc) findet und daraus eine Dot-Datei für Graphvis erstellt.

Da würde ja dieses einfache Format reichen:
Code:
digraph ObjektHierarchie{
   TObject -> Exception
   Exception -> EExternal
   EExternal -> EMathError
   TObject -> TPersistent
   TPersistent -> TCpmonent
}
Der Quellcode ist ja bei den meisten Delphi Versionen dabei.
Die Schwierigkeit wäre dann "nur" alle Objekte zu erkennen.

Farbig markieren könnte man dann z.B. RTL, VCL, FMX oder Class, Interface, ... oder Community, Professional, Enterprise oder ...

Dazu wäre dann ein CSV mit den verschiedenen Informationen hilfreich, aus denen man dann die Dot Dateien erstellen kann.

z.B.
Code:
Vorfahre;Objekt;Lib;Typ;Ver;...
;TObject;RTL;Class;All;...
TObject;Exception;RTL;Error;Class;All;...
Exception;EExternal;RTL;Error;Class;All;...
EExternal;EMathError;RTL;Error;Class;All;...
TObject;TPersistent;VCL;Class;All;...
TPersistent;TCpmonent;VCL;Class;All;...
Das wäre auch ein schönes Projekt für Anfänger oder leicht Fortgeschrittene um den Umgang mit Textdateien zu erlernen.

Die Dateien liegen in "C:\Program Files (x86)\Embarcadero\Studio\21.0\source".
(Statt der 21.0 steht da natürlich die entsprechende IDE Version eures Delphies -> Kann man in der Versionen Listen oben nachlesen )

In der Unit System.IOUtils.pas liegen 3 "Klassen" (Ja, ich weiß es sind Records) mit denen man das Dateihandling relativ einfach hinbekommt. (TDirectory, TPath und TFile)

Zum Parsen kann das File einfach in eine TStringList (Oder TMemo) geladen werden. sl.LoadFromFile(Dateiname) oder TMemo1.Lines.LoadFromFile(Dateiname) .
Dann kann man ganz einfach die die Zeilen zugreifen.
Delphi-Quellcode:
for i := 0 to sl.Count -1 do
begin
  // Zugriff auf Zeile i
  s := sl[i];
  // mach was mit s:string
  ...
end;
Datei Schreiben geht auch analog mit AusgabeMemo.Lines.SaveToFile(AusgabeDateiname); Wenn man davon ausgeht, dass Objektname und "= class ( Vorgänger )" in einer Zeile stehen, könnte man zum Analysieren der Zeilen z.B. alle WhiteSpaces entfernen und mit Pos nach '=class(' suchen.
Wenn gefunden, dann die Zeile genauer analysieren.
Das ist nicht die beste Methode aber von einem Anfänger gut umzusetzen.
Alternativ könnte man auch die Datei (sl.Text) mit RegEx durchsuchen. oder, oder oder ...
Es gibt viele Möglichkeiten. Bis hin zu einem Parser mit "Lex" und "Yacc".

Wenn Du dein Projekt veröffentlichst, erstelle bitte ein neues Thema und verlinke es hier

Viel Spaß.
MaBuSE
(°¿°) MaBuSE - proud to be a DP member
(°¿°) MaBuSE - proud to be a "Rüsselmops" ;-)
  Mit Zitat antworten Zitat
Benutzerbild von dummzeuch
dummzeuch

Registriert seit: 11. Aug 2012
Ort: Essen
1.625 Beiträge
 
Delphi 10.2 Tokyo Professional
 
#13

AW: Delphi Historie / Überblick über die verschiedenen Delphi Versionen

  Alt 22. Dez 2021, 12:25
Es sollte aber kein Problem sein, einen einfachen "Parser" zu schreiben, der nur die Txyz = class(Tabc) findet und daraus eine Dot-Datei für Graphvis erstellt.
Es gibt PasDoc, das genau sowas machen kann.

(Ich überlegen gerade, ob ich das damals selbst eingebaut hatte oder es nur einfach total praktisch fand.)
Thomas Mueller
  Mit Zitat antworten Zitat
Benutzerbild von MaBuSE
MaBuSE

Registriert seit: 23. Sep 2002
Ort: Frankfurt am Main (in der Nähe)
1.840 Beiträge
 
Delphi 10 Seattle Enterprise
 
#14

AW: Delphi Historie / Überblick über die verschiedenen Delphi Versionen

  Alt 22. Dez 2021, 12:37
Es gibt PasDoc, das genau sowas machen kann.
Stimmt, aber spätestens wenn du bestimmte Informationen farbig markieren willst, kommst Du damit nicht hin.

Ich habe mal eben in der Mittagspause in 15 Min was zusammengebastelt.
Das Programm scannt nur alle *.pas Dateien und gibt alle Zeilen mit "=class(" aus. (Mehr nicht!)

Wie stellt man denn so was in der Grafik dar? (Das gab es zu D7 Zeiten ja teilweise so noch nicht.)
TWinRTGenericImportS2O<S1, S2: IInspectable; O: IUnknown> = class(TWinRTGenericImportS2<S1, S2>) oder
TDispatchSilencer = class(TInterfacedObject, IUnknown, IDispatch)
Angehängte Dateien
Dateityp: zip ClassenDiagrammErstellen-ParsePas.zip (48,6 KB, 7x aufgerufen)
(°¿°) MaBuSE - proud to be a DP member
(°¿°) MaBuSE - proud to be a "Rüsselmops" ;-)

Geändert von MaBuSE (22. Dez 2021 um 12:51 Uhr)
  Mit Zitat antworten Zitat
Delphi.Narium

Registriert seit: 27. Nov 2017
2.508 Beiträge
 
Delphi 7 Professional
 
#15

AW: Delphi Historie / Überblick über die verschiedenen Delphi Versionen

  Alt 22. Dez 2021, 12:52
Wie stellt man denn so was in der Grafik dar. (Das gab es zu D7 Zeiten ja teilweise so noch nicht.)
Mein erster Ansatz wäre da, dass Ganze in HTML zu gestalten. Das kann man dann ausdrucken und sieht (je nach Umfang) dann wie eine Grafik aus. (Wäre aber vermutlich eine arge Frickelei
  Mit Zitat antworten Zitat
Benutzerbild von MaBuSE
MaBuSE

Registriert seit: 23. Sep 2002
Ort: Frankfurt am Main (in der Nähe)
1.840 Beiträge
 
Delphi 10 Seattle Enterprise
 
#16

AW: Delphi Historie / Überblick über die verschiedenen Delphi Versionen

  Alt 22. Dez 2021, 12:57
Wie stellt man denn so was in der Grafik dar. (Das gab es zu D7 Zeiten ja teilweise so noch nicht.)
Mein erster Ansatz wäre da, dass Ganze in HTML zu gestalten. Das kann man dann ausdrucken und sieht (je nach Umfang) dann wie eine Grafik aus. (Wäre aber vermutlich eine arge Frickelei
Graphvis kann das schon, aber dann ist es kein einfacher Baum mehr wie auf dem Poster. Man könnte natürlich auch alle interfaces weg lassen. Dann wäre wes wieder ein Baum.
Die Schreibweise von Generics kann man ja auch überlegen/übernehmen.
(z.B. alles in den spitzen Klammern ignorieren, dafür in einer anderen Farbe)

Graphvis kann auch zu den Grafiken map Dateien erstellen, dann kannst Du z.B. jedes Objekt "klickbar" machen. Die Url muss dann natürlich in der dot Datei angegeben werden. (z.B. Link auf Unit)
(siehe http://www.graphviz.org/docs/outputs/imap/ )
(°¿°) MaBuSE - proud to be a DP member
(°¿°) MaBuSE - proud to be a "Rüsselmops" ;-)

Geändert von MaBuSE (22. Dez 2021 um 13:16 Uhr)
  Mit Zitat antworten Zitat
TurboMagic

Registriert seit: 28. Feb 2016
Ort: Nordost Baden-Württemberg
2.960 Beiträge
 
Delphi 12 Athens
 
#17

AW: Delphi Historie / Überblick über die verschiedenen Delphi Versionen

  Alt 22. Dez 2021, 16:49
Zu Delphi 4 gab es wenigstens noch das coole VCL-Poster
Den Klassenbaum gab es auch noch für D7. Den hatte ich mal von jemand aus der IT damals geplottet bekommen gehabt.
  Mit Zitat antworten Zitat
Benutzerbild von MaBuSE
MaBuSE

Registriert seit: 23. Sep 2002
Ort: Frankfurt am Main (in der Nähe)
1.840 Beiträge
 
Delphi 10 Seattle Enterprise
 
#18

AW: Delphi Historie / Überblick über die verschiedenen Delphi Versionen

  Alt 22. Dez 2021, 17:07
Zu Delphi 4 gab es wenigstens noch das coole VCL-Poster
Den Klassenbaum gab es auch noch für D7. Den hatte ich mal von jemand aus der IT damals geplottet bekommen gehabt.
Schau mal 7 _Beiträge weiter oben
https://www.delphipraxis.net/1499534-post11.html
Da kannst du es Downloaden und ausdrucken.
(°¿°) MaBuSE - proud to be a DP member
(°¿°) MaBuSE - proud to be a "Rüsselmops" ;-)
  Mit Zitat antworten Zitat
Frickler

Registriert seit: 6. Mär 2007
Ort: Osnabrück
599 Beiträge
 
Delphi XE6 Enterprise
 
#19

AW: Delphi Historie / Überblick über die verschiedenen Delphi Versionen

  Alt 23. Dez 2021, 18:53
1981-1987 IBM Pascal 1-3
1981-1988 Microsoft Pascal 1-4
1989 Quick Pascal 1
UCSD Pascal, das die "Units" einführte mit "interface" und "implementation". Das gabs im Ur-Pascal nicht.
Später bei Apple weiterentwickelt als "Apple Pascal", und für die grafische Oberfläche von "Lisa" und "Macintosh" verwendet.


P.S.: An der Uni hatten wir Turbo Pascal für CP/M auf 8 Zoll Disketten zur Programmierung einer Kristallzuchtanlage. Die Binaries wurden auf EPROMs gebrannt und in den Zielrechner gesteckt. Debugging? Parameter mit Drehwählern einstellen und schauen, obs klappt...
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 2 von 2     12   


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 19:46 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