AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Thema durchsuchen
Ansicht
Themen-Optionen

Programm optimieren

Ein Thema von NoName1 · begonnen am 20. Jan 2020 · letzter Beitrag vom 21. Jan 2020
Antwort Antwort
NoName1

Registriert seit: 8. Mär 2018
191 Beiträge
 
Delphi 11 Alexandria
 
#1

Programm optimieren

  Alt 20. Jan 2020, 17:04
Guten Tag,
ich möchte ein bestehendes Programm optimieren, weiss aber nicht genau wie ich dabei vorgehen kann/soll.
Aktueller Stand:
Auf den Formularen befinden sich bis zu 20 und mehr NichtVisuellenKomponenten. Auf anderen Formularen
können es auch mal nur 5 Komponenten sein. Es sind Units eingebunden, die das Öffnen und Schließen
von Tabellen durchführen. Auch sind andere Aktionen die aus dem Formular angeprochen werden in den
Units enthalten. In den Formularen befindet sich viel Quellcode.
Laut OOP soll die GUI vom eigentlichen Quellcode getrennt werden. Dies ist bestimmt auch so in Ordnung.

Wie kann ich nun bei der Optimierung vorgehen:
Für jedes Formular ein Modul für die NichtVisuellenKomponenten erstellen? Auch wenn es nur einige Wenige sind?
Bläht dies nicht das Programm unnötig auf? In den Modulen alle Units einbinden?
Aus dem Formular nur Aufrufe wie z. B.
Delphi-Quellcode:
btn1Click(Sender: TObject
begin
 ModulName.TueEtwas;
end
zu lassen?

Wie geht Ihr bei der Programmierung vor?
Könnt Ihr aus Eurer Praxis Erfahrungen berichten?

Vielen Dank für Eure Hilfe im Voraus von einem Hobbyprogrammierer.
  Mit Zitat antworten Zitat
Benutzerbild von himitsu
himitsu

Registriert seit: 11. Okt 2003
Ort: Elbflorenz
43.115 Beiträge
 
Delphi 12 Athens
 
#2

AW: Programm optimieren

  Alt 20. Jan 2020, 18:43
Man kann im Objektinspektor auch modul-übergreifend Zeiger (Komponenten und Events) zuweisen.

Also statt GridA.DataSource = DataSourceA ginge auch GridA.DataSource = DataModul.DataSourceA und das Gleiche bei den Events.
siehe z.B. Forms.FindGlobalComponent (in der Implementation), bzw. Delphi-Referenz durchsuchenClasses.RegisterFindGlobalComponentProc

Zur Lauffzeit, kann man diese Zuweisungen natürlich auch immer machen, ohne dass die globale Namen-Suche beansprucht wird. (direkt die Zeiger zuweisen)

TDataModul registriert daher seinen Namen automatisch global, welcher dann hier nutzbar wäre.
Garbage Collector ... Delphianer erzeugen keinen Müll, also brauchen sie auch keinen Müllsucher.
my Delphi wish list : BugReports/FeatureRequests
  Mit Zitat antworten Zitat
TigerLilly

Registriert seit: 24. Mai 2017
Ort: Wien, Österreich
1.174 Beiträge
 
Delphi 11 Alexandria
 
#3

AW: Programm optimieren

  Alt 21. Jan 2020, 08:39
Zitat:
ich möchte ein bestehendes Programm optimieren, weiss aber nicht genau wie ich dabei vorgehen kann/soll.
Was möchtest du denn optimieren? Das Laufzeitverhalten? Den Speicherverbrauch? Möchtest du den Code eleganter und schöner machen? Möchtest du deinen Code auf moderne Entwurfsmuster umstellen?

Wie so oft im Leben: Cui bono? Wem nützt es?
  Mit Zitat antworten Zitat
NoName1

Registriert seit: 8. Mär 2018
191 Beiträge
 
Delphi 11 Alexandria
 
#4

AW: Programm optimieren

  Alt 21. Jan 2020, 09:12
Zitat:
... Möchtest du den Code eleganter und schöner machen? Möchtest du deinen Code auf moderne Entwurfsmuster umstellen?
Der Code soll leichter zu pflegen sein, Änderungen an der Software schneller durchzuführen usw.
Die Formulare selber sind, dank der verwendeten TMS-Komponenten, in einem modernem Design.
Die komplette Umprogrammierung nach den Richtlinien der OOP bringt viel Arbeit mit sich.
Auch wenn ich als Rentner, bin immerhin 70Jahre, Zeit habe, so scheue ich doch vor dieser
Aufgabe ersteinmal zurück. Der nächste der das Projekt übernehmen wird muss, ob mit oder ohne OOP,
sich komplett in den Quellcode einarbeiten.
Und wie Du schon erwähntest "Wem nützt es?" habe ich mir auch schon überlegt.
  Mit Zitat antworten Zitat
Benutzerbild von haentschman
haentschman

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

AW: Programm optimieren

  Alt 21. Jan 2020, 09:54
Moin...
Zitat:
Wie so oft im Leben: Cui bono? Wem nützt es?
...der armen Sa... den den Code weiter pflegen muß.
Zitat:
Der nächste der das Projekt übernehmen wird muss, ob mit oder ohne OOP,sich komplett in den Quellcode einarbeiten.
...imho wäre es viel wichtiger, für den Nächsten, das die Variablen sprechende Namen und keine Mehrfachverwendung in den proceduren haben. Das erleichtert das Erfassen der Logik der proceduren ungemein.
  Mit Zitat antworten Zitat
TigerLilly

Registriert seit: 24. Mai 2017
Ort: Wien, Österreich
1.174 Beiträge
 
Delphi 11 Alexandria
 
#6

AW: Programm optimieren

  Alt 21. Jan 2020, 21:20
https://stackoverflow.com/questions/...le-delphi-code
https://www.embarcadero.com/de/rad-i...upgrade-center
https://delphiparser.com/2017/03/07/...-project-plan/
  Mit Zitat antworten Zitat
Antwort Antwort


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 23:20 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