Laden...

Wie schwer ist der Umstieg auf Java?

Erstellt von HeinzTomato vor 13 Jahren Letzter Beitrag vor 13 Jahren 5.908 Views
HeinzTomato Themenstarter:in
345 Beiträge seit 2005
vor 13 Jahren
Wie schwer ist der Umstieg auf Java?

Ich weiß, alle werden nun rufen: "TUS NICHT":D , aber ich entwickle ja weiterhin hauptsächlich in C#, möchte aber auch gerne für Android-Tablets entwickeln. Und MonoDroid ist mir erstens zu teuer fürs reinschnuppern und auch ja noch im Alpha-Status.

Hat von Euch C#-Entwicklern schonmal jemand den Tellerrand überblickt? Ist es eine große Umstellung?
Arbeitet jemand von Euch parallel mit C# und Java?

Kann man das SDK mit J# benutzen?

Danke schonmal

Mein Haus, mein Viertel, mein Blog

458 Beiträge seit 2007
vor 13 Jahren

Hallo HeinzTomato,

der Schritt von C# zu Java ist kein so großer finde ich, die Synthax ist fast die selbe.
Bin vor Monaten durch einen Arbeitgeberwechsel von C# auf VB.NET gewechselt,
das war die ersten paar Wochen noch ungewohnt - aber man kommt sehr schnell rein.
Musst eben nur schauen welche IDE dir zusagt, Eclipse beispielsweise ist garnichts fuer mich.

be the hammer, not the nail!

H
222 Beiträge seit 2010
vor 13 Jahren

Hallo,

ich kam von Java zu C#. Dadurch fiel mir die Einarbeitung leicht, ich denke dass es andersrum ähnlich ist. Vielleicht interessiert Dich ja folgendes: C# From a Java Developer's Perspective ist ein netter Vergleich der beiden Sprachen.

Eclipse als IDE war auch nich so mein Ding, wobei Du damit Plugin-technisch top bedient bist.

Die Welt hat genug für jedermanns Bedürfnisse, aber nicht für jedermanns Gier.

E
180 Beiträge seit 2010
vor 13 Jahren

Auch ein gutes Buch, was zwar von Java auf C# den weg beschreibt, aber logischerweise gehts auch andersherum, da alle Beispiele in java UND C# beschrieben sind inklusive der jeweiligen Unterschiede.

C# für Java Entwickler

Gruß

1.361 Beiträge seit 2007
vor 13 Jahren

Hallo HeinzTomato,

der syntaktische Unterschied ist minimal. Es gibt die selben OOP Konzept. Ein sprachlicher Unterschied wären zum Beispiel die Funktionsdelegaten und lambdas in C#, die es in Java (noch) nicht gibt. (für Eventhandling) Dort nimmt man Interfaces und anonyme Klassen.
Oder die expliziten get*/set* Methoden statt properties.
Ist aber alles kein Problem.

Woran du dich wirklich gewöhnen musst, ist das framework. Das ist natürlich anders. Insofern ist es mehr ein umstieg vom .Net framework hin zum Java framework. Angefangen bei System.out.println statt System.Console.WriteLine, oder den getrennten Input- und Output-Streams, die es in .Net nicht gibt bis hin zu den komplett anderen GUI-frameworks.
Aber für vieles gibt es äquivalent. Man muss eben nur anfangs länger suchen und sich in die java-Dokumentation einarbeiten, so wie man sich in die msdn einarbeiten muss.

Insofern ermuntere ich dich aber! Schau dir erst n biss die spezial-Syntax an und ab dann is es nur noch framework Funktionen suchen. Aber stöber auch ruhig etwas, es gibt auch Dinge, die man aus dem .Net framework nicht hat und kennt, sodass manches sogar einfacher wird. (das concurrency framework finde ich nämlich auch gelungen, wobei mit .Net 4.0 und plinq wir auch was sehr geiles haben.

Beste grüße
Zommi

3.430 Beiträge seit 2007
vor 13 Jahren

Hallo,

ich entwickle auch Parallel manchmal was in Java (werde in der Uni dazu gezwungen 😉 )

Der Umstieg ist nicht so schlimm. Klar, man muss erst die Klassen kennenlernen aber die meisten Sachen sind sehr ähnlich.
Und gerade die Android Apps haben doch schon Ähnlichkeiten mit WPF.
Es ist zwar um längen nicht so flexibel, aber für Android Apps langt das schon.

Also der Umstieg wird dir IMHO nicht schwer fallen.
Das was ich am meisten vermisst habe war das Visual Studio 😃

Gruß
Michael

799 Beiträge seit 2007
vor 13 Jahren

Ich habe im Dezember letzten Jahres die Stelle gewechselt und bin jetzt Java-Programmierer und ich kann folgende Äußerung nur unterschreiben:

Woran du dich wirklich gewöhnen musst, ist das framework. Das ist natürlich anders. Insofern ist es mehr ein umstieg vom .Net framework hin zum Java framework. Angefangen bei System.out.println statt System.Console.WriteLine, oder den getrennten Input- und Output-Streams, die es in .Net nicht gibt bis hin zu den komplett anderen GUI-frameworks.

Alles ist anders und ich empfinde die Landschaft der Frameworks innerhalb des Java-Ökosystems mehr fragmentiert. Es gibt alles drei vier Mal mit marginalen Unterschieden. (Z.B.: für Web-Entwicklung Spring, Struts, etc.)

Das hat schon einmal ein bisserl eine Umgewöhnung bedeutet.

Folgenden Punkt halte ich allerdings für Humbug:

der syntaktische Unterschied ist minimal.

Das kann man im Vergleich zu C# 2.0 vielleicht stehen lassen und selbst da schmeißt es einen schneller auf als man denkt - wegen der grundsätzlich anderen Implementierung von Generics. Gerade einmal optisch ähnlich.

Aber im Endeffekt ist auch die Java-Welt interessant und sehr reich an guten Tools. Selbst Eclipse birgt viel Funktionalität die man alsbald in VS vermisst. (Wirklich wahr, hätte früher nie daran geglaubt!)

Zu Android soviel: Ich denke hier fällt der Umstieg leichter als zu Java EE da du wieder einen guten Workflow vorgegeben bekommst. Views als XML, Logik als Java und dann noch den Cross-Compiler der dir den Java-Code für's Android optimiert.

As a man thinketh in his heart, so he is.

  • Jun Fan
    Es gibt nichts Gutes, außer man tut es.
  • Erich Kästner
    Krawutzi-Kaputzi
  • Kasperl
5.742 Beiträge seit 2007
vor 13 Jahren

Die größten Unterschiede liegen IMHO mehr im Detail:
Andere Shortcuts für die IDEs, Namenskonventionen (öffentliche Methoden klein), ...
Und mit der nächsten Java-Version sollen ja endlich auch Properties kommen.

Ansonsten ist aber sehr vieles gleich - deutlich extremer ist da der Unterschied C++ / C#.