Autor Beitrag
Implementation
ontopic starontopic starontopic starontopic starontopic starontopic starofftopic starofftopic star
Beiträge: 33
Erhaltene Danke: 2

Parabola, Trisquel GNU/linux-libre
FPC, GCC
BeitragVerfasst: Sa 06.11.10 17:43 
user profile icondelfiphan hat folgendes geschrieben Zum zitierten Posting springen:
Das Framework gehört zum Betriebssystem. Ohne Betriebssystemaufrufe kannst du sowieso keine sinnvolle Applikation schreiben.

Das .NET-Framework? Nicht ganz. Das muss zuinstalliert werden und liegt AUF dem Betriebssystem.
Wenn man miteinrechnet, dass normale Delphi-Exen standalone laufen, ohne dass man etwas anderes erst installieren muss, sind sie insgesamt dann doch DEUTLICH kleiner als .NET-Anwendungen.
Du darfst nicht einfach auf die Größe der Exe selbst schauen!

_________________
Free as in Freedom!
delfiphan
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic star
Beiträge: 2684
Erhaltene Danke: 32



BeitragVerfasst: So 07.11.10 01:10 
.NET ist "integral part of Windows". Ausser du bist vielleicht noch auf dem Stand von 2 Generationen früher (Windows XP), was von Microsoft nur noch im Extended Support ist.

user profile iconImplementation hat folgendes geschrieben Zum zitierten Posting springen:
Du darfst nicht einfach auf die Größe der Exe selbst schauen!
Wenn du denkst, dass ich das nicht darf, bist du off-topic ;);)

Willst du damit sagen, dass "Standalone Delphi-Exen" keine Abhängigkeit zum Betriebssystem haben und das Programm von vorhin z. B. die MessageBox mit Magie zeichnet? ;)

Spass beiseite - Fakt ist, in den neueren Versionen von Windows ist .NET mit dabei und du kannst kleine Anwendungen schreiben, ohne auf kompliziertes non-VCL zurückgreifen zu müssen. Möglichst kleine Exe ist nicht unbedingt das Verkaufsargument von Delphiapplikationen. Wer es sich (gerade deswegen) zum Sport macht, eine Mini-App mit Delphi zu schreiben, darf das gerne tun. Allzu sinnvoll ist es aber nicht.
spawn89
ontopic starontopic starontopic starontopic starontopic starhalf ontopic starofftopic starofftopic star
Beiträge: 82
Erhaltene Danke: 7

Linux
CodeTyphon
BeitragVerfasst: So 07.11.10 03:25 
Na wenn es dann sinnvoll ist seine Platten mit Backups von VMs voll von unnötigem Balast ala .Net, Java, whatever zu füllen, dann ist ja alles gut.
jaenicke
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starofftopic star
Beiträge: 19315
Erhaltene Danke: 1747

W11 x64 (Chrome, Edge)
Delphi 11 Pro, Oxygene, C# (VS 2022), JS/HTML, Java (NB), PHP, Lazarus
BeitragVerfasst: So 07.11.10 03:55 
Dafür bieten diese Frameworks auch viele Vorteile. Und bei dem bisschen Speicherplatz. :nixweiss:

Da nehmen andere Sachen viel mehr Platz weg. Meine Entwicklungspartition alleine ist mehrmals so groß wie Windows 7 mit allen installierten Programmen.
FrEaKY
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starofftopic star
Beiträge: 235


D7
BeitragVerfasst: So 28.11.10 20:14 
user profile iconNersgatt hat folgendes geschrieben Zum zitierten Posting springen:
Doch, das gibts. Aber das lohnt sich erst bei einer bestimmten Größe, da der Platz, den der Entpacker braucht ja auch erst mal eingespart werden muss. Außerdem werden diese gepackten EXE gern mal als Trojaner erkannt, eben weil sich Trojaner manchmal so tarnen.
Und zu guter letzt: in Zeiten, wo ne 1 Terrabytefestplatte 44,99 EUR kostet, muss man wirklich nicht mehr auf ein paar Byte schauen, die die Exe belegt.

Ist eine Frage des Skills oder nicht? Warum soll ich zusätzliche 350 kb in mein Programm packen, die ich nicht benötige? Wenn du 10.000 Euro auf dem Konto hast, schmeißt du dann auch einfach 300 Euro aus dem Fenster, weil ja noch genug übrig ist?
Ich finds echt arm wie heuzutage die meisten Programme hier wo fast nichts drin ist, schon auf 500-800kb kommen.
FrEaKY
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starofftopic star
Beiträge: 235


D7
BeitragVerfasst: So 28.11.10 20:19 
user profile icondelfiphan hat folgendes geschrieben Zum zitierten Posting springen:
Das Framework gehört zum Betriebssystem. Ohne Betriebssystemaufrufe kannst du sowieso keine sinnvolle Applikation schreiben.

Nö tut es nicht. Nicht jeder müllt seinen Computer voll mit allem möglichen unnützen Zeugs.
jaenicke
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starofftopic star
Beiträge: 19315
Erhaltene Danke: 1747

W11 x64 (Chrome, Edge)
Delphi 11 Pro, Oxygene, C# (VS 2022), JS/HTML, Java (NB), PHP, Lazarus
BeitragVerfasst: So 28.11.10 20:35 
user profile iconFrEaKY hat folgendes geschrieben Zum zitierten Posting springen:
Nö tut es nicht. Nicht jeder müllt seinen Computer voll mit allem möglichen unnützen Zeugs.
Nicht jeder verzichtet auf nützliche Funktionen nur weil es von MS kommt. :nixweiss:
Martok
ontopic starontopic starontopic starontopic starontopic starontopic starofftopic starofftopic star
Beiträge: 3661
Erhaltene Danke: 604

Win 8.1, Win 10 x64
Pascal: Lazarus Snapshot, Delphi 7,2007; PHP, JS: WebStorm
BeitragVerfasst: So 28.11.10 21:27 
Das Framework ist kein Teil vom Betriebssystem, genausowenig wie die MSCVRT ein Teil vom Betriebssystem ist.
Es ist nur zufällig auf neueren Windows-Versionen vorinstalliert!

Anders sieht das in Singularity aus, in dem .NET die Win32-API komplett ersetzt. Aber solange das nicht am Markt ist, hat user profile iconFrEaKY vollkommen Recht.

.NET 1.1 ... 2.0 macht übrigens 22% meines WINNT-Verzeichnisses auf dieser Maschine aus... und beim .NETfx 3.5 ist der Installer allein 10mal so groß. Was dabei rauskommt weiß ich allerdings nicht, ist nirgendwo installiert ;)

Darf ich an die Signatur vom user profile iconMrSaint erinnern?
"people knew how to write small, efficient programs [...], a skill that has subsequently been lost"
Andrew S. Tanenbaum - Modern Operating Systems

_________________
"The phoenix's price isn't inevitable. It's not part of some deep balance built into the universe. It's just the parts of the game where you haven't figured out yet how to cheat."
jaenicke
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starofftopic star
Beiträge: 19315
Erhaltene Danke: 1747

W11 x64 (Chrome, Edge)
Delphi 11 Pro, Oxygene, C# (VS 2022), JS/HTML, Java (NB), PHP, Lazarus
BeitragVerfasst: So 28.11.10 21:35 
user profile iconMartok hat folgendes geschrieben Zum zitierten Posting springen:
.NET 1.1 ... 2.0 macht übrigens 22% meines WINNT-Verzeichnisses auf dieser Maschine aus... und beim .NETfx 3.5 ist der Installer allein 10mal so groß. Was dabei rauskommt weiß ich allerdings nicht, ist nirgendwo installiert ;)
.NET 1.1 bis 4.0 brauchen bei mir ca. 700 MiB. Mein Windows Verzeichnis ist etwas über 20 GiB groß, wovon ca. 9 GiB im winsxs Ordner (und damit teilweise redundant) sind.

// EDIT:
user profile iconMartok hat folgendes geschrieben Zum zitierten Posting springen:
Darf ich an die Signatur vom user profile iconMrSaint erinnern?
"people knew how to write small, efficient programs [...], a skill that has subsequently been lost"
Andrew S. Tanenbaum - Modern Operating Systems
Es ist ja nicht so, dass ich keine kleinen Programme schreiben kann. Aber klein und effizient passt oft nicht zusammen. Denn da das Programm klein sein muss, muss man vor allem darauf achten und kann weniger auf Effizienz achten. Und dass man wenig Speicherplatz verwendet, hat nicht viel mit Effizienz zu tun. Was nutzt ein winziges Tool, das dafür langsam und von der Oberfläche her unproduktiv ist?
Die vielen non-VCL Spielereien, die es immer wieder gibt, sind das beste Beispiel dafür...

Durch das .NET Framework kann man sehr effizient programmieren ohne stattdessen sehr viel Code für den gleichen Zweck zu schreiben. Und die Geschwindigkeit von Delphiprogrammen oder .NET Programmen steht handoptimierten Assemblerprogrammen nicht viel nach. Je nach Kenntnisstand des Entwicklers sind die manuell optimierten Programme oft auch langsamer.
Luckie
Ehemaliges Mitglied
Erhaltene Danke: 1



BeitragVerfasst: So 28.11.10 21:47 
user profile iconFrEaKY hat folgendes geschrieben Zum zitierten Posting springen:
Ist eine Frage des Skills oder nicht? Warum soll ich zusätzliche 350 kb in mein Programm packen, die ich nicht benötige? Wenn du 10.000 Euro auf dem Konto hast, schmeißt du dann auch einfach 300 Euro aus dem Fenster, weil ja noch genug übrig ist?
Ich finds echt arm wie heuzutage die meisten Programme hier wo fast nichts drin ist, schon auf 500-800kb kommen.

Na dann schreib doch alles in ASM oder gleich im Machinensprache. Merkst du wohin der Zug fährt? Frameworks erzeugen eben einen gewissen Overhead, dafür hast du aber auch einfacher beim Programmieren und sparst Zeit, Mühe und die Programme sind wartbarer. Zeit ist heute Geld. Und die paar Bruchteile eines Cents die heute Festplattenspeicher kostet, simd vernachlässigbar. Eher müllst du dir deine Festplatte mit Bildern, Videos und Musik zu als mit Exe-Dateien.

Moderiert von user profile iconMartok: Quote repariert.
delfiphan
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic star
Beiträge: 2684
Erhaltene Danke: 32



BeitragVerfasst: So 28.11.10 22:13 
user profile iconMartok hat folgendes geschrieben Zum zitierten Posting springen:
Das Framework ist kein Teil vom Betriebssystem, genausowenig wie die MSCVRT ein Teil vom Betriebssystem ist.

user profile iconFrEaKY hat folgendes geschrieben Zum zitierten Posting springen:
Nö tut es nicht. Nicht jeder müllt seinen Computer voll mit allem möglichen unnützen Zeugs.

Das ist was ihr denkt. Das einzige was aber zählt, ist, wie es Microsoft definiert; und da scheint ihr nicht informiert zu sein.
Delphi-Laie
ontopic starontopic starontopic starontopic starontopic starontopic starofftopic starofftopic star
Beiträge: 1600
Erhaltene Danke: 232


Delphi 2 - RAD-Studio 10.1 Berlin
BeitragVerfasst: So 28.11.10 22:21 
user profile iconScaVo hat folgendes geschrieben Zum zitierten Posting springen:
Wie bekomme ich eine "kleinst"-Exe hin?


Hängt alles nur von der Funktion dieser "exe" ab.

Auch wenn Exe und Com intern ein anderes Format haben, so kann man - nach meiner Beobachtung - Exe in Com umbenennen und umgekehrt, ohne daß die Funktionalitäten leiden.

Die mit sehr großer Wahrscheinlichkeit kleinste (sinnvolle) Com, die es jemals gab, schrieb ich vor knapp 20 Jahren, und zwar bestand sie nur aus 2 Byte und hatte dennoch eine sinnvolle Funktion: In Assembler bestand sie aus der einzigen Funktionszeile

Int 19 (oder Int $19?)

, und nach dem Assemblieren löschte ich alles in der Com-Datei, was noch "drumherum" war, so daß wirklich nur noch die beiden Bytes (eines für Int und eines für 19) übrigblieben.

Int 19 ist ein Hardwareinterrupt für Reboot, der/das - abhängig von der Hauptplatine - unter DOS tatsächlich zu einem Reboot führen konnte.

Dies 2 Bytes wollen jetzt nur noch unterboten werden - wer bietet weniger?
BenBE
ontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic starofftopic star
Beiträge: 8721
Erhaltene Danke: 191

Win95, Win98SE, Win2K, WinXP
D1S, D3S, D4S, D5E, D6E, D7E, D9PE, D10E, D12P, DXEP, L0.9\FPC2.0
BeitragVerfasst: Di 30.11.10 08:47 
@Luckie: Ich darf doch mal:
Diesen Link kennst Du doch hoffentlich?

Nicht!? Lies ihn doch einfach mal ;-)

Die Idee hinter Frameworks ist durchaus gut und lobenswert, aber nicht immer ist es sinnvoll für ein Küchenrack eine Generische Tool Building Factory Factory Factory zu betreiben.

Ich wünsch mir schon seit Jahren, dass ich beim Compilieren einer VCL-Anwendung konfigurieren kann, welchen Kram er aus der VCL in die EXE packt und auf welche Sachen ich gut verzichten kann.

Es mag zwar schön sein, nicht alle Sachen erneut schreiben zu müssen, aber kann man das nicht irgendwo reduzieren, dass man analog wie unter Linux einmal üblich gewesen, die Funktionen alle in Libs auslagert und das Programm im Wesentlichen nur noch ein Stub zum Aufruf der Lib ist?

_________________
Anyone who is capable of being elected president should on no account be allowed to do the job.
Ich code EdgeMonkey - In dubio pro Setting.
jaenicke
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starofftopic star
Beiträge: 19315
Erhaltene Danke: 1747

W11 x64 (Chrome, Edge)
Delphi 11 Pro, Oxygene, C# (VS 2022), JS/HTML, Java (NB), PHP, Lazarus
BeitragVerfasst: Di 30.11.10 09:47 
user profile iconBenBE hat folgendes geschrieben Zum zitierten Posting springen:
Es mag zwar schön sein, nicht alle Sachen erneut schreiben zu müssen, aber kann man das nicht irgendwo reduzieren, dass man analog wie unter Linux einmal üblich gewesen, die Funktionen alle in Libs auslagert und das Programm im Wesentlichen nur noch ein Stub zum Aufruf der Lib ist?
Das nennt sich Runtime Package.
spawn89
ontopic starontopic starontopic starontopic starontopic starhalf ontopic starofftopic starofftopic star
Beiträge: 82
Erhaltene Danke: 7

Linux
CodeTyphon
BeitragVerfasst: Di 30.11.10 10:26 
Man sollte aber schon zwichen
- Gb großen Zwangsframeworks mit weltweit massig verschiedenen Versionen, die aber generell dem Kunden rein gar nichts bringen (.Net, JavaVMs)
und
- nativen Frameworks, die genau das gleiche können und vom Compiler in die Exe optimiert/reduziert werden
unterscheiden
jaenicke
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starofftopic star
Beiträge: 19315
Erhaltene Danke: 1747

W11 x64 (Chrome, Edge)
Delphi 11 Pro, Oxygene, C# (VS 2022), JS/HTML, Java (NB), PHP, Lazarus
BeitragVerfasst: Di 30.11.10 11:22 
user profile iconspawn89 hat folgendes geschrieben Zum zitierten Posting springen:
nativen Frameworks, die genau das gleiche können
Genau das stimmt ja absolut nicht. .NET hat Features, von denen man als Delphientwickler (ohne Prism) nur träumen kann. Und wofür man tausend externe Bibliotheken oder sehr viel eigenen Code bräuchte.

Ich nutze trotzdem lieber Delphi, aber dieses Argument stimmt nicht.
spawn89
ontopic starontopic starontopic starontopic starontopic starhalf ontopic starofftopic starofftopic star
Beiträge: 82
Erhaltene Danke: 7

Linux
CodeTyphon
BeitragVerfasst: Di 30.11.10 11:30 
Sorry, ich meinte es im Sinne von: "auf den gleichen Features des OS basieren"