AGB  ·  Datenschutz  ·  Impressum  







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

20 Jahre in der DP

Ein Thema von Codehunter · begonnen am 29. Jun 2023 · letzter Beitrag vom 19. Jul 2023
Antwort Antwort
Seite 4 von 6   « Erste     234 56      
Benutzerbild von Codehunter
Codehunter

Registriert seit: 3. Jun 2003
Ort: Thüringen
2.272 Beiträge
 
Delphi 10.4 Sydney
 
#31

AW: 20 Jahre in der DP

  Alt 3. Jul 2023, 07:23
Das witzige ist: Ich nutze seinen EDA bis heute regelmäßig: https://assarbad.net/en/stuff Überhaupt, dieses NonVCL... Meine Güte, 40 kB für ein GUI-Programm! Wenn man heute eine völlig funktionslose Konsolenanwendung erstellt und alles an Uses raus wirft, ist man immer noch locker bei über 1 MB. Welches Delphi war das damals? 4, 5 oder 7 müsste es gewesen sein. Lustig auch die TODO.txt vom EDA: "This can probably be solved soon." - da stehts nun seit 20 Jahren
Ich mache grundsätzlich keine Screenshots. Schießen auf Bildschirme gibt nämlich hässliche Pixelfehler und schadet der Gesundheit vom Kollegen gegenüber. I und E zu vertauschen hätte den selben negativen Effekt, würde aber eher dem Betriebsklima schaden
  Mit Zitat antworten Zitat
Benutzerbild von jaenicke
jaenicke

Registriert seit: 10. Jun 2003
Ort: Berlin
9.580 Beiträge
 
Delphi 11 Alexandria
 
#32

AW: 20 Jahre in der DP

  Alt 3. Jul 2023, 09:56
Wenn ich meine MTCL umbauen würde, so dass ich die Unit System.Classes nicht mehr brauche und auch die API-Funktionen direkt deklarieren würde, würden die Exen sicher auch sehr klein werden. Das hatte ich allerdings nicht vor.
Sebastian Jänicke
Alle eigenen Projekte sind eingestellt, ebenso meine Homepage, Downloadlinks usw. im Forum bleiben aktiv!
  Mit Zitat antworten Zitat
Benutzerbild von Codehunter
Codehunter

Registriert seit: 3. Jun 2003
Ort: Thüringen
2.272 Beiträge
 
Delphi 10.4 Sydney
 
#33

AW: 20 Jahre in der DP

  Alt 3. Jul 2023, 12:12
Wenn ich meine MTCL umbauen würde, so dass ich die Unit System.Classes nicht mehr brauche und auch die API-Funktionen direkt deklarieren würde, würden die Exen sicher auch sehr klein werden. Das hatte ich allerdings nicht vor.
Stimmt hast recht, aber auf 40 kB komme ich mit einem D10.4 nicht mehr:
Delphi-Quellcode:
program Project1;

{$APPTYPE CONSOLE}

begin
end.
Ergebnis: 240 kB

Und da ist ja nun wirklich nicht allzu viel Funktion drin
Ich mache grundsätzlich keine Screenshots. Schießen auf Bildschirme gibt nämlich hässliche Pixelfehler und schadet der Gesundheit vom Kollegen gegenüber. I und E zu vertauschen hätte den selben negativen Effekt, würde aber eher dem Betriebsklima schaden
  Mit Zitat antworten Zitat
Satyr

Registriert seit: 8. Feb 2012
Ort: Essen
305 Beiträge
 
Delphi 10.4 Sydney
 
#34

AW: 20 Jahre in der DP

  Alt 3. Jul 2023, 12:16
Das witzige ist: Ich nutze seinen EDA bis heute regelmäßig
Hab ich auch sehr lange genutzt. Wobei er ab und auch tolle VCL Kompos veröffentlicht hat, die einiges leichter gemacht haben.

Ich hatte mit Delphi 3 angefangen. Hat mir ein bekannter aus dem Sportverein besorgt, der zu der Zeit Informatik studiert hat.
  Mit Zitat antworten Zitat
Benutzerbild von Uwe Raabe
Uwe Raabe

Registriert seit: 20. Jan 2006
Ort: Lübbecke
11.443 Beiträge
 
Delphi 12 Athens
 
#35

AW: 20 Jahre in der DP

  Alt 3. Jul 2023, 12:22
Also mit dem aktuellen Delphi 11.3 Patch 1 erzeugt der Win32 Compiler im Release eine Exe mit 46.080 Byte.
Uwe Raabe
Certified Delphi Master Developer
Embarcadero MVP
Blog: The Art of Delphi Programming
  Mit Zitat antworten Zitat
Benutzerbild von Uwe Raabe
Uwe Raabe

Registriert seit: 20. Jan 2006
Ort: Lübbecke
11.443 Beiträge
 
Delphi 12 Athens
 
#36

AW: 20 Jahre in der DP

  Alt 3. Jul 2023, 12:25
Kompiliert man das noch mit Runtime-Packages (RTL) reduziert sich die Größe auf ganze 8.704 Byte.

Aber mal ehrlich: Das ist doch alles vollkommen weltfremd.
Uwe Raabe
Certified Delphi Master Developer
Embarcadero MVP
Blog: The Art of Delphi Programming
  Mit Zitat antworten Zitat
Benutzerbild von himitsu
himitsu

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

AW: 20 Jahre in der DP

  Alt 3. Jul 2023, 12:42
Klar, aber dann mußt'e auch die BPLs mitgeben.


Dann kann man noch bei der erweiterten RTTI bissl was abschalten.

{$RTTI EXPLICIT METHODS([]) PROPERTIES([]) FIELDS([])}
https://docwiki.embarcadero.com/RADS...ctive_(Delphi)

Vermutlich könnte man sich auch mal wieder eine abgespeckte System und SysInit (PAS bzw. DCU) basteln.
Siehe DDDK (Delphi Driver Development Kit).

sowie
mit NonVCL arbeiten,
unnötige RTL/VCL-Resourcen löschen,
keine Exception-Behandlung (SysUtils weglassen),
PE-Realocations löschen (dann nervt Einen auch nicht mehr dieses blöde ASLR)
und natürlich noch mit EXE-Packern rumpfuschen.
Garbage Collector ... Delphianer erzeugen keinen Müll, also brauchen sie auch keinen Müllsucher.
my Delphi wish list : BugReports/FeatureRequests

Geändert von himitsu ( 3. Jul 2023 um 12:50 Uhr)
  Mit Zitat antworten Zitat
Benutzerbild von Uwe Raabe
Uwe Raabe

Registriert seit: 20. Jan 2006
Ort: Lübbecke
11.443 Beiträge
 
Delphi 12 Athens
 
#38

AW: 20 Jahre in der DP

  Alt 3. Jul 2023, 13:21
Dann kann man noch bei der erweiterten RTTI bissl was abschalten.

{$RTTI EXPLICIT METHODS([]) PROPERTIES([]) FIELDS([])}
Das betrifft aber nur den eigenen Code und nicht die vorcompilierten DCUs.

Aber im Wesentlichen sind die 40 KByte ja der initialization-Abschnitt der System.pas und den kann man nicht wirklich wegoptimieren.
Uwe Raabe
Certified Delphi Master Developer
Embarcadero MVP
Blog: The Art of Delphi Programming
  Mit Zitat antworten Zitat
Benutzerbild von Codehunter
Codehunter

Registriert seit: 3. Jun 2003
Ort: Thüringen
2.272 Beiträge
 
Delphi 10.4 Sydney
 
#39

AW: 20 Jahre in der DP

  Alt 3. Jul 2023, 16:38
Kompiliert man das noch mit Runtime-Packages (RTL) reduziert sich die Größe auf ganze 8.704 Byte.

Aber mal ehrlich: Das ist doch alles vollkommen weltfremd.
War NonVCL nicht immer schon eine Art Proof of Concept? Es ist auch nicht wichtig. Ist mir nur aufgefallen als ich die Downloadseite bei Assa gesehen habe.
Ich mache grundsätzlich keine Screenshots. Schießen auf Bildschirme gibt nämlich hässliche Pixelfehler und schadet der Gesundheit vom Kollegen gegenüber. I und E zu vertauschen hätte den selben negativen Effekt, würde aber eher dem Betriebsklima schaden
  Mit Zitat antworten Zitat
Benutzerbild von himitsu
himitsu

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

AW: 20 Jahre in der DP

  Alt 3. Jul 2023, 17:13
NonVCL ist der Wahre Weg.

Es ist eigentlich nur ein Konzept, bzw. der Name aus Sicht eines Delphianers, also nicht das VCL-Framework zu verwenden (welche aber intern auch diese WinAPI nutzt),
sondern direkt mit der WinAPI zu arbeiten.

Grundsätzlich gibt es da zwei Wege.
* die DialogAPI, also Form-Ressourcen zu erstellen und sie als "Dialog" zu laden
* oder manuell via CreateWindow die Form und jede Komponente zu erstellern.

Und zusätzlich bietet Windows noch andere APIs an
* TaskDialog (was wir "neuerdings" in der VCL auch nutzen)
* WinForms
* WPF
* das geile Ding, was die für's UAC benutzen, was aber hart im Explorer eingebaut wurde, anstatt in eine DLL

Oder Frameworks von anderen Anbietern
* GTK+
* Qt
Garbage Collector ... Delphianer erzeugen keinen Müll, also brauchen sie auch keinen Müllsucher.
my Delphi wish list : BugReports/FeatureRequests

Geändert von himitsu ( 3. Jul 2023 um 17:19 Uhr)
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 4 von 6   « Erste     234 56      


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:56 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