Hallo Experten,
Nach langer Abstienenz muss ich mich wieder mit der Programmierung
auseinandersetzen. Habe mich daher über die verschiedenen Sprachen
informiert und habe mich eigentlich für C# entschieden. Jetzt konnte
ich auf Heise lesen, dass Microsoft verlautet hat, C# würde auf
absehbarer Zeit nicht weiter unterstützt.
Meine Frage daher an euch: Habe ich das richtig verstanden und setze ich
jetzt auf das falsche Pferd, dass sich die Einarbeitung eigentlich nicht
mehr lohnt?
Was meint ihr?
LG
Hans
?
Link?
Würde mich doch sehr überraschen... ich kann mich erinnern das
irgendwann mal die meldung kam dass se für Metro für irgendwelche
grafischen Spielereien was anderes nehmen wollten. Aber sonst ist C# ja
doch die stärkste Sprache die sie haben, und jetzt nicht ein Fehlschlag,
den man aufgeben würde.
Wenn du schon vorgibst so einen Quatsch auf Heise gelesen zu haben,
warum gibst du uns nicht einfach einen Link auf den Artikel?
Komisch, irgendwie habe ich das Gefühl, dass es diesen Artikel gar nicht
gibt...
Klaus Wachtler schrieb:> beim Überfliegen fiel mir kein Abgesang auf C# auf.>> Aufgefallen ist mir nur, daß der Artikel von Holger Schwichtenberg> stammt.
An den TO: Etwas deutlicher...Vergiss Schwichtenberg (nicht nur diesen
"Artikel")
Und zu C#
- das ist immer noch ein ISO/ECMA-Standard (ISO/IEC 23270:2006 bzw.
ECMA-334
http://www.ecma-international.org/publications/standards/Ecma-334.htm)
- es gibt nicht nur von MS passende Compiler, IDEs etc.
- WinRT (das, was mit Windows 8 kommt) erlaubt auch die Verwendung von
C#, VB etc. für die Programme,
http://tirania.org/blog/archive/2011/Sep-15.html (Abschnitt "Is it .NET
or Not?")
- es gibt viel zu viele Investitionen in .NET (nicht nur C#) als das MS
das mal eben absägen könnte (gerade jetzt, wo div. andere Systeme den
Markt(anteil) von MS nicht nur angreifen, wäre eine solche Entscheidung,
tödlich)
p.s. Silverlight wird noch bis 2021 (nein, kein Schreibfehler)
unterstützt
http://support.microsoft.com/lifecycle/search/default.aspx?sort=PN&alpha=Silverlight&Filter=FilterNO,
VS LightSwitch 2011 (das auf SL setzt) bis 1.11.2022 (extended support
end date)
Hans schrieb:> Hallo Experten,> Nach langer Abstienenz muss ich mich wieder mit der Programmierung> auseinandersetzen. Habe mich daher über die verschiedenen Sprachen> informiert und habe mich eigentlich für C# entschieden.
Na gut.
> Jetzt konnte> ich auf Heise lesen, dass Microsoft verlautet hat, C# würde auf> absehbarer Zeit nicht weiter unterstützt.
Hehehe, ja, klar. Die Leitsprache von .NET, abgekündigt, sicher.
> Meine Frage daher an euch: Habe ich das richtig verstanden und setze ich> jetzt auf das falsche Pferd, dass sich die Einarbeitung eigentlich nicht> mehr lohnt?
Zusätzlich zu dem was die anderen gesagt haben: wer auf nur eine Sprache
setzt, egal wie kompetent er dann darin ist, ist, ähhh, wie sage ich das
höflich, extrem schlecht beraten.
Ich beobachte ja zur Zeit fasziniert die Java-Leute. Oracle scheint ja
dabei zu sein Java langfristig zu killen (oder doch nicht, wer weiss?).
Ich kenne einige Leute die mehr oder weniger sagen "Java oder Tod(tm)".
Spannend was die dann tun wenn es zum Schlimmsten kommt.
Mal abgesehen davon dass diese Leute heute schon erschreckend wenig
Ahnung von der Welt ausserhalb ihres kleinen, total portablen (Bwahaha!)
Universums haben... :-(
>Mal abgesehen davon dass diese Leute heute schon erschreckend wenig>Ahnung von der Welt ausserhalb ihres kleinen, total portablen (Bwahaha!)>Universums haben... :-(
Gezwungenermaßen musste ich mich mit Java beschäftigen und ich muss
sagen, so schlecht ist es nicht. Wenn man nicht so großen Wert auf
Leistung legt, kann man damit ganz gut programmieren. Ist halt nicht
besonders schnell, auch wenn Sun wahrscheinlich nächstes Jahr 'beweist',
dass es schneller als Assembler ist -.-
Nicht falsch verstehen. Ich bleibe weiter bei C(++).
Zum Thema: Wenn man sich so umsieht, scheint C# doch zumindest
einigermaßen verbreitet zu sein und Microsoft ist ja kein
Hobbyprogrammierer, der irgendwann die Lust verliert sein Projekt zu
pflegen. Wird also wohl noch Zukunft haben.
warum schneidet java (und .Net) eigentlich in benchmarks immer so gut
ab?
aber die Real Live anwendungen, (vorallem GUI sachen) sind immer SOOOO
extrem ZÄHHH
z.b. "talend" (das ist ein eclipse based ETL usw..)
sogar jemand der behauptet einen "fairen" benchmark zu haben, sagt dass
java nur etwas langsamer ist
http://www.irrlicht3d.org/pivot/entry.php?id=446
liegt es daran, dass man in JAVA immer bemüht ist "extrem sauberen" Code
zu schreiben (zuviele classen, zu tief abgeleitet, zuviele
schnittstellen, zuviel "lehrbuch" programieren...)
zuviele Integer (mit großem "I") usw.
??
>warum schneidet java (und .Net) eigentlich in benchmarks immer so gut ab?
Bei meinem Test hat Java für die Berechnung (nicht Ein- und Ausgabe)
viermal so lange gebraucht wie C. Java soll besser sein beim Instanzen
Erzeugen als C++.
Was man davon hält, muss jeder für sich entscheiden. Ich denke, dass
Programme, die so viele Instanzen benötigen, dass sich der Vorteil
bemerkbar macht, auch so viel rechnen müssen, dass der Vorteil der
schnellen Erzeugung durch die langsame Berechnung wieder aufgehoben
wird.
Robert L. schrieb:> warum schneidet java (und .Net) eigentlich in benchmarks> immer so gut ab?
Wieso nicht? Kommt ja auch auf den Benchmark an... C# und Java haben
beide einen JIT Compiler welcher den Code (oder die Hotspots) direkt in
Maschinencode umsetzt.
Robert L. schrieb:> aber die Real Live anwendungen, (vorallem GUI sachen)> sind immer SOOOO extrem ZÄHHH
Ich entwickle all meine (GUI) Anwendungen in Java und da ist nix zäh
wenn man es richtig mache, bei einigen Firmen auch in C++ was auch nicht
automatisch das no-plus-ultra ist, ob eine Anwendung zäh ist (was auch
immer das bedeutet) hängt vor allem vom Programmierer und von den
Anforderungen ab.
Lustig finde ich immer, das behauptet wird Java sei so langsam, dafür
dan irgendwelche mördermäßig umfangreichen Frameworks/IDEs angeführt
werden.
In C gibt es sowas nur garnicht als das man vergleichen könnte.
Robert L. schrieb:> zuviele
Geht in allen Sprachen, und wie in allen Sprachen kann man in Java gut
als auch schlecht programmieren.
Dussel schrieb:> Bei meinem Test hat Java für die Berechnung (nicht Ein- und Ausgabe)> viermal so lange gebraucht wie C
Ja was den für eine Berechnung? 1+1? Wieviele Iterationen und welche
Datenmengen. Sauber programmiert oder einfach "mal schnell
hingeschrieben".
Dussel schrieb:> dass der Vorteil der schnellen Erzeugung durch die> langsame Berechnung wieder aufgehoben wird.
Man muss vorallem die Entwicklungsgeschwindigkeit und die
Fehleranfälligkeit betrachten ob das ganze nachher 100ms oder 110ms
rechnet ist in der Praxis meist völlig egal, und falls nicht kann man
kritische Routinen immer noch in eine DLL auslagern...
Robert L. schrieb:> sogar jemand der behauptet einen "fairen" benchmark zu haben
Besonders interessant ist dort der Abschnitt:
>> Knowing a bit about the C++ and Java optimizers, I was also able to>> revert the results completely. For example although using equivalent>> Java and C++ code, I was able to make the C++ version take 16 seconds>> for the nested loops-test while Java only needed 1 second by adding>> some virtual method calls which I knew Java could optimize.
Und hier zeigt sich, wenn man will kann man überall Mist bauen ;)
Läubi .. schrieb:> Dussel schrieb:>> Bei meinem Test hat Java für die Berechnung (nicht Ein- und Ausgabe)>> viermal so lange gebraucht wie C> Ja was den für eine Berechnung? 1+1? Wieviele Iterationen und welche> Datenmengen. Sauber programmiert oder einfach "mal schnell> hingeschrieben".
Das war Primzahlensuche in einen bestimmten Bereich (z.B. 0-100.000) mit
dem Sieb des Eratosthenes. Ziemlich primitiv, aber für den
Laufzeitvergleich brauchbar.
Läubi .. schrieb:> Dussel schrieb:>> dass der Vorteil der schnellen Erzeugung durch die>> langsame Berechnung wieder aufgehoben wird.> Man muss vorallem die Entwicklungsgeschwindigkeit und die> Fehleranfälligkeit betrachten ob das ganze nachher 100ms oder 110ms> rechnet ist in der Praxis meist völlig egal, und falls nicht kann man> kritische Routinen immer noch in eine DLL auslagern...
Ja, aber ob es 100ms oder 300ms dauert macht einen Unterschied. Die
Argumentation "Es ist zwar langsamer, aber dafür schneller entwickelt"
finde ich ziemlich unpassend. Der Programmierer, der Geld für seine
Arbeit bekommt, lagert seine Arbeit auf den Rechner oder die Nerven des
Kunden, der dafür Geld bezahlt, aus.
Das Argument gilt natürlich nicht, wenn das Programm eine
'Sonderanfertigung' ist. Dann machen sich auch die Entwicklungskosten
bemerkbar.
Dussel schrieb:> Der Programmierer, der Geld für seine> Arbeit bekommt, lagert seine Arbeit auf den Rechner oder die Nerven des> Kunden, der dafür Geld bezahlt, aus
Dieses Argument ist natürlich besonders gut wenn man dann OpenSource
Lösungen anprangert ;)
Wie gesagt, es geht auch "flüssig" der Aufwand und die nötige Erfahrung
ist halt höher.
Dussel schrieb:> Das war Primzahlensuche in einen bestimmten Bereich (z.B. 0-100.000) mit> dem Sieb des Eratosthenes. Ziemlich primitiv, aber für den> Laufzeitvergleich brauchbar.
Naja... nicht gerade die typische Aufgabe aber in welchem Bereich die
Abweichung lag und ob die Algorithmen gleichwertig waren wissen wir
immer noch nicht ;)
Gerade bei Arrayzugriffen kann man viel vermurksen, ebenso bei
Datentypen etc... siehe obiger Link ...
Dussel schrieb:> "Es ist zwar langsamer, aber dafür schneller entwickelt
Wie gesagt, schneller und wartungsfreundlicher und weniger
fehleranfällig. Gerade da PCs immer schneller werden ist es sowie müßig
wegen wenigen Prozenten sich 'nen Kopf zu machen, das Gesamtkonzept muss
stimmen und wenn die Anwendung ständig mit nem Coredump abraucht dafür
aber meistens ein paar Sekunden schneller ist, kommt auch keine rechte
Freude beim Anwender auf.
Läubi .. schrieb:> Dussel schrieb:>> Der Programmierer, der Geld für seine>> Arbeit bekommt, lagert seine Arbeit auf den Rechner oder die Nerven des>> Kunden, der dafür Geld bezahlt, aus> Dieses Argument ist natürlich besonders gut wenn man dann OpenSource> Lösungen anprangert ;)
Ja, vor Allem die. Wenn die nicht perfekt laufen, bin ich sauer.
Schließlich habe ich mir die Arbeit gemacht das runterzuladen, dann kann
ich doch wohl erwarten, dass die sich die Arbeit machen, die richtig zu
programmieren ;-)
Läubi .. schrieb:> Dussel schrieb:>> Das war Primzahlensuche in einen bestimmten Bereich (z.B. 0-100.000) mit>> dem Sieb des Eratosthenes. Ziemlich primitiv, aber für den>> Laufzeitvergleich brauchbar.>> Naja... nicht gerade die typische Aufgabe aber in welchem Bereich die> Abweichung lag und ob die Algorithmen gleichwertig waren wissen wir> immer noch nicht ;)
Das war ein Test, weil ich mir selber mal ein Bild machen wollte, ohne
auf eventuell geschönte Benchmarks zurückgreifen zu müssen. Das Programm
habe ich in einer Sprache geschrieben und dann kopiert. Nur das Anlegen
des Arrays und die Ausgabe habe ich auf die Sprache angepasst. Beides
fließt aber nicht in die Zeitmessung ein.
>aber in welchem Bereich die Abweichung lag[…]>Gerade da PCs immer schneller werden ist es sowie müßig>wegen wenigen Prozenten sich 'nen Kopf zu machen,
habe ich beantwortet mit
>Bei meinem Test hat Java für die Berechnung (nicht Ein- und Ausgabe)> viermal so lange gebraucht wie C
Die Zeiten waren 10s in C mit gcc gegen etwas über 40s in Java mit
Eclipse. Dabei machte es fast keinen Unterschied, ob die Optimierung
ein- oder ausgeschaltet war. Mit anderen Suchbereichen habe ich das auch
probiert und das Verhältnis war genauso, nur weiß ich die Zahlenwerte
nicht mehr.
>wegen wenigen Prozenten
Wenn es nur ein paar Prozent wären, wäre ja nichts zu sagen, aber die
Laufzeit des Javaprogramms waren 400% der Laufzeit des C Programms.
Versteh es nicht falsch, ich will Java nicht schlechtreden (das machen
genug andere ;-), ich schreibe nur meine Erfahrung und meine
Einschätzung.
Das sind die beiden Quelltexte. Ich habe es nochmal probiert und dabei
kam im Bereich von 0-300.000 etwa zehn Sekunden in C gegen etwa 50s in
Java. Wie gesagt, das habe ich vor längerem mal schnell geschrieben.
Deshalb wird 1 als Primzahl angezeigt, glaube ich. Vielleicht läuft es
auf einem anderen System auch anders. Kannst ja mal deine Ergebnisse
schreiben.
Dussel schrieb:> Kannst ja mal deine Ergebnisse> schreiben.
Also folgendes kommt bei mir raus, ich habe beide Programme so
modifiziert, dass sie die Größe von der Kommandozeile lesen:
1
time ./a.out 100000
2
real 0m3.237s
3
user 0m3.136s
4
sys 0m0.008s
5
6
time java Primzahlen 100000
7
real 0m2.840s
8
user 0m2.904s
9
sys 0m0.032s
10
11
-------------------------------------------
12
13
time ./a.out 300000
14
real 0m25.993s
15
user 0m25.598s
16
sys 0m0.032s
17
18
time java Primzahlen 300000
19
real 0m21.951s
20
user 0m21.793s
21
sys 0m0.080s
Dussel schrieb:> mit dem Sieb des Eratosthenes
Irgendwie seh' ich gerade nicht wie dein Algorithmus das
implementiert... aber egal ist auf jedenfall die Ergebnisse von dem von
dir angehängtem Quellcode, jeweils mit
1
g++ (Debian 4.4.5-8) 4.4.5
und
1
javac 1.6.0_26
ohne spezielle Aufrufparameter.
In diesem Fall kann die Problemlösung auf jedenfall sehr viel mehr vom
Algorithmus als von der Programmiersprache profitieren.
>Irgendwie seh' ich gerade nicht wie dein Algorithmus das implementiert...
In der for-Schleife in der Main werden alle zahlen durchlaufen und von
der Funktion auf Primität(?) getestet. Wenn es eine Primzahl ist, wird
die Zahl im Feld gespeichert.
In der Funktion wird versucht, die Zahl nacheinander durch alle Zahlen
(außer 1), die kleiner als die Hälfte der Zahl sind zu teilen. Ist die
Zahl durch eine andere Zahl teilbar, wird false zurückgegeben.
>In diesem Fall kann die Problemlösung auf jedenfall sehr viel mehr vom>Algorithmus als von der Programmiersprache profitieren.
Natürlich. Es ging mir ja nicht darum, eine effektive Lösung zu finden,
sondern ich wollte wissen, wie schnell die Sprachen rechnen. Und C
rechnet halt anscheinend viermal so schnell wie Java.
Dussel schrieb:> rechnet halt anscheinend viermal so schnell wie Java.
Aber offenbar nur wenn du vor dem Rechner sitzt, nicht Läubi. Wobei da
natürlich die verwendete Java Engine eine grosse Rolle spielen dürfte.
A. K. schrieb:> Dussel schrieb:>>> rechnet halt anscheinend viermal so schnell wie Java.>> Aber offenbar nur wenn du vor dem Rechner sitzt, nicht Läubi.
Ja, wundert mich. Ich kann natürlich jetzt nicht sagen, ob sein C oder
mein Java langsam ist. Die Zeiten kann man ja leider nicht direkt
vergleichen.
Aber du könntest mal was über die Versionen von Compiler und Java
preisgeben.
Der Sieve-Benchmark ist übrigens ein Branchenklassiker. Ich würde mich
nicht einmal wundern, wenn mancher Kommerzcompiler dafür einen
Patternmatcher drin hat und ein wenig schummelt. Sowas in der Art ist
schon gelegentlich nachgewiesen worden.
> Gerade da PCs immer schneller werden ist es sowie müßig>wegen wenigen Prozenten sich 'nen Kopf zu machen, das Gesamtkonzept muss>stimmen
das ist das was ich meinte
in der theorie (benchmark) ist java von mir aus 1/2 so schnell (egal)
das haben schnellere hardware schon LÄNGST kompensiert...
trotzdem sind "alle" java programme die ich kenne (ok, das sind nicht
viele) erst mit der letzten/neuesten hardware (i5 2500k usw.) erst
halbwegs "flott" uterwegs
z.b. tv-browser, oder eine zeiterfassung die wir in der firma verwenden,
eclipse usw.
und (meistens) auch nur dann, wenns nicht mehr ganz "java only" ist (wie
z.b. SWT usw.)
"früher" erkannte man jede java anwedung SOFORT wenn man nur das fenster
größer zog (kein repaint während vergrößerung)
das ist inzwischen etwas besser, aber von einer nativ anwendug immer
noch meilenweit enfernt...
kennt wer gegenbeispiele??
Dussel schrieb:> ich wollte wissen, wie schnell die Sprachen rechnen. Und C> rechnet halt anscheinend viermal so schnell wie Java
Nach meinen Tests nicht. Habe gerade auch mal ein paar kleinere
Anpassungen an der Javaversion geändert (unnötige longs raus,
Abbruchbedingung umgeschrieben):
1
publicclassPrimzahlen{
2
publicstaticbooleanPrimzahltest(intZahl){
3
intmax=(Zahl/2)+1;
4
for(inti=2;i<=max;i++){
5
if(Zahl%i==0){
6
returnfalse;
7
}
8
}
9
returntrue;
10
}
11
12
publicstaticvoidmain(String[]args){
13
intEingabe=Integer.parseInt(args[0]);
14
intZaehler=0;
15
intPrimzahlen[]=newint[Eingabe];
16
for(inti=0;i<Eingabe;i++){
17
if(Primzahltest(i)){
18
Primzahlen[Zaehler++]=i;
19
}
20
}
21
for(inti=0;i<Zaehler;i++){
22
System.out.println(Primzahlen[i]);
23
}
24
}
25
}
1
real 0m7.434s
2
user 0m7.993s
3
sys 0m2.384s
Die gleichen Optimierungen bei der C++ Variante:
1
real 0m7.321s
2
user 0m6.988s
3
sys 0m0.016s
Man sieht also:
a) der Unterschied ist vernachlässigbar (die Zahlen schwanken so um
500ms zwischen wiederholten Aufrufen)
b) der Algorithmus und die Implementierung ist sehr viel entscheidender
Klaus Wachtler schrieb:> Bei der Art von Programm sollte doch -O2 schon einiges bringen?
Keine Ahnung was der default ist aber wie gesagt selbst mit -03 bringt
es jetzt nicht soooo den Vorteil (der Unterschied zwischen den Aufrufen
macht das bald mehr aus), der Algoithmus macht da der Sache eher einen
Strich durch die Rechnung.
Dussel schrieb:> In der Funktion wird versucht, die Zahl nacheinander durch alle Zahlen> (außer 1), die kleiner als die Hälfte der Zahl sind zu teilen
Ja der Trick ist doch aber iterativ immer mehr Zahlen auszuschließen:
http://de.wikipedia.org/wiki/Sieb_des_Eratosthenes
Hier mal 1:1 aus Wikipedia übernommen:
Dussel schrieb:> JavaSE 1.6.0_29-b11-402> Eclipse Indigo Release 1
Führe die Versionen doch mal auf der Kommandozeile aus. Im Anhang mal
meine aktuellen Versionen.
Compilieren:
@Robert L. (lrlr):
Der Pferdefuss von Java ist die Startzeit. Ein C Programm kommt fertig
für die Zielmaschine übersetzt daher und startet daher entsprechend
schnell. Bei Java hingegen wird in wesentlichem Umfang erst zur Laufzeit
übersetzt, und das in mehreren Optimierungsstufen je nach Nutzungsgrad
des Codestücks. Wenn im eigenen Programm oder in Libs genug Code
dranhängt, dann kann sich das sehr deutlich bemerkbar machen.
Dazu kommt, dass sich die Übersetzungs- und Optimierungstechniken von
JIT-Compilern und die Architektur von Intels Pentium 4 vermutlich nicht
immer gut vertragen haben.
C:
real 0m9.510s
user 0m9.383s
sys 0m0.054s
Java:
real 0m10.234s
user 0m10.212s
sys 0m0.200s
Ok, scheint doch nicht so schlecht zu sein :-)
Dann muss ich mal rausfinden, wie ich Eclipse dazu kriege, das so
schnell zu machen. Aber ich bin jetzt erstmal weg.
Dussel schrieb:> Dann muss ich mal rausfinden, wie ich Eclipse dazu kriege, das so> schnell zu machen
In einer SDK ist es nicht das primäre Ziel schnellen Code zu erzeugen,
es werden ggf. mehr Debugsymbole eincompiliert etc. außerdem ist gerade
System.out sehr langsam, weil das erst mal abgefangen werden muss dann
in ein GUI Fenster gebracht wird, ggf. scrollen...
Robert L. schrieb:> trotzdem sind "alle" java programme die ich kenne
Na dann nenne doch mal die Programme in Java und die "schnelle
Alternative" in C (bitte keine SDKs...) welche die bessere Performance
bei gleichem Funktionsumfang bietet. So ist das doch stochern im
Nebel...
Robert L. schrieb:> "früher" erkannte man jede java anwedung SOFORT
Puh... gab es damals überhaupt schon C# und .Net? Das ist ja nun schon
seit Ewigkeiten behoben.
Läubi .. schrieb:> Robert L. schrieb:>> "früher" erkannte man jede java anwedung SOFORT> Puh... gab es damals überhaupt schon C# und .Net? Das ist ja nun schon> seit Ewigkeiten behoben.
Netbeans und Eclipse kann man immer noch sofort von "normalen"
Programmen unterscheiden: Andere Controls, u.a. andere Datei-Dialoge,
Fensterinhalte werden bei einer Größenänderung extrem verzögert neu
gezeichnet (Netbeans, Eclipse deutlich weniger)...
Arc Net schrieb:> Läubi .. schrieb:>> Robert L. schrieb:>>> "früher" erkannte man jede java anwedung SOFORT>> Puh... gab es damals überhaupt schon C# und .Net? Das ist ja nun schon>> seit Ewigkeiten behoben.>> Netbeans und Eclipse kann man immer noch sofort von "normalen"> Programmen unterscheiden: Andere Controls, u.a. andere Datei-Dialoge,> Fensterinhalte werden bei einer Größenänderung extrem verzögert neu> gezeichnet (Netbeans, Eclipse deutlich weniger)...
Dass das exakt garnix mit der IDE und alles mit den verwendeten
Bibliotheken und vielleicht noch den eher widerlichen Code-Generatoren
der IDEs zu tun hat ist aber schon klar?
Mag man die Bibos/Gens nicht - einfach nicht/andere benutzen.
Programmierer heutzutage, heulen immer rum "aber das war doch per
Default so eingestellt!1ELF!!!". Einfach mal Cojones wachsen lassen,
Defaults sind zum Ändern da!
Interessant wäre es wahrscheinlich auch, eine (halbwegs) aktuelle
Java-Version zu verwenden. Die 1.6 war schon vor 10 Jahren out und
tatsächlich in manchen Belangen langsam. Mit der 2er Version von Java
hat sich die Performance deutlich verbessert. Es wurden damals
Verbesserungen am JIT-Compiler und am Garbage-Collector vorgenommen.
Gruß
Markus
Markus V. schrieb:> Die 1.6 war schon vor 10 Jahren out und> tatsächlich in manchen Belangen langsam
Nix für ungut aber Java 1.6 --> Java 6 in Marketingsprech. Die 1.7 (Java
7) ist erst vor kurzem zur offizellen Version geworden und das ist
sicher noch nicht 10 Jahre her ;)
@Läubi
Sorry, es ist mir entfallen, dass die JVM andere Versionen verwendet.
Zum meiner (schwachen) Entschuldigung: Meine aktive Java-Zeit ist seit
einiger Zeit vorbei.
Ich ziehe meinen vorherigen Post also offiziell zurück. ;-)
Markus
Um C# braucht man keine Angst haben - vielleicht aber um Holger
Schwichtenberg
- c# bleibt die Sprache schlechthin für´s .net-Framework UND ist eine
empfohlene Sprache für die neue WinRT. Da C# als einzige Sprache
asynchrone Aufrufe dann ohne Fußangeln unterstützt, so werden die
meisten WinRT-Apps in C# geschrieben.
- WinRT ist nur für Apps. Große Anwendungen und erst recht die
Business-Layer der WinRT-Apps werden natürlich auf Win32 oder net
basieren.
- MS investiert zur Zeit sehr viel in die Weiterentwicklung von C#, etwa
das Projekt Roslyn (CaaS-Programmiermodell)
Whitepaper: Roslyn Project Overview
http://www.microsoft.com/download/en/details.aspx?id=27744
- und in der nächsten Version werden schon mal die asyncs unterstützt
Whitepaper: Asynchrony in .NET
http://www.microsoft.com/download/en/details.aspx?id=14058
Zum Thema Silverlight: habs nie gemocht, werds nicht vermissen!