"Die Zukunft von .NET" und ein paar Fragen!
-
gomberl schrieb:
dir ist schon klar das java kein open source noch etwas ähnliches ist.die gesamten rechte liegen bei sun. Es ist genauso propietär wie ms .net von der rechtsgundlage her.
Schreibt Sun noch lange rote zahlen schaut es um unser aller java gar nicht gut aus. Meine persönlicht Meinung.Es gibt auch Java-Umgebungen, die nicht von SUN stammen, sogar welche auf OpenSource Basis, da jeder seine eigene Java-Umgebung schreiben darf. SUN kann diese dann zertifizieren.
Also ist Java sehr wohl auch ohne SUN möglich (oder denkst du, dass Firmen wie IBM sich wirklich von einer proprietären Sprache abhängig machen lassen, vorallem wenn die von einer Firma stammt, die eh ein Konkurrent ist?)Und wie Gregor_ bereits gesagt hat, gibt es den Java Community Process, der dafür sorgt, dass auch andere Firmen bei der Java Entwicklung integriert sind. MS macht das ja alles selber und umgeht auch die eigenen Standards
Gregor_ schrieb:
Bis jetzt kann ich immer noch nichts davon sehen.
Mono 1.0 ist für das 2. Quartal 2004 angekündigt
http://www.go-mono.com/mono-roadmap.htmlGregor_ schrieb:
Also die gleiche Strategie wie beim Internet Explorer, beim Media Player usw. IMHO bleibt es abzuwarten, ob das weiter funktioniert, da ja jetzt langsam auch die Wettbewerbshüter darauf aufmerksam werden.
da gab es doch schon ein Prozess, den SUN AFAIK verloren hat, wo SUN eingefordert hat, dass MS wenn es dotNET in Windows integriert auch Java integrieren muss und da SUN ja jetzt eh alle Prozesse gegen MS auf Eis gelegt hat...
Und ich muss sagen, ein Browser und MediaPlayer gehören sicher nicht fest in ein Betriebssystem integriert. Aber was sollte man gegen ein Entwicklungs-Framework haben. Das gehört nun einmal zu einem Betriebssystem.
-
gomberl schrieb:
Aber wenn man sich das in dem artikel angesprochene case-study (Pet Shop) ansieht dann merkt man das dieselbe .Net und java anwendung extreme unterschiede aufweisen
Die 2 für uns wichtigsten merkmale sind:- .Net skaliert doppelt so gut und holt wesentlich mehr aus der hardware heraus (war mir irgendwie klar)
- .Net braucht wesentlich weniger code um dieselbe applikation zu implementieren. Hier rede ich von einem faktor 5!!!
dazu sei gesagt: die java implementierung wurde von der middleware company gemacht, die spezialisten mit java und j2ee sind und die studie wurde auch bei ihnen gemacht, also will ich hier kein "ms bezahlte studie" hören
Sollte das jetzt ne Steilvorlage sein, damit ich diesen Link mal wieder poste? Ich dachte eigentlich, dass du weißt, was man von diesem Benchmark halten sollte. ...und natürlich wurde der Benchmark von MS finanziert.
Es wundert mich eigentlich, dass noch immer auf diesen Benchmark Bezug genommen wird.
BTW: Hier ist noch ein Link. Da wird jetzt behauptet, dass der .NET Petstore, der ja von MS geschrieben wurde, ein Musterbeispiel für Antipatterns ist. Soll man das jetzt als Grundlage nehmen, um zu behaupten, dass .NET es stark begünstigt, qualitativ schlechte Software zu entwickeln? Schließlich wurde das sogar von MS geschrieben und die Wissen bestimmt, wie man am Besten mit den eigenen Produkten umgeht.
-
kingruedi schrieb:
da gab es doch schon ein Prozess, den SUN AFAIK verloren hat, wo SUN eingefordert hat, dass MS wenn es dotNET in Windows integriert auch Java integrieren muss und da SUN ja jetzt eh alle Prozesse gegen MS auf Eis gelegt hat...
Das war etwas anders. Das war nämlich nur eine einstweilige Verfügung, die Sun erwirken wollte, die noch vor Abschluss des Prozesses wirksam werden sollte. Was mit dem Prozess selbst passiert ist, weiß ich nicht. Vermutlich hat sich der jetzt durch diese Einigung zwischen MS und Sun in Luft aufgelöst.
Aber letztendlich muss Sun nicht mehr in diese Richtung klagen. Sun hat mit den großen PC-Hersteller Verträge abgeschlossen, damit diese eine aktuelle JVM auf den PCs installieren. Weiterhin muss Sun IMHO auch nicht mehr bezüglich des unfairen Wettbewerbs klagen: Da gibt es jetzt andere Institutionen, wie die EU-Kommission, die sich darum kümmern.
-
ich weiss das es verschiedenste java implementierungen gibt
ich bin aktiver java entwickler auf allen platformen (ME, SE und EE)
aber die java specification ist (obwohl oeffentlich zugaenglich) eine technologie die sun microsystems gehoert.
ich hatte einmal einen interessanten artikel der das beeindruckend dargestellt hat, aber der ist (wie vieles andere) beim letzten rechneraufsetzen draufgegangenauch MS hat einen community process, nur laeuft dieser voellig anders und es ist schwerer zu partizipieren. Vor allem gold und silver certified ms partner machen dort sehr stark mit.
Sollte das jetzt ne Steilvorlage sein, damit ich diesen Link mal wieder poste? Ich dachte eigentlich, dass du weißt, was man von diesem Benchmark halten sollte. ...und natürlich wurde der Benchmark von MS finanziert.
Es wundert mich eigentlich, dass noch immer auf diesen Benchmark Bezug genommen wird.
BTW: Hier ist noch ein Link. Da wird jetzt behauptet, dass der .NET Petstore, der ja von MS geschrieben wurde, ein Musterbeispiel für Antipatterns ist. Soll man das jetzt als Grundlage nehmen, um zu behaupten, dass .NET es stark begünstigt, qualitativ schlechte Software zu entwickeln? Schließlich wurde das sogar von MS geschrieben und die Wissen bestimmt, wie man am Besten mit den eigenen Produkten umgeht.
ja auf den link habe ich gewartet. ich habe mindestens 4 solcher artikel gelesen und auch 3 die das gegenteil behaupten und realistisch darstellen.
den du ausgesucht hast ist der beste muss ich zugeben.das man nicht alles aus dem petshop fuer baare muenze nehmen kann ist sowieso klar, aber aus persoenlicher intensiver erfahrung mit beiden platformen kann ich sagen das .Net sowohl besser performt, als auch einfacher zu entwickeln ist und ich glaube auch wesentlich weniger code benoetigt. Ich kann jetzt keine direkten vergleiche liefern (ich entwickle das gleiche nicht 2 mal), aber alleine die erstellung eines web services geht in .Net um den faktor 5 schneller, selbst wenn man fuer java ein genausogutes tool wie vs studio benutzt (jbuilder x - enterprise)
ms hat den petshop (IMHO) nicht bezahlt. Sie haben ausgaben uebernommen, aber das steht ja auch eindeutig drinnen. Wo dort steht das sie die mehrere mann-monate arbeit bezahlt haben kann ich mich nicht erinnern.
ich kann mir auch nicht vorstellen was TMC mit einem negativen bericht fuer J2EE anfangen sollte, das ist ihr kerngeschaeft und das wuerden sie sich doch nicht absichtlich versauen.im endeffekt habe ich mir meine meinung so gebildet:
entweder: einfachere entwicklung, weniger code, mehr performance und bindung an microsoft
oder: bessere community, leichteres partizipieren und eine groessere unabhaengigkeit (auch wenn java zu sun gehoert) mit J2EEgomberl
PS:
ich bin kein "religions" anhaenger, es interessiert mich eigentlich nicht ob ich j2ee oder .net entwickle, beides sind spitzen systeme und ermoeglichen gutes und schnelles entwickelnhier gilt anzumerken: ich bin selbstaendig, arbeite im J2 bereich hauptsaechlich, beschaeftige mich zur zeit sehr stark mit der integration von J2EE und .Net und auch mit J2ME und .Net Compact Framework
-
Nochmals vielen Dank für die vielen und sehr informations reichen antworten!
Jetzt hab ich allerdings noch zwei Fragen!
C# soll ja relativ einfach zum erlernen sein jedenfalls einfacher als c++
stimmt das?Falls es dann in 2 jahren mit dem .net nicht so toll laufen sollte aus welche gründen auch immer,
wie schaut es dann mit dem umstieg aus von C# zu C++?
Ich weiss das C# mehr Java ähnelt aber würd mich trotzdem intressieren ob man dann die komplette sprache (C++)neu erlernen muss?
-
C# setzt sich auf jeden fall durch - IMO
wenn es den doch nicht so kommen sollte hast du noch immer den vorteil sehr schnell auf java umsteigen zu koennen.
Fuer C++ wird mehr arbeit notwendig sein, aber den OO teil hast du durch C# auf jeden fall abgedeckt. Dennoch C++ ist um ein ganzes eck schwerer zu lernen und zu nutzen.
Dementsprechend wird auch der C++ marktanteil am PC und Server immer weiter nach unten tendieren.
Man muss nie eine komplette sprache lernen solange das programmier paradigma gleich / aehnlich ist
-
Elvellon schrieb:
C# soll ja relativ einfach zum erlernen sein jedenfalls einfacher als c++
stimmt das?Ja. C++ ist _wesentlich_ komplexer als C# oder Java.
C#und Java sind etwa gleich komplex und gleich schwer zu lernen.Falls es dann in 2 jahren mit dem .net nicht so toll laufen sollte aus welche gründen auch immer,
wie schaut es dann mit dem umstieg aus von C# zu C++?
Ich weiss das C# mehr Java ähnelt aber würd mich trotzdem intressieren ob man dann die komplette sprache (C++)neu erlernen muss?Der Umstieg ist schwer, aber nicht zu schwer.
Die Syntax ist sehr aehnlich - aber die Idiome und der Stil ist sehr unterschiedlich. Ich wuerde deshalb den Umstieg als nicht zu leicht annehmen.Im Prinzip wirst du sehr viel C++ neu lernen muessen (denn bis auf die Syntax sind die sprachen recht unterschiedlich)
-
Shade Of Mine schrieb:
Elvellon schrieb:
C# soll ja relativ einfach zum erlernen sein jedenfalls einfacher als c++
stimmt das?Ja. C++ ist _wesentlich_ komplexer als C# oder Java.
C#und Java sind etwa gleich komplex und gleich schwer zu lernen.da muss ich dir wiedersprechen. inwiefern ist c++ komplexer? bis auf generics kann c# auch alles das was c++ kann. C# ist auch komplexer als Java mit z.B. Operator Overloarding etc.
-
kenner6 schrieb:
da muss ich dir wiedersprechen. inwiefern ist c++
Geh bitte... soll willst du mich nerven? Funktioniert nicht.
Wenn C# alles kann was C++ kann (ich gehe jetzt mal von der neuen version mit Generics aus) - implementiere mir mal bitte boost::spirit in C#
Oder boost::mpl? Oder Expression templates?
Na gut, wie waere es mit Mehrfachvererbung?
Oder ueberladung _aller)|_ operatoren...ohne jetzt auf den Unterschied VM <-> native Code einzugehen. Da gibts ja auch noch ein paar unterschiede
-
Die Frage ist natürlich, obs mich wirklich weiterbringt, wenn ich operator&& überladen kann, und ob die Mehrfachvererbung im C++ Stil wirklich mächtiger ist als die im C# Stil.
Ich bezweifle das. Da bringt mich glaub ich ein Garbage Collector weiter, weil das gleich ein ganz anderes Programmieren ist.
-
Wo hier im Zusammenhang mit .NET auch immer die Existenz von C/C++ angesprochen wird,
wie siehts da mit D aus, wird das überhaupt ne Chance haben unter Windows?
-
SirLant schrieb:
wie siehts da mit D aus, wird das überhaupt ne Chance haben unter Windows?
IMHO nein. Es mag zwar sein, dass D durchaus einige Vorteile hat, aber es hebt sich auch nicht sonderlich ab. Deshalb bräuchte es schon eine starke "Lobby" in Form einer Firma, einer Organisation oder ähnlichem, um nicht nahezu vollständig ignoriert zu werden. Diese Lobby hat D aber nicht.
Allerdings scheint es tatsächlich einige wenige Jobs zu geben, bei denen man D braucht. www.jobstats.co.uk listet D hin und wieder. Siehe da: http://www.jobstats.co.uk/jobstats.d/SKILL/FullList.D.html
-
Jo. Genau diese Lobby ist auch der Grund, warum man C# wirklich nicht unterschätzen sollte. Ich habe mich mal ein wenig damit befasst, und IMHO gibt es für die Windows-Programmierung zur Zeit nichts besseres.
Und solange Windows dermaßen führend ist, ist der Aufstieg von C# garantiert.
-
Optimizer schrieb:
Und solange Windows dermaßen führend ist
<Ideologie-Modus>
...und DU kannst mithelfen, dass sich dieser miserable Zustand auf Dauer ändert. Als Programmierer kannst DU entscheiden, für welche Plattformen du entwickelst. DU kannst auch entscheiden, ob DU MS in vorauseilendem Gehorsam folgst oder ob DU möglichst unabhängig bleiben möchtest und dich erst dann in Richtung MS bewegst, wenn es der Markt erfordert. Wie soll ein Endanwender einem alternativen System eine Chance geben, wenn es noch nichteinmal der Entwickler macht?
</Ideologie-Modus>
-
Ich programmiere bevorzugt in Java, wenn es aber um Spiele geht, bleibt mir sowieso nur Windows, weil ich praktisch kein OpenGL noch sonst irgendwelche plattformübergreifenden Libs kann.
Ich bin dann auch auf DX angewiesen, von daher -> C++ oder C#.
-
Optimizer schrieb:
weil ich praktisch kein OpenGL noch sonst irgendwelche plattformübergreifenden Libs kann.
Ist das nicht Grund genug, sich damit mal ausgiebig zu beschäftigen?
-
Optimizer schrieb:
Ich bin dann auch auf DX angewiesen, von daher -> C++ oder C#.
BTW: Es gibt für Windows eine Java3D-Version, die auf DX aufbaut.
-
Jo das weiss ich, aber Java3D ist mir zu high-level. Managed DirectX rul0rt halt. Gegen das Imperium haben wir keine Chance.
-
Gregor_ schrieb:
Optimizer schrieb:
Und solange Windows dermaßen führend ist
<Ideologie-Modus>
...und DU kannst mithelfen, dass sich dieser miserable Zustand auf Dauer ändert. Als Programmierer kannst DU entscheiden, für welche Plattformen du entwickelst. DU kannst auch entscheiden, ob DU MS in vorauseilendem Gehorsam folgst oder ob DU möglichst unabhängig bleiben möchtest und dich erst dann in Richtung MS bewegst, wenn es der Markt erfordert. Wie soll ein Endanwender einem alternativen System eine Chance geben, wenn es noch nichteinmal der Entwickler macht?
</Ideologie-Modus>Uni-Gerede.
Ein Entwickler muß dort sein, wo die Kunden und der Markt sind. Und nur in begrenztem Rahmen kann er wirklich die Plattformen auswählen, vielleicht mal beratend einwirken. Aber wenn ein Entwickler in einer reinen Win-Umgebung unbedingt eine Applikation auf Linux reinbringen will, zeugt das auch nicht gerade von Geschick.
Ein guter Entwickler kann in dieser Woche problemlos eine Windows-Applikation mit C# entwickeln und in der nächsten Woche eine Linux-Applikation mit C++ und QT. Ganz ohne ideologische Klimmzüge. Sowas kann man einfach erwarten.
-
Marc++us schrieb:
Ein Entwickler muß dort sein, wo die Kunden und der Markt sind. Und nur in begrenztem Rahmen kann er wirklich die Plattformen auswählen, vielleicht mal beratend einwirken. Aber wenn ein Entwickler in einer reinen Win-Umgebung unbedingt eine Applikation auf Linux reinbringen will, zeugt das auch nicht gerade von Geschick.
Ein guter Entwickler kann in dieser Woche problemlos eine Windows-Applikation mit C# entwickeln und in der nächsten Woche eine Linux-Applikation mit C++ und QT. Ganz ohne ideologische Klimmzüge. Sowas kann man einfach erwarten.
IMHO ist eine Entscheidung für Qt oder ähnliches keine Entscheidung gegen Windows. Es ist eine Entscheidung für Vielfalt und Flexibilität. Wer plattformübergreifend entwickelt fesselt seinen Kunden nicht an eine bestimmte Plattform oder einen bestimmten Hersteller. Wer hingegen auf Windows-Only setzt, nimmt dem Kunden jegliche Wahlmöglichkeit und Flexibilität. ...und das alles nur für eine etwas bessere Integration? ...oder wofür überhaupt?
Abgesehen davon sind die Kunden und der Markt noch nicht bei .NET. Das wird, nachdem was hier einige sagen, ja erst mit Longhorn ganz groß. ...und selbst Longhorn muss sich erstmal am Markt etablieren. IMHO kann man somit frühestens in 4 Jahren oder so davon ausgehen, dass wirklich eine große Mehrheit des Marktes ein .NET-Framework nutzt. IMHO ist es für einen Entwickler deshalb viel zu früh, sich ausgiebig mit .NET zu beschäftigen, schließlich sollte der Entwickler dort sein, wo die Kunden sind und der Markt ist. ...und das ist momentan nicht .NET.