.NET und C# Pro und Contra

Re: Paint.NET als Alternative zu Microsoft Paint

CaptainIglo schrieb:
BSDDaemon am 27.12.05 - 16:52 schrieb:
Hast du mal mit Paint.net gezeichnet? Nach kurzer Nutzung hoch auf 50MB RAM Verbrauch... und das für ein stink normales Mal Programm... sehr performant dieses .NET... muss ich schon lassen... für ein kleines s/w Bild 50MB Speicher...QUOTE]

Dazu einfach mal: NO COMMENT!
Ist einfach nur lächerlich...
Es ist arm zu versuchen Michi aeh BSDDaemon in den Dreck zu ziehen.. Scheiße ist das Niveau gesunken... Naja, aber lesen lernste auch noch ;)

mfg
 
Re: Paint.NET als Alternative zu Microsoft Paint

Tja. Zu dumm, dass C# nicht interpretiert wird. Sollteste eigentlich schon mitbekommen haben und wenn du mit dem Bittorrent client Azureus meinst, dann weiß ich nicht, wie du auf diese Werte kommst.
Du hast wohl vergessen den Java Prozess mit in deine Werte einzubeziehen. Bei meinem Athlon XP 1600+ benötigt Azureus während eines Downlaods mindestens 50% meiner CPU Leistung.

Ach ja. Kannst du mir mal ein paar große Anwendungen, die in Java geschrieben wurden nennen? Mir fallen da nciht viel ein und die jenigen, die mir einfallen sind alle großer Mist.
Es gibt zwar auch noch keine richtig großen .NET Programme, aber .NET ist ja noch neu.
Es gibt übrigens auch schon einige Spiele, die in C# geschrieben wurde. Dafür scheint es also zu reichen.
 
Re: Paint.NET als Alternative zu Microsoft Paint

noxon schrieb:
Tja. Zu dumm, dass C# nicht interpretiert wird. Sollteste eigentlich schon mitbekommen haben und wenn du mit dem Bittorrent client Azureus meinst, dann weiß ich nicht, wie du auf diese Werte kommst.
Du hast wohl vergessen den Java Prozess mit in deine Werte einzubeziehen. Bei meinem Athlon XP 1600+ benötigt Azureus während eines Downlaods mindestens 50% meiner CPU Leistung.
Falsch. ;) Dies war bei den ersten Versionen der Fall, die neuen Versionen sind recht stabil und Resourcendschonend.

Ach ja. Kannst du mir mal ein paar große Anwendungen, die in Java geschrieben wurden nennen? Mir fallen da nciht viel ein und die jenigen, die mir einfallen sind alle großer Mist.
Es gibt zwar auch noch keine richtig großen .NET Programme, aber .NET ist ja noch neu.
Es gibt übrigens auch schon einige Spiele, die in C# geschrieben wurde. Dafür scheint es also zu reichen.
Der 3D-Desktop von SUN afaik ?

mfg
 
Re: Paint.NET als Alternative zu Microsoft Paint

BSDDaemon schrieb:
Ich weiss ja nicht wie das bei dir ist, ich verfüge privat und beruflich über einige Rechner.

Und ein 'kann' ist keine 'werde'.

Da sonst nichts mehr kam kann ich das wohl als Zustimmung nehmen... Danke für die Einsicht. Der Post von CapFuture war eigentlich schon das perfekte Schlusswort. vielleicht bis dahin noch mal löschen und das Ganze stoppen =)

Entschuldigung. Konnte ich ja nicht wissen. Habs zurückgezogen.
 
Re: Paint.NET als Alternative zu Microsoft Paint

HeadHunter2 schrieb:
Dafür läufts überall!!!!

unter welchem OS läuft denn .NET noch ? .NET ist im Gegensatz zu JAVA eben nicht plattformunabhängig...

greetz shaft
 
Re: Paint.NET als Alternative zu Microsoft Paint

TheShaft schrieb:
unter welchem OS läuft denn .NET noch ? .NET ist im Gegensatz zu JAVA eben nicht plattformunabhängig...

greetz shaft

Theoretisch schon. Praktisch gibts noch nicht für alle OS ein Framework. Windwos, Linux und MacOS sind aber schon vertreten (siehe oben).
 
Re: Paint.NET als Alternative zu Microsoft Paint

CaptainIglo schrieb:
Theoretisch schon.

theoretisch ja, praktisch wird Microsoft aber für kein anderes OS ein .NET Framework bereitstellen (oder findest du irgendwo auf der Microsoft Seite nen DL Link ?)...

allerhöchstens wird es derartige hobbyprojekte geben, von MS direkt -> nö...

greetz shaft
 
Re: Paint.NET als Alternative zu Microsoft Paint

noxon schrieb:
Tja. Zu dumm, dass C# nicht interpretiert wird. Sollteste eigentlich schon mitbekommen haben und wenn du mit dem Bittorrent client Azureus meinst, dann weiß ich nicht, wie du auf diese Werte kommst.
Du hast wohl vergessen den Java Prozess mit in deine Werte einzubeziehen. Bei meinem Athlon XP 1600+ benötigt Azureus während eines Downlaods mindestens 50% meiner CPU Leistung.

Ach ja. Kannst du mir mal ein paar große Anwendungen, die in Java geschrieben wurden nennen? Mir fallen da nciht viel ein und die jenigen, die mir einfallen sind alle großer Mist.
Es gibt zwar auch noch keine richtig großen .NET Programme, aber .NET ist ja noch neu.
Es gibt übrigens auch schon einige Spiele, die in C# geschrieben wurde. Dafür scheint es also zu reichen.

das ist ein ziemlich exemplarischer post. es werden hier immer wieder behaubtungen gepostet. welche spiele gibt es denn in .net? mit der aussage es gibt spiele die mit .net programmiert wurden kann man absolut nix anfangen - schließlich gibt es auch tetris in python, trotzdem würde kein pythonprogrammierer auf die idee kommen es wäre schneller als c++.

was hier immer wieder ausser acht gelassen wird: java und c# können definitiv NICHT schneller sein als c++, denn c++ wird in maschienencode compiliert, genauso wie es am ende die java runtime oder das .net framework sind. und niemand kann mir erzählen das ein just in time compiler der sich schnellstens zu beeilen hat in ein paar sekunden vor dem start der anwendung MEHR optimieren kann als ein c++ compiler der sich dafür einige minuten zeit lassen kann. ich bin mir fast sicher das sowohl .net als auch java programme KEINEn einzigen befehl nutzen der nicht in praktisch jeder x86 cpu vorhanden ist. sse oder 3dnow werden mit sicherheit nicht unterstützt - und damit kann das programm auchnicht schneller sein als ein normales c++ programm.

dann die speicherverwaltung. sicher kann die nützlich sein - aber dafür die runtime? dafür 30mb downloaden und zumindest beim ersten start der anwendung(sind wir mal optimistiscg) ewig warten?

eine garbecollection lässt sich auch in c++ für c++ implementieren(dann muss man halt statt int eine eigene klasse für zahlen nehmen, is bei .net ja auch nix anderes) - oder halt direkt in eine sprache, ohne runtime.

vorallem bei .net ist die runtime der letzte witz. die gui-klassen werden vermutlich niemals plattforumunabhängig sein und so geht der einzige vorteil (ein "binary" funktioniert auf jeder platform) aufjedenfall verloren - oder wollt ihr mir jetzt erzählen .net ist nicht ausschließlich für gui anwednungen gedacht.

zu guter letzt bleibt nunmal der bittere nachgeschmack - jedes java und .net programm das ich in den finger hatte war relativ langsam und resourcenhungrig (visual studio .net[teilweise .net], eclipse[java] um mal 2 große zu nennen). von der angeblichen geschwindigkeitsvorteilen keine spur. stattdessen sind sie alle extrem speicherhungrig - die garbagecollection kann also nicht wirklich gut funktionieren. gutes beispiel ist da auch azureus. ich benutze es selber öfter, auch wenn ich in letzter zeit häufiger bitcomet nutze. und es ist schon eines der schnelleren java programme mitlerweile (dank des verzichts auf swing, soweit ich weiß sind die dort benutzen gui klassen sogar in c implementiert um die geschwindigkeit gegenüber swing zu erhöhen...).

wiegesagt warte ich immernoch auf ein argument für eine solche runtime. soziemlich jede sprache ist mitlerweile plattformunabhängiger als c# und .net. durch Qt kann man beispielsweise c++ gui programme schreiben die weit unter 10mb bibliotheken brauchen und trotzdem bis auf die garbagecollection so ziemlich alles können was auch .net und die java bibliotheken bieten. und das auf weit mehr plattformen als .net (qt läuft nativ auf so ziemlich jedem unix, auf linux macos windows und dankt mebended qr mit ein paar klassen weniger[z.b. kein opengl] auch auf praktisch jedme handheld für den es einen c++ compiler gibt) und um vielfaches schneller als java/swing.

und Qt ist nur ein beispiel von vielen....

EDIT: einen absatz hab ich ganz vergessen. die angebliche integration von c++ in windows:
ein einfaches c++ programm braucht keine einzige dll. die stl lässt sich wunderbar eincompilieren und alles andere gehört nicht zu c++ dazu.
abgesehen davon habe ich selbst mit qt, gtk, mfc und wtl zusammen weniger platz verschwendet als mit java oder .net.
 
Zuletzt bearbeitet:
Re: Paint.NET als Alternative zu Microsoft Paint

ok, dann wird C# nicht interpretiert... warum dann sich die mühe machen und den code freilegen, damit das programm doch nicht für andere plattformen LEICHT portiert werden kann?
Ich teste jetzt mal Mono+.Net Paint auf meinem Mac... mal sehn ob's wirklich geht... wenn nicht, dann kann ich auch auf den freigelegten code verzichten...

Ich wusste nicht, ob man Azureus & Co. hier erwähnen darf, daher diese umschreibung... Aber wenn du willst und meine aussage als falsch bezeichnest, mach ich gerne von meiner Speicherauslastung ein screenshot und stell ihn online...

Nachtrag: Leider hat sich Azureus nicht wirklich von Swing getrennt... bei mir läuft Azuerues unter dem SWT-Prozess :( Wenn das Ding nicht so umfangreich wäre, hätte ich's schon lange von der Platte gesemmelt... Andererseits zeit dieses App, dass es wirklich plattformunabhängig ist und das ist wirklich ein Plus Punkt von Java...
 
Zuletzt bearbeitet:
Re: Paint.NET als Alternative zu Microsoft Paint

Siberian..Husky schrieb:
das ist ein ziemlich exemplarischer post. es werden hier immer wieder behaubtungen gepostet. welche spiele gibt es denn in .net?
Da wäre zum Beispiel Arena Wars
Das ist so eine Art Capture the Flag im Command and Conquer Stil und gar nicht mal schlecht. Wie man auf den Screenshots sieht ist es grafisch auch nicht zu verachten.

Die Entwickler sagen sogar, dass sich das Game ohne große Schwierigkeiten auch auf Linux oder Mac portieren lassen würde. Klick mich.
Hier noch ein Arena Wars Q&A

Leider finde ich die Herstellerseite nicht. In dessen Forum gibt es nämlich einen extra C# Thread, weil das so viele User interessiert hat.

Des Weiteren habe ich noch einen Flugzeugsimulator gesehen, der in .NET geschrieben wurde und soweit ich weiß gibt es auch sonst noch einige Portierungen von älteren Spielen, wie zum Beispiel Quake 2.
 
Zuletzt bearbeitet:
Ich kann und will einiges von deinem Geblubber nicht so stehen lassen...
CaptainIglo schrieb:
@CapFuture:
In dieser Hinsicht ist .net weit vor Java. Ein .net-Programm im Idle hat auch 0%-Prozessorlast. Wie genau der GarbageCollector bei .net arbeitet weiß ich jetzt auch nicht, aber er frisst nicht durchgehend Resourcen. .net Reserviert auch nicht von vornherein einen Speicherbereich sondern immer nur den Wirklich benötigten.
von Java hast du überhaupt keine Ahnung wie mir scheint. Java reserviert auch auf Bedarf den Speicher. Du kannst beim Start der VM eine Maximalgröße mitgeben. Der Garbage Collector läuft meist erst dann an wenn nicht mehr genug Platz für ein neues Objekt vorhanden ist oder wenn gerade wenig los ist.
Eclipse wird dir vielleicht was sagen, oder? läuft idle auf 0%, auch wenns bei 20 geöffneten Dateien etc. schon mal seine 120MB im Speicher braucht.

CaptainIglo schrieb:
@Spacy:
Also gerade viel Ahnung von der Materie hast du nicht: VB gibts mit und ohne .net, also ist die Aussage nimm VB anstatt .net etwas unsinnig. Und die API/MFC (steht überigens für Application Programming Interface und Microsoft Foundation Class) hat nix mit Hardwarenähe zu tun. Das sind lediglich Bibliotheken zur graphischen Ausgabe. Wobei hier die von mir erwähte Integrierung im System nötig ist, welche schon standartmäßig vorhandne ist, wie es in zukunft mit .net auch sein wird. Und wozu .net? Ließ mal meine Argumente oben. Wenn du die Dinge nicht brauchst: Du musst ja nicht .net nehmen...
VB ohne .net (Version 6 und kleiner) sind aber immer noch um Längen schneller also VB.NET

[...]
CaptainIglo schrieb:
.net hat mit der Programmierung an sich NIX zu tun. Bei managed C++ programmiert man ganz normal C++ nur wird kein Assembler Programm erstellt sonder der MSIL (Microsoft Intermediat Languge, der Zwischencode welcher von der RE übersetzt wird). Und wenn man das ganze auf die Spitze treiben möchte, könnte man sagen, das du davon absolut keine Ahnung hast...
Ich glaub ich steh im Wald... Wenn .net nichts Programmierung zu tun hat.... hmm... erklär das mal einem Microsoft Programmierer.

CaptainIglo schrieb:
@Siberian..Husky:
VM = Virtual Maschine = Komplett simulierter PC auf einem anderen.
RE = Runtime Envirorment = bei .net besteht es z.B. aus dem JIT (Just in Time-Compiler), Security Modul, Classloader, Garbagecollector,... und wird zum Echtzeitübersetzen von Zwischencode benötigt. Einen Vorteil davon hast du aber richtig erkannt, aber es gibt noch mehr (siehe oben).
Das is nun wirklich Bullshit. Bei VMware mag das zwar stimmen, bei Java aber sicherlich nicht. Die Java VM heißt auch nicht umsonst Java Runtime Environment.
Die .net Runtime ist auch eine Virtual machine. Die Unterschiede bei Java und .net sind in diesem Bereich absolut nicht vorhanden.

Ansonsten kann ich zu .net sagen, dass es sagenhaft langsam ist im Vergleich zu einer nochmalen C++ Anwendung wenn man bedenkt welche Plattformen man damit gegenwärtig ansprechen kann.
Für Java trifft das genauso zu, kein Zweifel, ich kann aber schon jetzt Win/Mac/*NIX damit programmieren ohne mich in 20 verschiedene Grafikbibliotheken und damit auch Denkweisen einarbeiten zu müssen.

SUN hat mit der Hotspot VM eine Technik, die häufig benutzten Code optimiert und nur marginal langsamer als C++ ablaufen lässt. Allerdings erst nach einigen Durchläufen.
Bedenkt man aber, dass Java ursprünglich für Server entwickelt wurde, die den ganzen Tag überwiegend den gleichen Code abarbeiten und das bestenfalls jahrelang, ist die Idee ganz akzeptabel.

edit: .net auch...

Java wird aber immer mehr für GUI verwendet und ist dafür noch ein bisschen zu langsam. Ein Schritt in die Richtige Richtung ist da das SWT von IBM. Damit greift man auf Systemeigene Steuerelemente (Buttons, Scrollbars etc.) zurück und ist deutlich schneller.

Zu C#: Es ist eine Freude Java oder C# zu lernen, vor allem weil man nicht so viele Tücken hat wie z.B. mit C++. Die Bibliotheken die dabei sind, stellen MFC in meinen Augen in den Schatten. Die STL ist aber sicherlich performanter.
Wenn man bedenkt, dass Java vorher da war und weiter verbreitet ist, sehe ich für .net nicht unbedingt eine rosige Zukunft. Zumindest solange man keinen Performancevorteil gegnüber Java hat.

Du merkst, ich komme aus der Java Ecke und bin somit nicht ganz objektiv. Mit .net hab ich mich aber auch schon weit genug beschäftigt um mitreden zu können. Ich mags nur nicht wenn Halbwissen laut ausgeschrien wird und du dann auch noch andere zu Sau machst dies nicht besser wissen.

edit / Ergänzung:
Bei Java und .net geht es allgemein nicht nur um Peformance sondern um Wartbarkeit von Code, Protabilität und Software Engineering.
Bei der Portabilität kommt .net noch ein wenig zu kurz, beim anderen ist es aber mit Java gleichauf.

Ich hab mich auch lange gegen Java ausgesprochen weils mir so langsam erschien, aber Programmieren ist damit wirklich um einiges effektiver.
Nicht umsonst heißt es: "CPU Zyklen sind billig, Programmierer nicht"... lasst euch das mal durch den Kopf gehen wenn ihr das nächste Memory Leak jagt.
 
Zuletzt bearbeitet:
[UPS]Erazor schrieb:
Java wird aber immer mehr für GUI verwendet und ist dafür noch ein bisschen zu langsam. Ein Schritt in die Richtige Richtung ist da das SWT von IBM. Damit greift man auf Systemeigene Steuerelemente (Buttons, Scrollbars etc.) zurück und ist deutlich schneller.
Das ist es eigentlich auch, was mich absolut an Java stört. In all den Jahren haben sie es nicht auf die Reihe bekommen eine vernünftige und schnelle GUI Implementierung zu realisieren.

[UPS]Erazor schrieb:
Wenn man bedenkt, dass Java vorher da war und weiter verbreitet ist, sehe ich für .net nicht unbedingt eine rosige Zukunft. Zumindest solange man keinen Performancevorteil gegnüber Java hat.
Naja. Das könnte man denken, aber es handelt sich hier immerhin um Microsoft. Die haben es auch geschaft Visual Basic zu der meist verwendeten Programmiersprache der Welt zu machen, obwohl man das wirklich nicht als solche Bezeichnen kann.

Von VB.NET spreche ich hier allerdings nicht. VB.NET ist jetzt wirklich etwas ganz Neues und hat meiner Meinung auch ein paar Vorteile gegenüber C#, wie zum Beispiel die späte Bindung oder optionale Parameterübergaben. Natürlich hat C# mit seiner Fähigkeit mit Pointern und unsafe Code umzugehen auch einen gewaltigen Vorteil, den ich persönlich aber noch nie wirklich benötigt habe.

Die Entwicklung in VB.NET hingegen wird im Visual Studio.NET um ein Vielfaches erleichtert, als die Entwicklung von C# Programmen.
VB.NET Programme werden schon beim Schreiben des Programms interpretiert, wodurch sogar runtime Fehler sofort bemerkt werden und nicht erst beim Kompilieren des Programms. Die Codevervollständigung erspart einem auch an vielen Stellen einiges an stupider Schreibarbeit.
In der nächsten Version soll es auch wieder möglich sein, dass man mitten im Programmablauf den Code des Programms ändern kann, wie das bisher schon in VB der Fall war. Das ist für's Debuggen ungemein hilfreich, wenn man im Code vor und zurückspringen kann und dabei noch Zeilen hinzufügen oder entfernen kann. Ich hoffe das kommt wirklich wie versprochen mit der Version 2.0 des .NET Frameworks.
Aber ich schweife ab.


[UPS]Erazor schrieb:
Du merkst, ich komme aus der Java Ecke und bin somit nicht ganz objektiv. Mit .net hab ich
mich aber auch schon weit genug beschäftigt um mitreden zu können.
Wie du merkst komme ich aus der .NET Ecke und programmiere am liebsten in VB.NET. Ich bin also auch nicht ganz objektiv, aber ich hab natürlich auch shcon Programme in Java und C# geschrieben und ich muss zugeben, dass Java durch sein reifes Alter zu einer wirklich guten Sprache herangewachsen ist, aber mich stört wie gesagt die schlechte GUI-Unterstützung.
Außerdem möchte ich die vielen Vorteile, die das VS.NET in Zusammenhang mit VB.NET bietet nicht mehr missen.
Mir kommt es nämlich auch um den Entwicklungskomfort und nicht nur auf die puren Fähigkeiten einer Sprache an. Was bringen mir die schönsten Fähigkeiten, wenn ich mir einen Ast abbrechen muss diese zu realisieren?

[UPS]Erazor schrieb:
Bei Java und .net geht es allgemein nicht nur um Peformance sondern um Wartbarkeit von Code, Protabilität und Software Engineering.
Bei der Portabilität kommt .net noch ein wenig zu kurz, beim anderen ist es aber mit Java gleichauf.
Dito. Da kann ich dir nur vollkommen zustimmen. Die Performance ist meiner Meinung zwar gar nicht so schlecht, aber selbst wenn, dann stört das heute doch wirklich keinem mehr. Wenn wir immer noch auf unseren 233 MHz Pentium 2 arbeiten würden vielleicht, aber heute hat man doch wirklich mehr als genug Rechenleistung zur Verfügung. Spielt es eine Rolle, ob mein Programm das System zu 10% oder zu 20% auslastet? Ich würde sagen "nein". In speziellen zeitkritischen Gebieten kann man immer noch auf unsafe Code in C# zurückgreifen.
Wie ich aber oben schon erwähnte scheint die Geschwindigkeit von C# Programmen sogar für die sonst so zeitkritischen Spiele zu reichen. Deren Spiel läuft auf einem 1GHz Rechner mit 64MB Ram und 8 gleichzeitig verbundenen Spielern optimal. So schlecht kann es um die .NET Performance also nicht stehen.

Gibt es eigentlich auch einige Große Java Spiele? (Ist ne ernst gemeinte Frage)

[UPS]Erazor schrieb:
Nicht umsonst heißt es: "CPU Zyklen sind billig, Programmierer nicht"... lasst euch das mal durch den Kopf gehen wenn ihr das nächste Memory Leak jagt.
Genau so ist es.
Ich finde auch, dass es bei einer Sprache die Zeit, die ein Programmierer für sein Programm benötigt eine große Rolle spielen sollte. Schließlich kostet das richtig Geld. Warum soll ich in einer noch so tollen Sprache Programmieren, wenn ich dafür doppelt so lange brauche um ein simples Problem zu lösen? .NET hat da meiner Meinung nach ein paar gute Ansätze.
 
Zuletzt bearbeitet:
noxon schrieb:
Ich hoffe das kommt wirklich wie versprochen mit der Version 2.0 des .NET Frameworks.

Hier kannst du dir gratis die neuen IDE's runterladen. Wenn so ein Feautre kommen soll, ist das in der Beta sicher auch schon (teilweise) drinnen...

@all:
Auf der oberen Seite:
Ladet auch da mal C# Express 2005 herunter (28MB) und startet es mehrmals:
Ab dem 2./3. start, startet das in ca. 1s und das find ich verdamt schnell für eine komplette IDE!
 
Re: Paint.NET als Alternative zu Microsoft Paint

CapFuture schrieb:
Dieses "Regeln" braucht jede menge resourcen...
Klar ist die sicherheitsfrage nicht unwichtig, aber wenn mir jedes java programm erstmal den ganzen speicher allokiert um wieder den gc anzuwerfen ist das etwas unvorteilhaft und bremmst das system aus... zudem hat man immer eine cpu auslastung von min 10% im idle bei java-prgs...
---
c/c++ ist in allen modernen OS integriert... weil sie nur in assembly interpretiert werden muss ;)
---
thx für den link zu mono :)
---
mountwalker: THG schreibt sehr viel unsinn... und noch hat keine Programmiersprache mir Angst gemacht... das problem liegt nicht an .Net sondern am drang alles zu automatisieren...


Mich regt es mehr auf, das man mit C nicht so angenehm mit strings umgehn kann wie in Java :D

Ich hatte in der Zwischenzeit keine Zeit, deshalb kommt das jetzt etwas spät, ich sehe es aber noch als notwendige Antwort an:
Genau das ist doch der Punkt den ich da erklährt habe, der Charakter von .Net ist alles zu automatisieren, (!.Net ist nicht nur eine Programmiersprache!) und genau das steht bei Tom's Hardware, das ist das was dir laut dieser Aussage Angst macht also habe ich doch recht gehabt. ;)
 
Zuletzt bearbeitet:
Re: Paint.NET als Alternative zu Microsoft Paint

es geht ja nicht dadrum das java und c#/vb.net als programmiersprachen misst sind. sondern das die vm/runtime einfach vollig überflüssig ist. den code beim debugen zur laufeit ohne neucompilierung ändern ging soweit ich weiß bei visual studio 6 auch mit c++. warum sollte es also nicht mit jeder sprache funktionieren die direkt in maschienencode übersetzt wird? alle features die java und .net bieten lassen sich ohne runtime implementieren ohne das man dadurch einen größeren naxchteil hätte, ausser das man für jede plattform einzeln compilieren müsste. allerdings wäre es ja kein problem bei einer selbst entwickelten sprache einen crossplatformcompiler zu schreiben der auch unter windows die entsprechenden linux oder mac binarys schreiben kann...

so eine runtime macht nur mehr arbeit. die is weit aufwendiger als ein normaler compiler da man sehr stark auf die eschwindigkeit achten muss. ausserdem muss eine zwischensprache entwickelt werden etc.

am ende bringt es für den anwender nur nachteile und die vorteile hätte der entwickler auch anders haben können.
 
Re: Paint.NET als Alternative zu Microsoft Paint

Siberian..Husky schrieb:
am ende bringt es für den anwender nur nachteile und die vorteile hätte der entwickler auch anders haben können.

wie es bereits erwähnt wurde:
Bei einer RE kann die RE auf CPU-Feautres (3Dnow, MMX, SSE,...) optimieren und das auch nachträglich.
Also kann z.B. ein 2 Jahre altes Programm auf ein nigelnagelneues Prozessorfeautre optimiert werden ohne das das Programm ansich verändert werden muss. Nur die neuste RE ist erforderlich und da gibts dann auch den DL-Größen-Vorteil:
Anstatt für jedes Programm ein 5MB Update ein 15MB Update für die RE welches für alle Programme Vorteile bringt.
 
Siberian..Husky schrieb:
am ende bringt es für den anwender nur nachteile und die vorteile hätte der entwickler auch anders haben können.
Ach ja.
Einen ganz wichtigen Vorteil habe ich ja ganz vergessen. Die DLL-Hell hat mit .NET endlich ein Ende. Nie wieder überflüssige oder fehlende DLLs, keine Registrierung von DLLs in der Registry und Programme lassen sich auch wieder ohne Installation einfach nach dem Kopieren auf die Platte starten.
Das sollte den Linuxern eigentlich gefallen. :)

Ich finde das schon sehr anwenderfreundlich, wenn man seine Programme einfach so auf eine Diskette kopieren und auf einem anderne Rechner sofort von da aus starten kann. Normale Programme, die ohne weitere Grafiken, Sounds oder Sonstiges auskommen passen Dank der kleinen Dateigröße von .NET Programmen wunderbar auf eine Diskette.

Obwohl ich zugeben muss, dass Disketten im Zeitalter der USB-Sticks fast ausgestorben sind. Trotzdem. Schön zu wissen, dass es geht :)

@CaptainIglo:
Danke für den Link, aber dummerweise bin ich kein MSDN Subscriber :(
Ich muss wohl warten, bis mir das mein Arbeitgeber bezahlt ;)
 
Zuletzt bearbeitet:
noxon schrieb:
Gibt es eigentlich auch einige Große Java Spiele? (Ist ne ernst gemeinte Frage)
Mir wäre bisher mal keins bekannt.
Ich versuche mich aber gerade mit einem Kommilitionen an einem Spiel mit Java3D (OpenGL / DirectX für Java). Soll ein echtzeitstrategiespiel werden, rein multiplayer. Mal sehen was draus wird. Die Performance sollte reichen.
 
Re: Paint.NET als Alternative zu Microsoft Paint

CaptainIglo schrieb:
wie es bereits erwähnt wurde:
Bei einer RE kann die RE auf CPU-Feautres (3Dnow, MMX, SSE,...) optimieren und das auch nachträglich.
Also kann z.B. ein 2 Jahre altes Programm auf ein nigelnagelneues Prozessorfeautre optimiert werden ohne das das Programm ansich verändert werden muss. Nur die neuste RE ist erforderlich und da gibts dann auch den DL-Größen-Vorteil:
Anstatt für jedes Programm ein 5MB Update ein 15MB Update für die RE welches für alle Programme Vorteile bringt.

die runtime ist in der regel deutlich größer als 15mb. und eine bibliothek die das alles kann ist keine 10mb groß, und ein programm das soviel aus einer bibliothek nutzt ist auch keine 5mb groß. eine optimierte qt version hat etwa 3mb und da is soweit ich weiß alles drin was es auch bei .net gibt. c++ programme die nur qt und stl nutzen werden keine 2mb groß.

ausserdem bin ioch mir sicher das weder die java runtime noch .net sse, mmx oder irgendwelche anderen befehlsetze nutzt die es nicht auf jeder cpu gibt. solche optimierungen dauern einfach zu lange als das sie in ein paar sekunden gemacht werden können. wiegesagt braucht ein c++ compilierer der viel optimieren soll in der regel selbst für kleinere programme über 1 minute - ich halte es für unmöglich das ein jit compiler ähnliche ergebnisse in ein paar sekunden bringen kann.

und am ende ist zumindest java bytecode um einiges größer als der maschienencode der am ende raus kommt. ich weiß zwar nicht wie das bei .net ist aber bei java läd man wesentlich mehr als nötig...

noxon: schonmal mozilla oder firefox genutzt? beides in c programmiert. nutz ein haufen dlls - aber halt!? kein einziger registry eintrag. und es läuft ohne installation(einfach mal auf dem ftp nachsehen wo der installer liegt, im selben verzeichnis gibts ne win 32 zip datei ;)).
wer die finger von com und co lässt kann wunderbar mit dlls und ohne registry arbeiten... normale dlls müssen nämlich nicht registriert werden.

aber wie du ein .net programm auf eine diskette bekommen willst musst du mir nochmal erklären. mehr als hello world wird man in den 1,4mb nicht unterbringen können. und für die runtime wird es selbst auf vielen usbsticks knapp...
 
Zuletzt bearbeitet:
Re: Paint.NET als Alternative zu Microsoft Paint

Siberian..Husky schrieb:
aber wie du ein .net programm auf eine diskette bekommen willst musst du mir nochmal erklären. mehr als hello world wird man in den 1,4mb nicht unterbringen können. und für die runtime wird es selbst auf vielen usbsticks knapp...

3200 Codezeilen in C# -> 64kb bei der .exe
Die RE hat <25MB

@noxon:
Für die Beta der einzelnen IDE's (Visual C# Express 2005,Visual Basic Express 2005) musst du kein MSDN-Account haben. Den brauchst du nur für die Beta vom kompletten VS'05.
 
Zurück
Oben