it-swarm.com.de

.Net vs Java Jobs

Wenn ich eine Jobsuche für einen .NET-Entwickler durchführe, handelt es sich meistens um dieselben Inhalte wie .NET, ASP, SQL Server, CSS, Javascript, AJAX und möglicherweise C #. Während mit Java müssen Sie möglicherweise Java, Sturts, Spring, JSF, EJB, ein RDMB, Eclipse RCP, CSS, Javascript, AJAX, Rest, eine beliebige Anzahl von spezifischen Java APIs. Ist es einfacher, ein .NET-Entwickler zu sein, da die Technologien so fokussiert sind? Oder scheint es nur so?

36

Es ist anders und nicht einfacher.

Der Grund, warum die Java -Jobs gegen Frameworks aufgeführt sind, ist, dass Java tonnenweise Frameworks und Entwurfsmuster bereitstehen, um die Wartung zu vereinfachen. Der Entwurf Muster und Frameworks werden nun auch in .NET häufiger angezeigt. Erwarten Sie also, dass sich Jobs ändern und eher wie die Java jobs aussehen.

Es gibt in beiden Welten genauso viele Muster und Praktiken - aber sie sind in der Java= Community etablierter (der Java Arbeitgeber wird sie auf Sie schieben, Sie Sie werden feststellen, dass Sie Ihren .NET-Arbeitgeber drängen.

Im Großen und Ganzen ist Java vs. .NET ist Syntax. Tun Sie beides (tun Sie beides!). Beachten Sie jedoch die Muster und Frameworks, da sie Ihnen beim Schreiben von besserem Code wirklich helfen.

44
Fenton

Ich bin ein C # -Entwickler, glauben Sie mir, es gibt in Java) mehr Auswahlmöglichkeiten als in .Net. Der offensichtliche Vorteil von .Net ist jedoch, dass Sie in jedem Job die gleichen = verwenden IDE (Visual Studio) und (in den meisten Fällen) verwendet das neueste .Net-Framework (außer für die Verwaltung älterer Apps). Es können geringfügige Unterschiede bei verschiedenen Arbeitgebern auftreten, z. B. bei der Verwendung von Enterprise Libraries, MVC Im Vergleich zu Forms, WPF usw. Wenn Sie jedoch ein erfahrener C # -Entwickler sind, können Sie die Anpassungen je nach Ihren Grundlagen problemlos vornehmen.

Einige Entwickler in meinem Bereich, die keine anderen Programmiersprachen gelernt haben, sind in der Regel faul und ziehen Objekte einfach per Drag & Drop, um Aufgaben in 80% der Fälle zu erledigen (einige glauben sogar, dass objektorientierte Programmierung einfach Code mit Objekten ist). . Wenn Sie mit C++ oder einer anderen auf C basierenden Sprache vertraut sind, haben Sie definitiv die Oberhand, aber das ist keine Voraussetzung.

Ich würde vorschlagen, die besten Programmierpraktiken zu lernen, niemals alle Eier in einen Korb zu legen (obwohl Gott uns Männern das angetan hat) und offen für andere Sprachen als C # zu sein. Wenn Sie eine C-basierte Sprache lernen, ist es nicht so schwierig, andere wichtige Sprachen zu lernen, als mit VB.Net zu beginnen.

In jedem Fall sind beide gut bezahlte Jobs und Sie werden es nicht bereuen, wenn Sie sich für einen entscheiden.

meine 2 Cent.

34

Ja, mit Java haben Sie Web-Frameworks wie JSF, Struts, Struts2, Wicket, SpringMVC, Stripes, Tepestry, Facelets ... um nur einige zu nennen. Jedes Unternehmen verwendet andere frameworks Wenn Sie also den Job wechseln, lernen Sie neue Frameworks kennen. Und sein einziges Web-Framework: JDBC, Hibernate, JDO, iBatis. Wer kann 5 Mocking-Frameworks für Java benennen? Wer hat 5 verschiedene Anwendungsserver verwendet? "Was ist mit Datenbanken? Ich habe sogar Informix und Teradata verwendet. Ich denke, dass alle .NET SQL Server verwenden und es einfacher ist, eine Datenbank gut zu erlernen.".

17
IAdapter

Bitte vergessen Sie nicht die folgenden .NET-Technologien: Win.Forms, Silverlight, WCF, WPF, WWF ... Außerhalb der Webentwicklung wird in .NET noch viel gelernt. Es ist nicht einfach, ein erfahrener .NET-Entwickler zu sein, zumindest nicht viel einfacher als Java. Allerdings ist es meiner Meinung nach einfacher, in .NET zu starten, wenn Sie keine Entwicklungserfahrung in der Vergangenheit haben.

14
Bogdan_Ch

In Java selbst kommen mehr Felder hinzu. Ich meine, Java Entwickler haben jetzt mehr Möglichkeiten als alle anderen Technologien auf dem Markt. Sie werden zu attraktiven Vergütungen eingestellt, um verschiedene Java-basierte Anwendungen, Software und Spiele usw. zu entwickeln auch in Zukunft erhöht werden. Bleiben Sie einfach bei Java :)

12
Sam

In der Java Welt entwickeln Sie mit Technologien aus vielen Communities. In der .NET-Welt arbeiten Sie nur mit Technologien von Microsoft. Meiner Meinung nach sind Java Entwickler in Bezug auf die Auswahl der Technologien freier, aber manchmal bringt es auch Probleme mit sich. :)

12
Bruce Li

Lassen Sie uns die Technologien anordnen, die Sie erwähnen (und einige, die Sie nicht kennen). Dies wird notwendigerweise etwas ungenau sein, also wird es ein Nitpickers Paradies sein :)

 .NET Java Die umfassende Technologie 
 ASP Struts A Web Development Framework 
 JSF 
 (.NET BCL?) Spring Ein Framework für die Anwendungsentwicklung 
 EJB 
 SQL Server und eine RDBMS A-Datenbank 
 (VS) Eclipse An IDE 

CSS, Javascript, AJAX, REST sind alle Technologien, die beiden Stacks gemeinsam sind.

Die Technologiekonzepte, die Sie lernen müssen, sind für jeden Stapel die gleichen - nur die Namen sind unterschiedlich. Die .NET werden alle "Microsoft Blah Blah Blah" sein, während die Java alle funky coole Namen haben werden ...

10
AakashM

Eine weitere wichtige Überlegung ist, dass Sie in der Mitte Ihrer Karriere als .NET- oder Java -Entwickler "gebrandmarkt" werden können. Zu diesem Zeitpunkt wird es schwieriger, zu wechseln, da Sie (verständlicherweise) weniger Erfahrung mit dem haben, den Sie nicht gewählt haben. Bisher habe ich mich abgewechselt, aber das bringt eine Reihe von Problemen mit sich, bei denen es auf jeder Seite Lücken in der Erfahrung mit neuen Bibliotheken/Frameworks gibt.

Irgendwelche anderen Gedanken zu den Vor- und Nachteilen der Entwicklung von Java gegenüber .NET? Welche Arten von Unternehmen, Kulturen, Bezahlung usw. zum Beispiel?

Für mich scheint .NET eher in etablierteren Unternehmen zu sein, wohingegen Java von vielen Startups verwendet wird (angesichts des günstigen Einstiegs und der verfügbaren Open-Source-Bibliotheken). Die Bezahlung ist vergleichbar, aber .NET scheint etwas höher. Die Java - Entwicklung macht vielleicht ein bisschen mehr Spaß, da Sie häufiger mit neuen Frameworks spielen und sich nicht auf bestimmte Paradigmen beschränken.

9
taj

Im Gespräch mit meinen .Net-Freunden scheint es einfacher zu sein, mit etwas ziemlich Normalem zu beginnen, da die meisten Leute Dinge auf Microsoft-Art tun. Dank der großen Auswahlmöglichkeiten von Java müssen Sie Bibliotheken und Toolkits auf vielen verschiedenen Ebenen auswählen. Der Vorteil von Java) ist, dass es viel mehr Optionen gibt, wenn der offizielle oder übliche Weg nicht zu Ihnen passt.

In der Praxis denke ich nicht, dass es viel Unterschied macht. Jeder einzelne Java Shop wird sich im Allgemeinen auf eine bestimmte Sache konzentrieren. ZB Struts oder Spring oder JSF, nicht alle drei. Hibernate oder Ibatis oder reines JDBC, nicht alle drei Gleich viel zu lernen, egal ob Sie einen Java Stack oder einen .Net-Stack verwenden, Sie lösen immer noch ungefähr ähnliche Probleme.

6
William Pietri