C
C#•4d ago
David_Bones

How to interpret C#/.NET documentation

Hello everyone, I am new to C#, and I would like to know the fundamentals about C# documentation and how to interpret it. I mean, .NET/C# documentation available on the Microsoft Learn platform is not always crystal clear. Documentation is indeed very intricate and full of links/referrals. Usually stackoverflow is the way to go. But are there any tutorials, courses, handbooks about how to interpret the documentation? I am convinced that a one-hour video would be enough to cover all the major aspects of documentation so that every beginner can already start to read it proficiently.
36 Replies
Keswiik
Keswiik•4d ago
$helloworld
Keswiik
Keswiik•4d ago
Not so much on how to interpret documentation, but if you are completely new to programming and/or c#, you may have a hard time understanding docs until you learn some Got an example of a specific doc page you had trouble understanding?
Jimmacle
Jimmacle•4d ago
yeah i wouldn't expect a beginner in programming to get a lot of value out of technical documentation usually better to use resources that cover the basics in a more guided way
Keswiik
Keswiik•4d ago
ya i'd guess anyone new will have trouble with docs until they get the fundamentals down at least
mtreit
mtreit•4d ago
Beware of stack overflow. It often has all sorts of bad information.
David_Bones
David_BonesOP•4d ago
I know the fundamentals of OOP, and I know other languages which are mainly involved in scripting. When it comes to object oriented programming and writing an entire application...it is very different from writing simple scripts for data analysis with languages such as Python or R. I consider Object Oriented programming way harder than just scripting.
mtreit
mtreit•4d ago
You don't have to do OOP. I write lots of C# code and very little of it is what I would consider object oriented.
David_Bones
David_BonesOP•4d ago
Yes, you have a good point, but in the C# course I attended, and the Java course that I am going to attend, classes and objects go hand in hand. In scripting languages such as Python, you can avoid objects if the purpose is relatively simple. But there must be 10 to 20 fundamental articles that can pave the way to correct interpretation of C# documentation. One of these articles could be this one for example (https://learn.microsoft.com/en-us/dotnet/standard/generics/) this is about "Generics" . Just grouping a bunch of these beginner articles would be very beneficial for beginners, in order to understand what the compiler is actually doing.
Generics in .NET - .NET
Learn about generics in .NET. Define & use generics, learn their advantages & drawbacks, understand class library & language support, and more.
Jimmacle
Jimmacle•4d ago
beginners don't need to know what the compiler is doing there's a good chance they don't have much understanding of what a compiler even does
mtreit
mtreit•4d ago
I can't believe that generic article uses LinkedList<string> as an example. Nobody uses LinkedList<T> in .NET programming 😄
Jimmacle
Jimmacle•4d ago
i'm still waiting for a good reason to use a linked list in a production application they were so hyped up in college
mtreit
mtreit•4d ago
On modern hardware you almost never want linked lists over more cache-friendly data structures.
Jimmacle
Jimmacle•4d ago
exactly
Faker
Faker•4d ago
(sorry to jump in, this isn't related to the question but to the talks :C.... ) in real-life, linked lists are almost never used? We always use hash tables?
Jimmacle
Jimmacle•4d ago
we use arrays
Faker
Faker•4d ago
ah, this is a question of efficiency?
Jimmacle
Jimmacle•4d ago
yes
Faker
Faker•4d ago
but it depends, no? Like for insertion etc ?
Jimmacle
Jimmacle•4d ago
everything depends eventually
Lex Li
Lex Li•4d ago
If possible, start with well written books that lay out the contents in an organized way. My personal book list only contains "Effective C#" and "CLR via C#" as I was already self taught through projects. There might be more suitable books for beginners but I don't know. MSDN/Microsoft Learn contents are more for reference purposes IMHO, so you won't be able to interpret them unless you are very familiar with the basics.
David_Bones
David_BonesOP•4d ago
That's exactly what I was thinking. It is the best option in order to have a clue about all these classes and sub-classes and so on and so forth.
mtreit
mtreit•4d ago
CLR via C# is a great book but it's definitely not remotely for beginners 🙂 Also a bit dated now.
David_Bones
David_BonesOP•4d ago
Another good book could be "C# in Depth" by Jon Skeet. Sorry guys, maybe with the Generics article I picked the wrong example. It was just to show that there is a need to understand the hierarchy of all these classes.
Lex Li
Lex Li•4d ago
But "Book of the Runtime" isn't truly a book yet https://github.com/dotnet/runtime/blob/main/docs/design/coreclr/botr/README.md 😅
mtreit
mtreit•4d ago
I'd buy a print copy 😉
Lex Li
Lex Li•4d ago
If your goal is to better know the BCL other than the runtime itself, I think it is hard to find good books/tutorials specific to that area. Try to build certain kinds of apps and that might help. Modern AIs are also possible to guide you through certain namespaces.
mtreit
mtreit•4d ago
C# In Depth is excellent. Also not a beginners book however.
David_Bones
David_BonesOP•4d ago
Of course, AI has become a fundamental tool in debugging and coding, especially for simple tasks. But it is also a double edged sword, if you use it on a consistent basis, it will turn from a crutch to a wheelchair, basically hurting the novice programmer. You will become dependent on it. But I am wondering how the old school programmers actually dealt with technical documentation. I mean...they must have been way better than modern programmers.
Jimmacle
Jimmacle•4d ago
nobody doing any real programming work will become dependent on AI, it's inadequate for a lot of tasks as a way to search through information and get some general ideas, sure
Lex Li
Lex Li•4d ago
You might simply use them as better search engines and ask them to show you the exact references you need to visit. That helps you save quite a few hours navigating through Microsoft Learn.
mtreit
mtreit•4d ago
Old school programmers were working under much more constrained environments. The amount of things available to know was also a lot smaller. It's hard to compare programming from 25+ years ago to today.
David_Bones
David_BonesOP•4d ago
Yes, I agree. The quality of modern search engines is trash nowadays....There has been a huge drop in the quality of search results for most of the search engines.
mtreit
mtreit•4d ago
I use Bing for search pretty much exclusively and the results in my experience have only gotten better over time.
Jimmacle
Jimmacle•4d ago
i haven't noticed issues with google the search engine itself works fine, there's just more AI generated slop to filter out
David_Bones
David_BonesOP•4d ago
That is interesting. I have never really tried bing. I've always used Google and Duckduckgo. It seems that the drop in the quality of the search results is related to the fact that these results are AI filtered themselves.

Did you find this page helpful?