3 ms·
I've not used C# and .Net Core in any real capacity so thank you for the corrective comment. I think some newer languages are getting tooling right, like rust a
by snorremd 8y ago
I've not used C# and .Net Core in any real capacity so thank you for the corrective comment. I think some newer languages are getting tooling right, like rust and to some extent go (though dependency handling has been a sore thumb).
Maybe C# is really only fantastic on Windows with Visual Studio?
- sremani 8y agoMonodevelop has become very polished, its kind of re-branded as Visual Studio for Mac. Its a decent free IDE. RIDER from JetBrains is fantastic IDE on all platforms. VSCode is a good editor, when you want to write smaller (single file) C#/F# programs. LinqPad is only for Windows but is nice companion editor to riff off small methods/functions or probing LINQ etc.
- HereBeBeasties 8y agoEven on Windows I find msbuild to be a huge drag, especially on larger projects and at scale in an enterprise. There are also some questionable design choices for things like nuget behaviour around dependency versions. For example Version="2.0.0" really means "version 2.0.0 or above", including major version updates (which you probably actually don't want by default if people are following semver). Despite that, if your project A depends on library X with Version="1.0.0" and A also depends on project B, which itself depends on library X at version 2, you will get a build warning (or error, if you do warnings as errors, which you should) that A is downgrading the version. And it does (you'll get version 1 in the output folder if it's a warning). Which is arguably wrong. (If I'd specified "[1.0]" as an exact match, I'd expect that.) It's doubtless done in the name of backwards compatibility, but stuff like this still sucks, even if there's a reasonably good reason for it having to.