| Autor |
Beitrag |
Ja-Pa
      
Beiträge: 458
Win XP, Suse 9.3
D1, D3, D5 Std, D7 Pro, D2005 Pers, Kylix 3
|
Verfasst: Sa 25.10.03 13:12
Hallo an alle,
was haltet ihr von .NET?
Ist es schon soweit ausgereift, das man seine Programme (geht ja auch mit Delphi) damit verbreiten kann/sollte?
Microsoft hält es ja scheinbar für die Entwicklung des Jahrhunderts (abgesehen von Windows XP und dem Tablet-PC  ), aber ich finde es noch nicht für ausgereift.
Viele Anwender haben noch gar keine .NET-Laufzeitumgebung auf dem PC und außerdem gibt es die (zumindest von Microsoft) bisher natürlich auch nur für Microsoft-Produkte (und nicht für Linux oder so, sehr plattformunabhängig). Außerdem laufen die Programme langsamer, weil sie erst interpretiert werden müssen.
Und da liegt meiner Meinung nach auch die größte Schwäche von .NET:
Weil es interpretiert werden muss kann jeder mit einem Decomiler den Originalcode ansehen!
Plattformunabhängigkeit ist ja schön und gut, aber .NET ist, finde ich, im Moment noch lange nicht dazu fähig.
Gruß, Ja-Pa
_________________ Der Autor dieses Textes haftet nicht für Schäden an Soft- oder Hardware
oder Vermögensschäden, die durch das Benutzen des Textes entstehen.
|
|
UC-Chewie
      
Beiträge: 531
WinXP
D5 Ent
|
Verfasst: Sa 25.10.03 14:14
| Zitat: | | Ist es schon soweit ausgereift, das man seine Programme (geht ja auch mit Delphi) damit verbreiten kann/sollte? |
Bisher gibt es lediglich eine Preview-Version des .NET-Compilers für Delphi.
| Zitat: | | Außerdem laufen die Programme langsamer, weil sie erst interpretiert werden müssen. |
Das ist nicht richtig, im Prinzip könnten die Programme sogar schneller laufen als native Win32-Anwendungen.
.NET funktinioniert so: Beim Ausführen wird geprüft, ob bereits ein Maschinencode-Compilat der Anwendung im Cache existiert. Ist das der Fall, wird dieses gestartet. Ist dies nicht der Fall (in der Regel beim ersten Start), wird ein solches Compilat erzeugt und dieses gestartet. Die Startgeschwindigkeit ist also nur beim ersten Ausführen langsamer, und die Laufzeit ist nicht langsamer, denn die Anwendung wird ja erst in Maschinencode compiliert und dann ausgeführt.
Da es theoretisch für jede Windows-Version eine eigene .NET-Laufzeitumgebung geben könnte, könnten diese speziell auf diese Version optimiert sein und somit könnte einige Teile des Programmes so schneller ausgeführt werden als wenn das Programm auf der WinAPI basieren würde und beispielsweise, um auf jeder Version lauffähig zu sein, eine schnellere Funktion, die nur in wenigen Versionen von Windows verfügbar ist, durch eine langsamere, die aber überall verfügbar wäre, ersetzt werden.
| Zitat: | | Weil es interpretiert werden muss kann jeder mit einem Decomiler den Originalcode ansehen! |
Wieso denn das? Ein .NET-Compiler erzeugt eine Datei in MSIL (Microsoft Intermediate Language). Diese Datei wird von der .NET-Laufzeitumgebung in Maschinencode compiliert und ausgeführt. Du hast also Einsicht in den MSIL-Code, aber nicht in den Original-Quellcode.
_________________ Egal wie dumm man selbst ist, es gibt immer andere, die noch dümmer sind
|
|
TomT
      
Beiträge: 116
Suse 9.1 WinXP
D6 Pers
|
Verfasst: Sa 25.10.03 20:24
| Zitat: | Wieso denn das? Ein .NET-Compiler erzeugt eine Datei in MSIL (Microsoft Intermediate Language). Diese Datei wird von der .NET-Laufzeitumgebung in Maschinencode compiliert und ausgeführt. Du hast also Einsicht in den MSIL-Code, aber nicht in den Original-Quellcode.
|
Doch leider schon, man kann mit den entsprechenden Tools den kompletten Quellcode inklusive Kommentaren(!) wiederherstellen
_________________ ...und da wurde mir klar, dass eine Toolbar keine Kneipe für Heimwerker ist.
|
|
UC-Chewie
      
Beiträge: 531
WinXP
D5 Ent
|
Verfasst: Sa 25.10.03 20:42
Hm, das wäre schlecht, wenn das ginge. Hast du mal nen Link?
_________________ Egal wie dumm man selbst ist, es gibt immer andere, die noch dümmer sind
|
|
TomT
      
Beiträge: 116
Suse 9.1 WinXP
D6 Pers
|
Verfasst: Sa 25.10.03 23:00
finde den Link grad nich, aber das hier geht schonmal in die Richtung: www.program-transfor...lationSalamanderTest
_________________ ...und da wurde mir klar, dass eine Toolbar keine Kneipe für Heimwerker ist.
|
|
UC-Chewie
      
Beiträge: 531
WinXP
D5 Ent
|
Verfasst: So 26.10.03 11:09
Hm, OK, hab mir das grad mal durchgelesen. Du hattest gesagt, dass sogar die Kommentare wiederhergestellt würden, und das kam mir sehr seltsam vor. Aber zumindest bei diesem Programm sind die Kommentare ja vom Decompiler generiert. Na ja, eine vollständige Decompilierung findet zwar nicht statt, aber eine fast vollständige. Sehr interessant.
_________________ Egal wie dumm man selbst ist, es gibt immer andere, die noch dümmer sind
|
|
matze
      
Beiträge: 4613
Erhaltene Danke: 24
XP home, prof
Delphi 2009 Prof,
|
Verfasst: So 26.10.03 21:20
hmmm auf die gefahr hin micht hier zu outen:
was ist denn das dot-net konzept von ms genau ?
_________________ In the beginning was the word.
And the word was content-type: text/plain.
|
|
Ja-Pa 
      
Beiträge: 458
Win XP, Suse 9.3
D1, D3, D5 Std, D7 Pro, D2005 Pers, Kylix 3
|
Verfasst: Mo 27.10.03 13:40
@matze: www.delphi-source.de.../net/allgemein.shtml
und www.delphi-source.de.../net/framework.shtml
Ich habe übrigens nichts gegen .NET im Gegenteil, wenn das noch weiter ausgebaut wird ist das eine gute Möglichkeit plattformunabhängige Programme zu erstellen.
Aber ich möchte mich jetzt nicht, nur weil das alle (?) tun, auf .NET stürzen.
Ich finde, es hat noch ein, zwei Jahre Entwicklungszeit vor sich.
Und das mit dem Decompilieren gefällt mir nicht wirklich
mfg, Ja-Pa
_________________ Der Autor dieses Textes haftet nicht für Schäden an Soft- oder Hardware
oder Vermögensschäden, die durch das Benutzen des Textes entstehen.
|
|
Ja-Pa 
      
Beiträge: 458
Win XP, Suse 9.3
D1, D3, D5 Std, D7 Pro, D2005 Pers, Kylix 3
|
Verfasst: Mo 27.10.03 13:46
| Zitat: |
MSIL - Microsoft Intermediate Language:
.NET-Compiler erzeugen keinen prozessorabhängigen Maschinencode mehr, sondern einen Zwischencode. Dieser Code sieht nahezu gleich aus, egal, mit welcher Programmiersprache ursprünglich gearbeitet wurde. Es genügt nun, die Datei mit dem IL-Code weiterzugeben. Er ist prinzipiell plattformunabhängig und auf jedem Rechner lauffähig, auf dem sich eine CLR befindet.
IL-Code wird jedoch nicht - wie bei Java - interpretiert, sondern stets vor der Ausführung in Maschinencode übersetzt. Und zwar für den Prozessor optimiert, auf dem das Programm ausgeführt werden soll.
Die Compilierung erfolgt dabei "just in time" (JIT). Es wird also nicht das komplette Programm übersetzt, sondern immer nur der Teil, der gerade benötigt wird, so dass der Programmstart nicht verzögert wird.
|
Ihr habt mal wieder recht. So kann das Programm wirklich schneller ablaufen, weil es für das jeweilige System optimiert wird.
Aber braucht das nicht mit der Zeit ziemlich viel Festplattenspeicher?
Wenn jede EXE-Datei einmal in der MSIL und einmal als Maschinencode vorliegem muss?
Und wie merkt das System, wenn der MSIL gelöscht wurde um dann den Maschinencode auch zu löschen?
Oder müllt dann die Festplatte voll?
_________________ Der Autor dieses Textes haftet nicht für Schäden an Soft- oder Hardware
oder Vermögensschäden, die durch das Benutzen des Textes entstehen.
|
|
Spieler1
      
Beiträge: 469
D6 Pers
|
Verfasst: Mo 27.10.03 14:08
Titel: .net
Dass man die MSIL Dateien dekompilieren kann ist mir egal. Wenn man OpenSource programmiert, wird wohl niemand mehr die Programme dekompilieren  .
Nur finde ich, dass .net eigentlich keine richtigen Vorteile bietet. Wenn MS .net auch für andere Betriebssysteme machen würde, fände ich es sehr gut.
|
|
Klabautermann
      

Beiträge: 6366
Erhaltene Danke: 60
Windows 7, Ubuntu
Delphi 7 Prof.
|
Verfasst: Mo 27.10.03 14:17
Titel: Re: .net
Hi,
| Spieler1 hat folgendes geschrieben: | | Nur finde ich, dass .net eigentlich keine richtigen Vorteile bietet. Wenn MS .net auch für andere Betriebssysteme machen würde, fände ich es sehr gut. |
MS macht es nciht. M$ erlaubt es aber anderen dies zu tun, so wird es bald .NET Framewoks für alle gänigen Platformen geben und MS hat eine breitere Zielgruppe an die sie ihre Programme bringen kann.
| Ja-Pa hat folgendes geschrieben: | | Aber braucht das nicht mit der Zeit ziemlich viel Festplattenspeicher? |
Das hat doch noch nie getört. Immerhin leben wir in zeiten wo es niemanden mehr stört wenn eine Textverarbeitung mehr als 100 MB belegt. Es wir auch niemanden stören wenn sie dann das doppelte brauch, schließlich sind Festplatten ja nicht alzu teuer.
Gruß
Klabautermann
|
|
Ja-Pa 
      
Beiträge: 458
Win XP, Suse 9.3
D1, D3, D5 Std, D7 Pro, D2005 Pers, Kylix 3
|
Verfasst: Mi 29.10.03 12:33
Titel: Re: .net
| Klabautermann hat folgendes geschrieben: | Hi,
Das hat doch noch nie getört. Immerhin leben wir in zeiten wo es niemanden mehr stört wenn eine Textverarbeitung mehr als 100 MB belegt. Es wir auch niemanden stören wenn sie dann das doppelte brauch, schließlich sind Festplatten ja nicht alzu teuer.
|
Trotzdem, da wird doch auch das ganze System langsamer, wenn der Computer erst immer nach der richtigen Datei suchen muss. Besonders, wenn man viele Programme installiert/deinstalliert. Und außerdem können andere Benutzer nackgucken, was man da an Programmen laufen hatte
@Spieler1: Das finde ich auch. Solange es die .NET Laufzeitumgebung nicht für andere Betriebssyteme gibt, hat das für mich keine Vorteile.
Gruß, Ja-Pa
_________________ Der Autor dieses Textes haftet nicht für Schäden an Soft- oder Hardware
oder Vermögensschäden, die durch das Benutzen des Textes entstehen.
|
|
|