Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   GUI-Design mit VCL / FireMonkey / Common Controls (https://www.delphipraxis.net/18-gui-design-mit-vcl-firemonkey-common-controls/)
-   -   Tool zum Unterscheiden von Dateien?? (https://www.delphipraxis.net/180465-tool-zum-unterscheiden-von-dateien.html)

Simo 22. Mai 2014 07:47

Tool zum Unterscheiden von Dateien??
 
Hallo zusammen,

ich möchte ein einfaches Tool erstellen, das einfach zwei Dateien(XML-Dateien, Strings und enthalten Werte..) vergleicht. Die beiden Dateien werden in die Oberfläche des Tools gezogen und nebeneinander oder übereinander gegenübergestellt. Die gefundene Unterschiede werden farblich hervorgehoben.

Ich weiß aber nicht wie der Aufbau aussieht? (Design, Komponenten)??

Ich freue mich auf Ihre Vorschläge & Hilfe -)

LG

DeddyH 22. Mai 2014 07:58

AW: Tool zum Unterscheiden von Dateien??
 
Hast Du Dir denn überhaupt schon Gedanken gemacht, wie Du
- 2 Dateien einliest
- Unterschiede feststellen kannst
- diese Unterschiede in "Gelöscht", "Geändert", "Hinzugefügt" kategorisieren kannst?

Wenn nicht: was interessiert Dich denn jetzt schon die Oberfläche?

[edit] P.S.: wozu 3 Threads zur selben Frage? [/edit]

Simo 22. Mai 2014 08:27

AW: Tool zum Unterscheiden von Dateien??
 
Sorry.. hier gehts weiter!

Ich habe mir schon darüber Gedanken gemacht..aber weiß nicht genau womit ich anfangen soll? Schritte..Aufbau?

DeddyH 22. Mai 2014 08:29

AW: Tool zum Unterscheiden von Dateien??
 
Die 3 "großen" Teilprobleme, die ich auf Anhieb sehe, habe ich doch eben bereits skizziert. Die kann man IMO von oben nach unten abarbeiten, damit geht schon einige Zeit ins Land.

Simo 22. Mai 2014 09:01

AW: Tool zum Unterscheiden von Dateien??
 
Ja..Danke Detlef!

Eine dumme Frage vlt : Man muss aber zuerst ein Editor erstellen, um auf die einzelnen Befehle des Tools über die Menüleiste zugreifen zu können, File öffnen..usw Oder? Wie bekomme ich dieses Fenster, wo die beiden zu vergleichenden Dateien dann geladen werden? Um sie dann nebeneinander gegenüberzustellen ?

-)

DeddyH 22. Mai 2014 09:12

AW: Tool zum Unterscheiden von Dateien??
 
Welche Befehle hast Du denn, auf die Du im Menü zugreifen könntest?

baumina 22. Mai 2014 09:18

AW: Tool zum Unterscheiden von Dateien??
 
Zitat:

Zitat von Simo (Beitrag 1259740)
Ja..Danke Detlef!

Eine dumme Frage vlt : Man muss aber zuerst ein Editor erstellen, um auf die einzelnen Befehle des Tools über die Menüleiste zugreifen zu können, File öffnen..usw Oder? Wie bekomme ich dieses Fenster, wo die beiden zu vergleichenden Dateien dann geladen werden? Um sie dann nebeneinander gegenüberzustellen ?

-)

Hier mal eine grobe Vorgehensweise:

1. Delphi starten
2. Menü Datei / Neu / VCL-Formularanwendung
3. Auf dem Hauptformular kannst du nun deine Kompenenten platzieren (z.B. 2 TRichEdits, 2 Buttons zum Datei laden, 1 TOpenDialog zum Öffnen der Dateien, usw.)
4. Funktionalität hinterlegen (z.B. DoppelKlick auf einem Button öffnet Quelltext für OnButtonClick, Quelltext schreiben z.B. OpenDialog1.Execute;)
5. Programm starten (F9)

Simo 22. Mai 2014 09:34

AW: Tool zum Unterscheiden von Dateien??
 
Vielen Dank -)

Ich werde versuchen, zu anfangen!

Perlsau 22. Mai 2014 10:41

AW: Tool zum Unterscheiden von Dateien??
 
Will man dagegen, wie Detlef vorschlägt, erstmal die benötigten Methoden schreiben und testen, geht man wie folgt vor:

1. Man wähle sich zwei entsprechende Test-Dateien, von denen man die Unterschiede kennt, weil man sie z.B. selbst eingebaut hat.
2. Man lese diese beiden Dateien (z.B. Stringlist.LoadFromFile) ein z.B. via einfachen Buttonklick oder automatisch beim Programmstart.
3. Danach entwickelt man die Methoden im Private-Sektor der Hauptunit oder einer eigenen Unit/Klasse.
4. Wenn die entwickelten Methoden genau die Unterschiede in den beiden Test-Dateien finden, die du zuvor "angerichtet" hast, testest du mit zwei weiteren, dir unbekannten Dateien und überprüfst, ob die gefundenen Unterschiede auch wirklich existieren.
5. Ist auch dieser Test positiv verlaufen, kannst du damit beginnen, die GUI zu gestalten.

Als ich vor ca. 10 Jahren mit der Delphi-Programmierung anfing, hab ich natürlich auch immer erst die Oberfläche gebastelt (schöne Grafiken für BitBtn gemalt), scheiterte dann aber oft an der Bereitstellung der benötigten Algorithmen. Gelernt habe ich dabei – und das nicht einmal gleich, hat gedauert –, daß man durch Komponentenschubserei allein nicht wirklich programmieren lernt, man kann damit höchstens den einen oder anderen Nicht-Programmierer beeindrucken. Mir sind im Laufe der Jahre etliche Programmier-Anfänger begegnet (im Forum und bei der Arbeit), die sich in der GUI-Gestaltung erschöpfen und insgeheim lieber damit befassen, weil ihnen das eigentliche Coden viel zu anstrengend ist. Vor allem legt man sich durch vorzeitige GUI-Ausgestaltung häufig zu sehr fest und entwickelt seine Methoden nicht allgemein genug; die sind dann nicht für alle denkbaren Fälle geeignet und man muß sie jedesmal, wenn man wieder was Ähnliches benötigt, neu schreiben. Will man nicht ganz so streng nach diesem Schema vorgehen, hilft es auch, erstmal nur das Nötigste auf die Form zu pflanzen (OpenDialog, Memo für Unterschiede, Statusbar oder Fortschrittsanzeige), um beim Testen auch was zu sehen.

Heute mach ich wie selbstverständlich erstmal die benötigen Algorithmen, danach wird ein Testfall "fest verdrahtet", der später wieder gelöscht wird, und erst wenn da alles sauber läuft, mach ich mich an die Gui-Gestaltung. Die fällt dann, wenn man die meisten der benötigten Methoden bereits entwickelt hat, viel leichter und man hat mehr Spielraum bei der Gestaltung. Zudem weiß man dann auch viel besser, was man wirklich an visuellen Komponenten benötigt und was eher nicht.

Übrigens: Nicht nur versuchen, anzufangen, sondern wirklich anfangen!

Simo 22. Mai 2014 12:09

AW: Tool zum Unterscheiden von Dateien??
 
Ja. Vielen Dank Perlsau!
Ich werde wirklich anfangen, wenn ich Fragen habe, stelle ich sie hier..

Vielen Dank euch allen!!

.


Alle Zeitangaben in WEZ +1. Es ist jetzt 17:48 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