• @Zangoose@lemmy.one
    link
    fedilink
    14 months ago

    As a dev who works on both Java and C# code, modern Java (17+) and C# feel almost exactly the same (not sure if Java has extension methods though).

    Bonus points for using Kotlin instead tho. I dislike both Java and C# just because they both allow any object to be null and that’s usually a headache whenever a null exception shows up.

    The only thing I like better about C# is the Fixture library for testing. I haven’t found any mature libraries like it for Java yet.

    • @danA
      link
      24 months ago

      they both allow any object to be null and that’s usually a headache whenever a null exception shows up.

      C# has nullable reference types now: https://learn.microsoft.com/en-us/dotnet/csharp/nullable-references. If you enable it, you have to explicitly make reference types nullable (like ?string) and you’ll get build warnings if you try to use a variable that’s potentially null.