Java vs. C#
-
Schönen guten morgen,
mich beschäftigt grade eine Frage, wo bitteschön ist der Unterschied zwischen Java und C#?C# ist doch bloß nachgemacht oder?
Und die Platformunabhängigkeit ist doch wohl auch nicht da!?Tschüss, Max
-
Original erstellt von smalo:
**C# ist doch bloß nachgemacht oder?
**nicht nur, ich galube in c# ist auch c++
und sonst ist es kein nachteil das es abgekuckt ist, java ist auch abgekuckt und die sprachen davor sind auch nur abgekuckt usw.Original erstellt von smalo:
**und die Platformunabhängigkeit ist doch wohl auch nicht da!?
**relativ, also die WinForms sind nicht zum standard freigegeben, und MS steckt kein € in die entwiklung von .NET für unix, aber davon lassen sie sich die unix leute nicht abschrecken und entwiklen auf eingen hand ein .NET für unix mit winforms,
wie es mit den speed aussieht ka,
auf jeden fall finde ich die java gui zum kotznen, sie ist einfach lahm *****ig
ich habe noch kein c# gui anwedung gesehen, aber ich denke die windows macher sollte das besser hinkrigendas MS hinter c# steht hatt vor und nachteile, kuck dir mal was MS den vb leuten angetan haben, die neue version ist fölig inkopatiebel zu den alten vb, da ist es leichter gleich c# zu lernen (darauf will ms hinaus), vorteil ist das du dich drauf verlassen kanns das in c# und .NET geld fliesen wird solange sich MS davon ein vorteil erholft
sun ist da aber auch nicht viel besser,
auf jeden fall kanns du schnell zwischen c# und java umsteigen (in beiden richtungen)
entscheide dich für eine richtigung und wenns in zukuckunft schlecht für java bzw. c# aussieht kanns du reltaiv leicht umlernen
-
Und die Platformunabhängigkeit ist doch wohl auch nicht da!?
Da würde ich letzten Endes auch den Vorteil von c# sehen, jede Plattform optimiert die Sprache auf sein System - natürlich nur im Hintergrund. Im Vordergrund und in den genützten Funktionen/Klassen, etc. sollten sie sich am besten gar nicht unterscheiden ... obwohl das imho unmöglich ist, da ja bei manchen Plattformen ein völlig anderes Konzept vorherrscht.
MfG SideWinder
-
Original erstellt von smalo:
C# ist doch bloß nachgemacht oder?C# ähnelt Java wirklich sehr stark, aber auch C++.
Und die Platformunabhängigkeit ist doch wohl auch nicht da!?
zZ. ist .NET nur für Windos verfügbar. Aber schau dir mal folgenden Link an www.dotgnu.org dotGNU ist nicht nur eine .NET implementierung, sondern ein kompletter .NET ersatz!
@Side
Das funktioniert, schau dir doch Java an, da funktioniert dieses Konzept bereits.@Dimah
dotNET wird imho nicht schneller sein als Java. Vielleicht unter Windos, weil M$ da ihre geheimen undokumentierten Kernel Funktionen für benutzen aber auf anderen Platformen wahrscheinlich nicht!
-
@kingruedi: Naja, zumindest eingeschränkt. Ich hoffe schon, dass c# mehr Gemeinsamkeiten zwischen den Plattformen bringt, und somit noch mehr gleiche Funktionen/Klassen mit sich bringt.
Sollte es das nicht mitbringen, ist die einzige Chance das c# überlebt Microsoft selbst...
MfG SideWinder
-
@Side
Warum bietet Java das den eingeschränkt? Java bietet das genauso wie das C# bieten soll...Was fehlt dir den in Java, was dir C# an Klassen/Funktionen bringen soll?
-
Original erstellt von kingruedi:
Was fehlt dir den in Java, was dir C# an Klassen/Funktionen bringen soll?Naja, die Lib von .NET schleppt einiges mehr an Klassen mit sich herum als Java... und die gesamte Thematik der Attributierung gibt es in Java gar nicht, auch daß z.B. XML direkt Teil der Lib und Sprache gemacht wurde ist so nicht vorhanden.
Schließlich ist C# neuer als Java, ist doch logisch daß demnach neue Features enthalten sind. Die Sprache C# ist eine Kopie von Java, aber .NET ist umfangreicher (logisch, da neuer und mehr Zeit zum Nachdenken) als die Lib von Java.
-
Aber C# hat einige Nachteile C++ gegenüber. z.B. Templates. Der Typ object ist doch nicht wirklich ein Ersatz.
Sun ist aus Micro eben .NET.
-
profis beim argumentieren: c# hat mehr klassen als java also muß es besser sein. mein bagger ist größer als dein bagger, also ist er besser.
was mich aber wirklich interessieren würde: was ist denn die eine java-lib, von der hier immer gesprochen wird?
-
@Marc++us
naja dazu hat Java zZ. mehr zusätzliche Libs, was wieder ein deutlicher Vorteil ist. Außerdem hat sich Java ja weiter entwickelt.@Helium
bei C# muss man imho auch keine Variablen mehr deklarieren (was für Anfänger vielleicht gut ist, aber auch schnell zu Variablen schreibfehlern führt und merkwürdiges Programm verhalten). Einige Operatoren (zB +=) werden automatisch überladen...
-
Original erstellt von Marc++us:
Naja, die Lib von .NET schleppt einiges mehr an Klassen mit sich herum als Java...Nun würde ich auch nicht .NET mit Java vergleichen sondern eher C# mit Java. Sonst könnte ich auch J2EE zu Java hinzuziehen mit den nicht wenigen APIs (JSP,Servlet, EJB etc.). Und wenn man dann noch Herstellerspeziefische Erweiterungen wie z.B. die WinForms außer acht läßt ergibt sich dann doch schon ein anderes Bild.
Original erstellt von Marc++us:
Die Sprache C# ist eine Kopie von Java, aber .NET ist umfangreicher (logisch, da neuer und mehr Zeit zum Nachdenken) als die Lib von Java.s.o. , logisch, oder?
XML-Unterstüzung ist in der Java-Core-API enthalten (u.a. mit JAXP API)
bis dänn, O'Dog (der sich, hin und wieder, nicht zu schade ist falsche Beiträge zu korrigieren)
-
Original erstellt von kingruedi:
bei C# muss man imho auch keine Variablen mehr deklarierendas sind geile bugs, wenn man sich bei einer variablen namen verschreibt, und man sucht und sucht
es gibt zwar bestimt eine option womit man einstelen kann das varaibalen deklerationen zwinget sind aber die macht man nicht weil man sich schon zu sehr an das alte system gewöhnt hatt
-
@Dimah
jo
die ganzen alten QBasic Fehler kommen wieder hervor
-
Gehört denn .NET so sehr zu C# wie die ganzen Sun-Java-APIs zu Java? Ich glaube nicht oder?
Für mich ist J2EE ein Bestandteil von Java!
-
Original erstellt von kingruedi:
bei C# muss man imho auch keine Variablen mehr deklarieren[/QB]Seit wann denn das? Also ich weiss nicht was für eine Version des .NET Frameworks/C# Compilers du benutzt (oder welche geheimen Commandline Switches du nutzt), aber bei dem C#, das ich benutze, muss man Variablen immer schön vor der Nutzung deklarieren (wie in C/C++ und Java auch).
-
Ich nutze überhaupt kein C# (trotzdem bin ich hier Moderator ;)), aber ich habe gelesen, dass man das nicht braucht, wenn das nicht stimmt, dann nehm ich alles zu dem Thema zurück.
-
Wäre mir neu. Vor allem da jede Variable grundsätzlich eine Objektinstanz ist (auch für die eingebauten Typen a la int), muß natürlich für die Instanz der Klassentyp bekannt sein.
-
Wie kann man C# auf Win98 nutzen?
(Bei Java ist das überhaupt kein Problem.)
-
Original erstellt von <JavaCisPlusMinus>:
**Wie kann man C# auf Win98 nutzen?
**Soviel ich weiß garnicht.
(Du sollst dir ja auch ein neues Windows kaufen, damit Bill endlich mal ein bischen Knete kriegt! )
-
Aber die mit C# erstellten Programme laufen dann auf Windows 98, oder? Man muss sie nur auf einer anderen Platform entwickeln?!