3 ms·
Like other design-by committee projects C# has considerable sprawl. As a result, it's overwhelming and confusing for brand new programmers to start writing hobb
by DylanDmitri 5y ago
Like other design-by committee projects C# has considerable sprawl. As a result, it's overwhelming and confusing for brand new programmers to start writing hobby projects in.
But C# is beginner friendly in that it's easy for inexperienced programmers to contribute business value to existing codebases. The everything-in-one ecosystem (IDE + autocomplete + database + deployment + source control + package management) removes many sharp edges that experienced programmers are used to working around and take for granted in other languages. I've known smart high school kids with limited programming experience become productive C# developers in weeks, and that doesn't happen the same for e.g. Java.
- tracker1 5y agoI will agree and disagree... a lot of things around the edges really do change between versions of .Net .. while C# is pretty progressive, the .Net framework does have some rough edges if you're either inexperienced, or have tended to hold on to a version for too long and now need to jump ahead a version or two. The evolution of .Net Core (now just .Net 5) has been interesting and at times very painful.
- nobodyandproud 5y agoThe evolution of .Net standard, core, and framework has been mind boggling and difficult. I’ve lost track, and I don’t even know how to keep tabs on this any more. Too much information. I envy the greenfield developers who can start with .Net Core or .Net 5.
- caspper69 5y agoFor those that care, Framework is the old original .NET for Windows; Core is the new multiplatform .NET; Standard was an, ahem, standard, for writing code that would work under both Framework and Core. Since the release of .NET 5 "unifies" Framework & Core (for some value of n), there is no longer a need for Framework, Core, nor a unifying Standard.
- Stevvo 5y agoThe sprawl isn't just confusing for new programmers. Several years ago I was writing C# professionally, would always appreciate the new features that came with each new version of C#. Recently I was reviewing the code of a library written in C# 9 and couldn't make head or tails of it. Half the code was using features that didn't exist a couple of years ago, enabling the author to use patterns which were not possible without those features.
- ryathal 5y agoThe last few years C# has had a massive adoption of functional paradigms. This is great for programmers as you can use OO or functional styles where they fit best. This definitely sucks for newer developers as functional concepts are often harder to grasp or less commonly taught, but are now necessary to understand in modern C#.
- sedatk 5y ago> Like other design-by committee projects C# has considerable sprawl. Despite having gained some weight over the years, I still wouldn't call Anders Hejlsberg a committee.