3 Stimmen

Vertrauenswürdige Entwickler, die über Java und .NET schreiben?

Zunächst einmal möchte ich sagen, dass ich NICHT an einem Streit darüber interessiert bin, was besser ist: .NET oder Java... BITTE poste nicht, wenn du mir sagen möchtest, wie toll .NET ist oder wie Microsoft das böse Imperium ist, sodass kein Entwickler mit einer Seele .NET schreiben könnte oder was auch immer. Das haben wir alle schon viel zu oft gehört.

Was mich interessiert, ist, wer da draußen in der Branche wirklich genau und fair die Details der beiden Plattformen vergleichen und gegenüberstellen kann. Ich suche nach den seltenen Größen in der Branche, die Experten auf beiden Plattformen sind und die beiden in vernünftigen Begriffen diskutieren. Der einzige Kerl, von dem ich in diesem Bereich gehört habe, ist Ted Neward, wenn das dir eine Vorstellung davon gibt, wonach ich suche. Letztendlich interessiert mich ihre Meinung dazu, wie die beiden Plattformen sich gegenseitig beeinflussen und welche neuen Entwicklungen auf der einen Seite gut funktionieren (was mir einen Einblick darüber geben könnte, wie sich die andere Plattform wahrscheinlich weiterentwickeln wird).

3voto

Hamish Smith Punkte 8011

Martin Fowler hat über beide geschrieben.
Ron Jeffries wäre ein anderer, der viel über Java geschrieben hat und in letzter Zeit auch viel über C# geschrieben hat

3voto

Jon Skeet Punkte 1325502

Ich bin zwar nicht Ted Neward, aber ich habe vernünftig Erfahrung sowohl in Java als auch in C#.

Trotz Microsofts früher Entwurf des C#-Spezifikationen, dass es eine Mischung aus C++ und VB ist, war Java offensichtlich ein massiver Einfluss. Seit C# 1.0 würde ich jedoch argumentieren, dass C# die Sprache ist, die Innovationen vorantreibt. (Okay, viele der neuen Funktionen gab es bereits in anderen Sprachen, aber nicht in Java...)

Viele der vorgeschlagenen Funktionen von Java 7 sehen sehr danach aus, als ob sie von C# beeinflusst worden wären, aber ich wäre nicht überrascht, wenn sie bereits in Betracht gezogen wurden, bevor C# sie bekam (genauso wie Generics in Java über Jahre entwickelt wurden und in die andere Richtung es Forschungsprojekte mit Generics in .NET gab, bevor .NET 1.0 überhaupt veröffentlicht wurde).

Was hält die Zukunft bereit? Nun, persönlich würde ich gerne ein wahres Java 2.0 sehen, das Kompatibilität rückwirkend aufgibt, um einige der Probleme der Vergangenheit zu bereinigen - und es größtenteils wie C# zu machen, aber mit der vorhandenen plattformunabhängigkeit. Nichts in der Sprache von C# ist an Windows gebunden. Von dieser Seite betrachtet ist es wirklich schade, dass Mono nicht weiter fortgeschritten ist (oder von Microsoft unterstützt wurde, abgesehen von Moonlight).

2voto

krosenvold Punkte 73093

Ich habe mit beiden Plattformen gearbeitet, seit .NET erstellt wurde, hauptsächlich in Dual-Language-Projekten.

Java ist das "spanisch" der Sprachen (geschriebenes Spanisch hat sich in den letzten paar hundert Jahren kaum verändert), C# ist Englisch (die meisten von uns können keine englische Literatur aus dem 18. Jahrhundert lesen).

C# hat "alle Extras" schön und sauber in die Sprache integriert. Im Vergleich dazu ist Java ziemlich primitiv.

Java bietet eine große Auswahl an konkurrierenden Bibliotheken und verschiedenen Codierungsstilen, während .NET viel "eindeutiger" ist; oft hat Microsoft bereits eine gute Wahl für Sie getroffen. Diese Argumente führen objektiv nirgendwo hin; einige Leute mögen viel Auswahl gut finden, andere halten es für eine unnötige Ausgabe. Mein aktuelles Java-Projekt verwendet KEINE der Bibliotheken, die ich in einem ähnlichen Projekt vor 5 Jahren verwendet habe; obwohl die Sprache die gleiche ist, hat sich die Programmierumgebung (Bibliotheken, IDE) in erstaunlichem Maße verbessert.

Als Entwickler bevorzuge ich C#. Dennoch arbeite ich derzeit aus freier Wahl in Java und werde dies voraussichtlich auch in Zukunft tun – ebenfalls aus freier Wahl. Obwohl die Java-Sprache sich nur sehr langsam weiterentwickelt, gibt es in Java viele wirklich interessante Entwicklungen. Der Rest meiner Wahl beruht auf all den Dingen, die du speziell nicht ansprechen willst; Offenheit, die dunkle Seite und so weiter.

0voto

Tracker1 Punkte 18421

Das Unternehmen, für das ich arbeite, hat ungefähr die Hälfte seiner Entwicklung in Java (interne Anwendungen) und die andere Hälfte in .Net (öffentlich zugänglichen Anwendungen). Was möchtest du wissen? Es gibt mehrere Leute in dem Unternehmen, für das ich arbeite, die vergleichen und kontrastieren können. Ich muss zugeben, dass ich Java nicht besonders gut kenne. Suchst du nach bestimmten Artikeln, Bloggern oder Büchern?

0voto

dbones Punkte 4296

Wenn Sie nach einer Person suchen, die beide Frameworks Java vs .Net verglichen hat, dann habe ich keinen Namen, aber es gibt eine SCHLÜSSELPHRASE, auf die ich Sie aufmerksam machen möchte

Typlöschung

Generics in Java <- hier wird das erwähnt, ich bin darüber durch einen Arbeitsfreund gestolpert. (Ich bin mir nicht sicher, wann es dafür eine Lösung geben wird)

Dies würde bedeuten, dass Java immer Boxing und Unboxing sein wird.

In Bezug auf krosenvold

Java hat eine große Auswahl an Bibliotheken und verschiedenen Codierungsmethoden, .NET ist viel mehr "eine einzige Wahl". Das ist sowohl gut als auch schlecht.

Ich bin mir nicht ganz sicher, was er damit meint. Wenn ich raten müsste, beziehen Sie sich auf .Nets DataTable. und wie .Net (verwendet) früher datenzentriert und nicht domänengesteuert war?

Wenn ja, möchte ich darauf hinweisen, dass .Net eine Bewegung namens "Alt.Net" AKA "NHibernate Mafia" hat, in der es eine Reihe von Open-Source-Bibliotheken gibt, die es dem .net Entwickler ermöglichen, ORM/DI/MVC/TDD usw. zu verwenden. Viele dieser Bibliotheken haben Wurzeln in der Java-Welt (spring, hibernate). Dies ist jedoch nicht Kern der .Net oder sogar Java Frameworks.

Ich würde vorschlagen, zu überlegen, was Sie vergleichen möchten. zum Beispiel

  • Frameworks (einschließlich der Gemeinschaft/Open-Source-Bibliotheken)
  • Einschränkungen (Java ist 1 Sprache, funktioniert aber auf mehreren Betriebssystemen, .Net ist eine Mehrsprachige, unterstützt jedoch "offiziell" Windows-Plattformen, unter Verwendung von Mono)
  • Verfügbare IDEs

Hier sind einige Links, um Ihnen den Einstieg zu erleichtern.

Vergleich der Java- und .Net-Plattformen

Vergleich von Csharp und Java (schauen Sie z.B., sie behandeln Aufzählungen unterschiedlich)

HTH

Bones

CodeJaeger.com

CodeJaeger ist eine Gemeinschaft für Programmierer, die täglich Hilfe erhalten..
Wir haben viele Inhalte, und Sie können auch Ihre eigenen Fragen stellen oder die Fragen anderer Leute lösen.

Powered by:

X