Herzlich Willkommen, lieber Gast!
  Sie befinden sich hier:

  Forum » Allgemeines (OffTopic) » Glaubenskrieg: Java gegen .net

Forum | Hilfe | Team | Links | Impressum | > Suche < | Mitglieder | Registrieren | Einloggen
  Quicklinks: MSDN-Online || STL || clib Reference Grundlagen || Literatur || E-Books || Zubehör || > F.A.Q. < || Downloads   

Autor Thread - Seiten: [ 1 ] > 2 < [ 3 ]
010
12.02.2003, 11:13 Uhr
~0xdeadbeef
Gast


Ja gut, dass man .NET politisch nicht unterstützen darf, hab ich mal als gegeben vorausgesetzt. Weitere Quellen dazu übrigens:

www.pro-linux.de/news/2003/5210.html
http://news.com.com/2100-1001-984052.html

Soviel dann auch zum .NET-Standard. Und was die JIT-Freundlichkeit angeht - siehe hier: http://web.comlab.ox.ac.uk/oucl/research/areas/progtools/projects/dotnet.html
Ich glaube kaum, dass sich das positiv auf Geschwindigkeit auswirkt.

Dass Java ein anderes Paradigma verfolgt als C++ ist klar, das hat natürlich sowohl Vor- als auch Nachteile. Allerdings kriegt Java demnächst auch einen generischen Teil, dann fällt das Argument weg.

Was GUI-Designers angeht - gerade die GUI frißt Rechenzeit wie die Hölle. Da ist es schon ziemlich wichtig, dass es einigermaßen performant läuft - und das erreichst du nur, in dem du das Zeug von Hand schreibst. Je kürzer der Code ist, desto schneller ist er in der Regel auch. (Ich weiss, dass man Programme konstruieren kann, die kürzer sind und trotzdem lahm, deswegen in der Regel)
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
011
12.02.2003, 11:22 Uhr
~0xdeadbeef
Gast


Ach ja, noch was, wegen der Patentgeschichte:

www.theregister.co.uk/content/4/29283.html

Soviel dann zum Thema Plattformunabhängigkeit...
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
012
13.02.2003, 12:00 Uhr
Bruder Leif
dances with systems
(Operator)


Hmmmmm.... die Frage ist nur, ob Micro$oft das Patent wirklich durchsetzen kann. Das dürfte bei der momentanen gerichtlichen Situation nicht gerade zu einer positiven Wertung führen *g* Außerdem, wenn wirklich ALLE Patente in der PC-Branche durchgesetzt würden... dann dürften wir die Kisten eigentlich nie mehr anschalten

Trotzdem, das hat mich auch schockiert. Wär ja schön blöd... dann gäbs ja außer C++ überhaupt keine gescheiten Sprachen mehr ;->
--
Mit 40 Fieber sitzt man nicht mehr vor dem PC.
Man liegt im Bett.
Mit dem Notebook.
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
013
13.02.2003, 13:19 Uhr
~0xdeadbeef
Gast


C# als gescheite Sprache zu bezeichnen ist m.E. ziemlich zynisch. Aber zur Not gibts immer noch Brainfuck und Intercal.
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
014
16.10.2003, 08:39 Uhr
(un)wissender
Niveauwart


Es gibt in Java schon lange eine "MessageBox".
Nennt sich JOptionPane und ist Teil von javax.swing.

Ach ja, Swing-GUIs werden von Java gezeichnet und sind damit recht langsam, nur um das mal klarzustellen.
AWT nutzt Systemressourcen und ist damit scheller.
--
Wer früher stirbt ist länger tot.

Dieser Post wurde am 16.10.2003 um 08:42 Uhr von (un)wissender editiert.
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
015
16.10.2003, 21:16 Uhr
Pablo
Supertux
(Operator)



Zitat:
Bruder Leif postete
.NET unterstützt verschiedene Programmiersprachen, die in einem Programm gemischt werden können. Du schreibst eine Klasse in C#, leitest in C++ eine Klasse davon ab, und benutzt sie in einem VB.NET-Programm. Für jede Aufgabe die Sprache, die am besten dafür geeignet ist. In Java hast Du nur eine Sprache - Java.




Mann, habt ihr aber viel geschrieben... wie lang musste ich das ganze

@Leif: schönes Argument, aber ist es nicht dasselbe wie "C++ mit C Stil"? Darum haben wir auch diskutiert und meistens gewinnen im diesem Krieg die Leute, die sagen: Die Mischung zwischen C und C++, bzw. C++ in C Stil schlecht ist, was mittlerweile auch mich überzeugt hat. Ist es nicht der selbe Fall?
--
A! Elbereth Gilthoniel!
silivren penna míriel
o menel aglar elenath,
Gilthoniel, A! Elbereth!
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
016
07.06.2005, 13:47 Uhr
proga



Hallo Leute,

bei uns in der Firma ist das Thema jetzt ziemlich aktuell. Wir arbeiten auf zwei verschiedenen Plattformen.

Die eine ist ein Industrie PC mit 32 MB RAM und 6 MB FlashDisk als Datenträger. Hier setzten wir auf ein Echtzeitbetriebssystem auf, die API ist C++, das System ist in C++ programmiert. Hier wird sich auch demnächst nichts dran ändern, weil Java sowieso nicht in Frage kommt. Man könnte zwar schon hingehen und z.B. unter Embedded Linux mit Java arbeiten, zumindest die Oberfläche in Java und die untere Schicht (Applikation sag ich mal) in C++. Dann könnte man ja über JNI sich Daten von der Applikation holen, oder evtl. über TCP/IP. Wobei ich nichtmal genau weis, ob es für Embedded Linux eine Java VM gibt. Aber das System hat einen riesen Umfang und der Umstieg würde einen mehrmonatigen Aufwand bedeuten, die Zeit haben wir nicht, wir sind ja kein Softwareunternehmen.

Auf der anderen Seite entwickeln wir verschiedene Programme für den PC, es sind Datentechnische Programme. Was wir dafür brauchen ist: Datenbankanbindung, TCP/IP, XML, GUI. Bisher haben wir hier mit VB 6.0 oder mit Visual C++ (MFC) gearbeitet.

Da unser Vertrag mit Microsoft bald ausläuft, sind wir am überlegen, ob wir den Vertrag verlängern und unter Einsatz des MS Visual Studio .NET 2005 auf C# umsteigen, oder den Vertrag nicht verlängern und auf Java + Eclipse umsteigen. Die zweite Variante wäre ja auch eine ganze Ecke günsiger. Ziel ist aber von MFC und VB wegzukommen und eine plattformunabhängige Sprache einzusetzen.

Nun wollte ich euch nochmal fragen, wie Ihr das sieht und welche Erkenntnisse Ihr diesbezüglich in den letzten 2 Jahren gemacht habt. Was würdet Ihr empfehlen.

Danke.
MfG proga
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
017
07.06.2005, 15:03 Uhr
virtual
Sexiest Bit alive
(Operator)


@proga

Wir hatten in der Vergangenheit auch die Diskussion Java vs. .NET gehabt, weil wir unser Produkt von C++ auf eine diese beiden Platformen umstellen wollten. Wir haben uns für java entschieden, was aber nicht heisst, daß diese Entscheidung nun in irgendeiner Weise übertragbar ist.

Wie der Titel des Threads bereits nahelegt, ist die Diskussion in weiten Teilen ein Glaubenskrieg, bei dem ich sicherlich auch nicht frei von vorgefassten Meinungen bin, die nicht immer rational sein mögen (wobei letztlich unserer Entscheidung meine persönliche Präferenz mit den Ausschlag gegeben hat).

Wenn ich eine allgemeine Bewertungstabelle machen sollte, so würden einige Kriterien zusammenkommen, hier mal eine unvollständige Liste:

1. Für wen Produziere ich eigentlich? - Wenn ein Großteil meiner Kunden eh in eine bestimmte Richtung tendiert, so ist das schon mal eine ungefähre Richtung. Wenn dem nicht so ist, ist die Frage, inweiweit sich die jeweils andere Platform in die gewählte Platform integrieren läßt. - Bei uns fiel Die entscheidung relativ einfach, weil ein großteil unserer Kunden (Meist große banken, verischerungen und Behörden) ohnehin Java benutzen.

2. Wie sieht die Zukunft von der jeweiligen platform aus? - Realtistisch betrachtet wird keine der Platformen kürzer leben als wir es brauchen (ca. 10 jahre, bis zur nächsten Technologiewelle).

3. Bringt uns eine der Platformen nenenswerte alleinstellungsmerkmale? - Trifft weder auf Java noch .NET zu - beides Mainstream.

4. Welche Kosten kommen auf mich zu? - Das sind nicht nur die Kosten, welche ich brauche, um die Software zu bezahlen, sondern auch die, um die jeweilige Platofrm zu lernen. Hier hat Java für uns die Nase eindeutig vorne.

5. Wie leicht lassen sich Abgänge aus dem Projektteam verkraften, dh. wie groß ist der Pool an Fachkräften für die eine oder andere Platform (Probier mal nicht nur einfach gute Codierungsdrohnen sondern echt gute Programmierer zu finden!). Auch hier sehen wir leichte Vorteile für Java (was aber weniger an Java denn an den Drohnen liegen mag).

6. Gibt es irgendwelche moralischen/ethische Gründe gegen die eine oder andere Platform? - (sicher nicht für einen Manager ein zwingendes Argument, aber in diesem Thread z.B. öfters angebracht): möglich, aber nicht sicher. Vgl. Richard Stallmans Artikel "The Java Trap".
--
Gruß, virtual
Quote of the Month
Ich eß' nur was ein Gesicht hat (Creme 21)
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
018
09.06.2005, 10:53 Uhr
proga



Hallo virtual,

danke schonmal für die Antwort.
Aber wie sieht das denn heute aus mit Plattformunabhängigkeit, kann man sagen beide sind plattformunabhängig? Ist es z.B. möglich ein .NET Programm unter Max OS oder Linux laufen zu lasen? Was hat sich da in der Beziehung getan?

MfG proga
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
019
09.06.2005, 12:01 Uhr
virtual
Sexiest Bit alive
(Operator)


Ich kann zu .NET nicht viel sagen. Letztlich wird man für .NET ja auch eine Virtual Machine brauchen, und da sind die gleichen Probleme zu erwarten wie unter Java:

Java mag nicht mehr von der Betriebssystemplatform abhängig sein, ist aber de facto von der JVM bzw. deren Implementierung abhängig. Sicherlich ist es so daß man nur noch einen ganz kleinen Satz an Portierungsproblemen hat; wenn man aber erstmal eines hat, dann haben die es in der Regel ganz schön in sich (und sind entweder garnicht oder nur mit sehr großem investigativen Aufwand lösbar). Mal ein kleines Beispiel aus der Java-Welt:

Da gibt es verschiedene Hersteller, zB hat BEA mit JRockit seine eigene JavaImplementierung auf dem Markt. Die hält sich natürlich an die von Sun vorgegebene Spezifikation und soll - laut BEA - hinsichtlich performance - deutlich besser sein als die von Konkurrenzunternehmen wie zB Sun, Oracle oder IBM. Soweit so gut.

Wenn man nun aus einem nativen Programm heraus eine JVM instantiert, da fällt man bei JRockit ganz dolle auf dies Nase, weil wenn dieses native Programm Multithreading benutzt, dann klemmt wirklich alles. Das Problem habe ich nicht in den griff bekommen, auch nicht mit Hilfe von BEA, so daß ich sagen muß: Unser Programm läuft eben nicht mit allen Platformen (wobei hier Platform im Sinne von Java Implementierung zu verstehen ist).

Es hat bei einem Kollegen auch schon Probleme hinsichtlich unterschiedlichen Aussehens von Dialogboxen gegeben (weil die layouts unterschiedlich taten).

Wie gesagt: die Probleme hinsichtlich Portierungen usw. sind deutlich weniger; für trivial Anwendung ist Platformunabhängigkeit wahrscheinlich auch gegeben. Nur welches Programm ist trivial?
--
Gruß, virtual
Quote of the Month
Ich eß' nur was ein Gesicht hat (Creme 21)
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
Seiten: [ 1 ] > 2 < [ 3 ]     [ Allgemeines (OffTopic) ]  


ThWBoard 2.73 FloSoft-Edition
© by Paul Baecher & Felix Gonschorek (www.thwboard.de)

Anpassungen des Forums
© by Flo-Soft (www.flo-soft.de)

Sie sind Besucher: