5 ms·
I think if you're not a Windows-centric developer it's a bit of a hard sell. Having grown up with C, then C++ I find C# as the best compromise: expressive lang
by zwieback 5y ago
I think if you're not a Windows-centric developer it's a bit of a hard sell.
Having grown up with C, then C++ I find C# as the best compromise: expressive language, garbage collection, good performance, non-fussy syntax. When C# first showed up it was painful because for every other thing you had to call out to native Win32 libraries but nowadays I almost never find myself doing that.
Over the years the team added new language/runtime features at just about the right time: tasks, async, dynamic, reasonably tasteful collections.
For me Visual Studio Enterprise is a big part of it as well. I like plenty of open-source alternatives but honestly VS is where it's at.
- haolez 5y agoYeah, I've heard that Visual Studio's debugger is awesome and has no competitors.
- msk-lywenn 5y agoI still haven’t tried it, but apparently rider is even better than VS. Especially for unity developers as it gives informations from the code as well as the Game asset files.
- GordonS 5y agoI used VS for something like 15 years, before switching to Rider few years back - Rider's debugger is now even better than VS's, IMO. For example, I always found "edit and continue" really flakey in VS - it was really slow, sometimes using it resulted in a long hang or an outright crash, and quite often the IDE wouldn't even give me the option to use it. Rider is rock-solid by comparison - I'd say VS (with ReSharper) and Rider are roughly at feature parity, but Rider kicks VS's arse on stability and performance. Another thing I'd add is that all of Microsoft's UserVoice-type feedback sites are an absolute joke - you might as well be piping your ideas into `/dev/null`. I feel like JetBrains actually listens much more to what developers are asking for. Huge fan of Rider, and actually JetBrains the company too.
- tester756 5y agoVS' debugger allows you to manipulate code while debugging it, with some limitations e.g when you're writing COM code, but generally the craziest thing I did was putting breakpoint after SQL bad call, editing SQL string, at function exit adding call to itself with passing the same args, going into the same function and catching the same breakpoint while executing new SQL and then removing that function call and letting program continue. it allows you to evaluate expressions at fly it allows you to back in time (move e.g 2 LoC above) it allows you to use the Immediate window to debug and evaluate expressions, execute statements, and print variable values. The Immediate window evaluates expressions by building and using the currently selected project.