AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren

Datenmodell automatisch erzeugen

Ein Thema von FAM · begonnen am 9. Feb 2015 · letzter Beitrag vom 10. Feb 2015
Antwort Antwort
Seite 2 von 2     12
Benutzerbild von Sir Rufo
Sir Rufo

Registriert seit: 5. Jan 2005
Ort: Stadthagen
9.454 Beiträge
 
Delphi 10 Seattle Enterprise
 
#11

AW: Datenmodell automatisch erzeugen

  Alt 10. Feb 2015, 10:02
Ähm, du weißt doch wie eine Klasse im Delphi-Code aussehen muss?

Jetzt schreibt man sich einen Code-Generator, der aus ein paar Vorgaben diese Klassen komplett erzeugt.

Du gibst vor
Code:
{"name":"TFoo",
[{"Name":"Name","type":"string","GetterSetterKind":"GS"}]}
und das Programme baut daraus
Delphi-Quellcode:
type
  TFoo = class
  private
    FName : string;
    function GetName : string;
    procedure SetName( const Value : string );
  public
    property Name : string read GetName write SetName;
  end;

procedure TFoo.SetName( const Value : string );
begin
  FName := Value;
end;

function GetName : string;
begin
  Result := FName;
end;
Kaum macht man's richtig - schon funktioniert's
Zertifikat: Sir Rufo (Fingerprint: ‎ea 0a 4c 14 0d b6 3a a4 c1 c5 b9 dc 90 9d f0 e9 de 13 da 60)
  Mit Zitat antworten Zitat
Benutzerbild von stahli
stahli

Registriert seit: 26. Nov 2003
Ort: Halle/Saale
3.769 Beiträge
 
Delphi 10.3 Rio
 
#12

AW: Datenmodell automatisch erzeugen

  Alt 10. Feb 2015, 10:04
Wie ich das umgesetzt habe kannst Du hier sehen: http://www.delphipraxis.net/173360-s...framework.html (Beitrag #17)

Einen Artikel dazu kenne ich nicht.
Ich dachte mir einfach, wenn ich immer das selbe schreiben muss (ClassX.pas) dann kann ich mir auch die Textdatei erzeugen lassen.
Entsprechend muss man die genauen Klassen- und Eigenschaftendeklarationen irgendwo kompakt ablegen, so dass die gewünschten Klassen heraus kommen.

Entspricht quasi einfach einer komplexen "Serienbrieffunktion".

Delphi bietet dann sogar noch die Möglichkeit, die Units gleich in ein Package einzubinden und das zu kompilieren. Jedenfalls funktionierte das bei mir schon mal einigermaßen zufriedenstellend. Ich habe das dann aber nicht mehr weiter verfolgt.
Stahli
http://www.StahliSoft.de
---
"Jetzt muss ich seh´n, dass ich kein Denkfehler mach...!?" Dittsche (2004)
  Mit Zitat antworten Zitat
FAM

Registriert seit: 22. Dez 2014
47 Beiträge
 
Delphi XE Enterprise
 
#13

AW: Datenmodell automatisch erzeugen

  Alt 10. Feb 2015, 10:18
Wie ich das umgesetzt habe kannst Du hier sehen: http://www.delphipraxis.net/173360-s...framework.html (Beitrag #17)
ich schau es mir mal an, danke

Delphi-Quellcode:
{"name":"TFoo",
[{"Name":"Name","type":"string","GetterSetterKind":"GS"}
]}
Ich wusste jetzt nicht das Delphi auch Code generieren kann bzw. habe das bisher noch nicht in betracht gezogen gehabt. Werden dann die entsprechenden Dateien auch gleich richtig gespeichert und abgelegt?
  Mit Zitat antworten Zitat
Benutzerbild von DeddyH
DeddyH

Registriert seit: 17. Sep 2006
Ort: Barchfeld
26.876 Beiträge
 
Delphi 10.3 Rio
 
#14

AW: Datenmodell automatisch erzeugen

  Alt 10. Feb 2015, 10:20
Das hängt ja davon ab, wie Du den angesprochenen Code-Generator umsetzt.
Detlef
"Ich habe Angst vor dem Tag, an dem die Technologie unsere menschlichen Interaktionen übertrumpft. Die Welt wird eine Generation von Idioten bekommen." (Albert Einstein)
Dieser Tag ist längst gekommen
  Mit Zitat antworten Zitat
FAM

Registriert seit: 22. Dez 2014
47 Beiträge
 
Delphi XE Enterprise
 
#15

AW: Datenmodell automatisch erzeugen

  Alt 10. Feb 2015, 10:28
Das hängt ja davon ab, wie Du den angesprochenen Code-Generator umsetzt.

kannst du das bitte erläutern?
  Mit Zitat antworten Zitat
Benutzerbild von DeddyH
DeddyH

Registriert seit: 17. Sep 2006
Ort: Barchfeld
26.876 Beiträge
 
Delphi 10.3 Rio
 
#16

AW: Datenmodell automatisch erzeugen

  Alt 10. Feb 2015, 10:34
Jetzt schreibt man sich einen Code-Generator, der aus ein paar Vorgaben diese Klassen komplett erzeugt.
Das macht Delphi nicht automatisch, sondern Du musst selbst tätig werden. Daher liegt es auch an Dir, wo die Dateien gespeichert werden.
Detlef
"Ich habe Angst vor dem Tag, an dem die Technologie unsere menschlichen Interaktionen übertrumpft. Die Welt wird eine Generation von Idioten bekommen." (Albert Einstein)
Dieser Tag ist längst gekommen
  Mit Zitat antworten Zitat
Benutzerbild von Sir Rufo
Sir Rufo

Registriert seit: 5. Jan 2005
Ort: Stadthagen
9.454 Beiträge
 
Delphi 10 Seattle Enterprise
 
#17

AW: Datenmodell automatisch erzeugen

  Alt 10. Feb 2015, 11:11
@FAM

Eine .pas Datei ist eine einfache stumpfe Textdatei. Schreibe ein Programm, dass eine Textdatei erzeugt. Wenn diese Textdatei jetzt zufälligerweise den Vorgaben für eine Delphi-Unit entspricht, dann hast du - Simsalabim - eine Delphi-Unit erzeugt.

Kann das Programm jetzt auch noch diese ominöse Textdatei nach Vorgaben, die es irgendwo irgendwie herbekommt, was in einem beliebigen Format sein kann, was eben dieses Programm versteht, dann hat man ein Delphi-Unit-Generator geschrieben.
Kaum macht man's richtig - schon funktioniert's
Zertifikat: Sir Rufo (Fingerprint: ‎ea 0a 4c 14 0d b6 3a a4 c1 c5 b9 dc 90 9d f0 e9 de 13 da 60)
  Mit Zitat antworten Zitat
FAM

Registriert seit: 22. Dez 2014
47 Beiträge
 
Delphi XE Enterprise
 
#18

AW: Datenmodell automatisch erzeugen

  Alt 10. Feb 2015, 13:46
@FAM

Eine .pas Datei ist eine einfache stumpfe Textdatei. Schreibe ein Programm, dass eine Textdatei erzeugt. Wenn diese Textdatei jetzt zufälligerweise den Vorgaben für eine Delphi-Unit entspricht, dann hast du - Simsalabim - eine Delphi-Unit erzeugt.

Kann das Programm jetzt auch noch diese ominöse Textdatei nach Vorgaben, die es irgendwo irgendwie herbekommt, was in einem beliebigen Format sein kann, was eben dieses Programm versteht, dann hat man ein Delphi-Unit-Generator geschrieben.
Ok verstanden
  Mit Zitat antworten Zitat
Themen-Optionen Thema durchsuchen
Thema durchsuchen:

Erweiterte Suche
Ansicht

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 17:00 Uhr.
Powered by vBulletin® Copyright ©2000 - 2019, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2019 by Daniel R. Wolf