You are viewing a single thread.
View all comments View context
25 points

C# is nearly the same, but much, much better.

  • It doesn’t (usually) come with the Java culture 8 layers of abstraction. This isn’t in the Java language. This isn’t in OO. Yet nearly every Java programmer makes things way more complicated than it needs to be.
  • It’s a prettier language. Similar syntax with less bullshit.
  • It’s open source
  • It’s still multiplatform. Modern dotnet / C# works on anything.
  • Both Visual Studio and Visual Studio code are great IDEs that blow Eclipse out of the water
  • It’s one of the most common business languages.
  • It’s going to be supported forever.

If I could restrict the world of programming to two languages, it’d be C# and Rust. C# for most things and Rust for a lower level language.

permalink
report
parent
reply
20 points

permalink
report
parent
reply
9 points

I’ll take Python and Fortran, thank you very much

permalink
report
parent
reply
0 points

Python should be burning in hell

permalink
report
parent
reply
1 point

Nah, that’s Java and JavaScript.

permalink
report
parent
reply
5 points

Nah, C# suffers from a lot of the same shit Java does. Needing everything to be a class is just no longer a good design choice (if it ever was). AOT support is still lacking. I don’t get, why it does not have typdefs. I think the solution / project structure is unnecessary and I could probably think of more stuff I dislike about C#. But imho, it still beats Java.

Golang is my choice over C# any time. I strongly prefer how interfaces are handled and I actually like the error handling.

permalink
report
parent
reply
8 points

Needing everything to be a class

In 2015 they added scripting. If you’re making a real project, you should absolutely use classes. (It’s not that hard. Don’t do the Java shit.) But you can absolutely write one off scripts just fine.

AOT support is still lacking.

Publishing your app as Native AOT produces an app that’s self-contained and that has been ahead-of-time (AOT) compiled to native code. Source.

permalink
report
parent
reply
5 points

I think you misunderstood my post. I am quite proficient with C#. I just think other languages do it better.

AOT is not where it should be yet, because not all libraries have full stripping support.

permalink
report
parent
reply
1 point
*

I strongly prefer how interfaces are handled

It’s better than Java, but they still chose to walk headfirst into the same trap that bites Java developers in the ass: associating interface implementations with the struct/class rather than the interface itself.

When you have two interfaces that each require you to implement a function with the same name but a different signature, you’re in for a bad time featuring an abomination of wrapper types.

Edit: Clarity.

permalink
report
parent
reply
5 points

On that last note, can’t you use the explicit interface implementation in C#?

e.g.

public class SampleClass : IControl, ISurface
{
    void IControl.Paint()
    {
        System.Console.WriteLine("IControl.Paint");
    }
    void ISurface.Paint()
    {
        System.Console.WriteLine("ISurface.Paint");
    }
}
permalink
report
parent
reply
1 point

just one more oop bro I swear

Pure oopium. All oop ‘design patterns’ exist solely to overcome the inherent flaws of oop.

permalink
report
parent
reply
0 points

Is there anything I can read about how we’re moving away from everything being a class?

permalink
report
parent
reply
1 point

No sorry, but try literally any other language ;-)

permalink
report
parent
reply
4 points

I only had one job that used C#, and it was the worst job I ever had. Even with the worst possible way to be introduced to the language, I still love it.

permalink
report
parent
reply
1 point

Isn’t Visual Studio Code just a fancy editor and not an IDE?

permalink
report
parent
reply

Greentext

!greentext@sh.itjust.works

Create post

This is a place to share greentexts and witness the confounding life of Anon. If you’re new to the Greentext community, think of it as a sort of zoo with Anon as the main attraction.

Be warned:

  • Anon is often crazy.
  • Anon is often depressed.
  • Anon frequently shares thoughts that are immature, offensive, or incomprehensible.

If you find yourself getting angry (or god forbid, agreeing) with something Anon has said, you might be doing it wrong.

Community stats

  • 6.6K

    Monthly active users

  • 1.1K

    Posts

  • 43K

    Comments