Umstieg auf C#

Hag2bard

Bekanntes Mitglied
Hallo,

da ich mich dem Arbeitsmarkt anpassen muss, ziehe ich eine Arbeitsstelle in Betracht, in der mit C# gearbeitet wird. Es ist ein kleines Team von ca. 10 Entwicklern.
In meiner Ausbildung habe ich mit Java gearbeitet und fühle mich da auch zuhause.
C# soll ja relativ ähnlich zu Java sein. Diverse Videos habe ich mir dazu bereits angeschaut.

Was ist eure Meinung dazu? Ist C# so ähnlich zu Java? Für mich wirkt C# im ersten Moment angenehmer als der Umstieg auf Kotlin.
Ich bin ein Freund von streng typisierten objektorientieren Sprachen wie Java. C# ist da wohl nicht unbedingt anders.

Ist es schwer den Umstieg zu bewältigen? Lust ist da, sehr viel sogar. Programmieren ist immer gut, wenn es nicht Python ist :D
 

KonradN

Super-Moderator
Mitarbeiter
Ja, C# ist da aus meiner Sicht sehr ähnlich. Wenn Du in Java entwickeln kannst, dann solltest Du sehr schnell in C# rein kommen.

Paar Dinge sind aber halt anders. Das ganze async / await ist etwas, das in vielen Sprachen Einzug gehalten hat und Java hat sich dagegen entschieden (statt dessen gab es dann die virtuellen Threads). Einige Dinge finde ich auch deutlich "moderner". Java ist bei Sprachkonstrukten eher konservativ / zurückhaltend.

Aber alleine schon das Operator Overloading macht aus meiner Sicht das Leben deutlich einfacher.

Es wird also ganz klar einiges zu lernen sein, aber ich denke, du wirst da sehr schnell rein kommen.

Der größere Aufwand ist dann eher in den Libraries: Du wirst in Java ggf. spezifische Libraries genutzt haben (Spring Boot, Quarkus, Swing, JavaFX, ....) und darfst Dich dann jetzt in die Frameworks im .Net Umfeld einarbeiten. Aber die Konzepte sind gleich, so dass es auch nicht zu schwer fallen dürfte. (Außer dass ggf. manche Konzepte im Java Umfeld eher weniger genutzt werden. MVVM habe ich im Java Umfeld kaum gesehen wobei ich von mvvmFX viel gehalten hatte (Aber ich bin da ein Einzelfall bin, letztes Update vor über 5 Jahren)
 

M.L.

Top Contributor
C# ist schneller in der Evolution (i.d.S. was der C#-Compiler als formell korrekten Code anerkennt), Java-Code ist dagegen eher "für die Ewigkeit" (Quelle evtl. im Podcast bei programmier.bar: Link ) konzipiert (<- natürlich gibt es auch hier Entwicklungen ). Dafür können Frameworks und Vorgehensweisen aber auch schneller veralten oder komplett obsolet werden, wenn Microsoft es so will (Bspl.: WCF (alt) -> gRPC (neu) ).
Das bereits genannte MVVM-Konzept beschreibt (i.Z. mit WPF) wie man Code / UI-Teile / Events / ... aufteilen soll(te): Teile mit geringer Änderungsrate zusammenfassen, Teile mit höherer Anderungsrate (geeignet) auslagern.
 


Schreibe deine Antwort... und nutze den </> Button, wenn du Code posten möchtest...

Neue Themen


Oben