[a / b / c / d / e / f / g / gif / h / hr / k / m / o / p / r / s / t / u / v / vg / vm / vmg / vr / vrpg / vst / w / wg] [i / ic] [r9k / s4s / vip / qa] [cm / hm / lgbt / y] [3 / aco / adv / an / bant / biz / cgl / ck / co / diy / fa / fit / gd / hc / his / int / jp / lit / mlp / mu / n / news / out / po / pol / pw / qst / sci / soc / sp / tg / toy / trv / tv / vp / vt / wsg / wsr / x / xs] [Settings] [Search] [Mobile] [Home]
Board
Settings Mobile Home
/g/ - Technology


Thread archived.
You cannot reply anymore.


[Advertise on 4chan]


File: 1719760078906.jpg (365 KB, 1080x1646)
365 KB
365 KB JPG
The C# documentation is absolute dogshit. Everything is chaotic.
I'm trying to check the methods and properties string variables have and I can't find anything in the docs.

Is it really that difficult to have a table of what you can do with strings?
>>
What the fuck is this garbage? Cant they just sort things as a tree? Why do I have to check an unrelated link everytime I'm trying to check something about the language? Why can't I have a direct link in the string section?

Why isn't it under the type section, it is a type, why is it in a separated section?

WHY THE FUCK CANT THEY MAKE A GOOD ORGANIZE DOC FUUUUUUCK
>>
>>101216359
https://learn.microsoft.com/en-us/dotnet/api/system.string
docs is mostly how-tos, tutorials. that kinda thing.
the api browser covers props, methods, ctors, etc which is what you're looking for
>>
>>101216558
Where is the API browser?
I don't want how tos, they don't explain half the things of a language, I just want to see the structure, the features it has, what can they do, I'm checking whatever I find and it is all chaotic, I don't get how anyone can navigate through this shit.
>>
MSDN documentation used to be pretty top-tier. can't tell if the bar has been raised or Microsoft just got shittier. pretty sure it's both. I remember that for literal years you had to look up C# 8.0 changes to find the syntax for the new switch statement because it didn't exist in the documentation
>>
File: apis.png (35 KB, 1864x373)
35 KB
35 KB PNG
>>101216593
https://learn.microsoft.com/en-us/dotnet/api/?view=net-8.0
idk nonny, you get used to it over time.
>>
>>101216662
That thing is hell. And .net not c#. Thanks anyways but it hurts my eyes.

I just want something that isn't chaotic, like a dictionary but for c#, is it too much to ask?
>>
File: 1706522796366661.jpg (30 KB, 852x480)
30 KB
30 KB JPG
>>101216593
>>
>>101216359
>>101216526
>>101216745
Use gpt4o boomer
>>
>>101216648
>can't tell if the bar has been raised or Microsoft just got shittier. pretty sure it's both.
The bar has not been raised, it has been lowered drastically. Vague "intros" instead of proper documentation has become the norm with the ever increasing shift towards webshit, and microsoft has adapted to that new norm by becoming as bad at this as everyone else.
>>
>>101216791
Tell me where the documentation is then.
Tell me where can I know how strings work in C#, what methods they have, what functions they have, limitations, specifications, without having to check a gorillion links and without having to bash my head into a wall for hours.
>>101216830
So documentation is shit, gotcha.
>>101216842
I don't want a how to tutorial, just give me the info raw and I will do the rest.
They should organize.
>>
this nigger can't figure out strings??
>>
>>101216359
skill isuue
>>
>>101216868
>I don't want a how to tutorial, just give me the info raw and I will do the rest.
I know man, we use nodejs at work and I scream about this every day. When php becomes the gold standard to aspire to, you know how things have fallen.
>>
>>101216359
I don't even need to look at the name on a resume to throw it out - C# = instant red flag that the applicant is a jeet
>>
>>101216868
https://learn.microsoft.com/en-us/dotnet/csharp/programming-guide/strings/
https://github.com/dotnet/runtime/blob/main/src/libraries/System.Private.CoreLib/src/System/String.cs
I am sorry for your pajeet condition
>>
File: Capture.png (59 KB, 1426x857)
59 KB
59 KB PNG
>>101216868
here comes the spoonfeed, say ahhh
>>
After digging and digging I found this
https://learn.microsoft.com/en-us/dotnet/api/system.string?view=net-8.0

Which isnt linked in the main page, why isn't this the main link instead of the sad excuse of "documentation" they have there?
>>
>>101216966
I know you are retarded but that link is what I was exactly complaining about.
It's shit, that's not how you do documentation.
>>
>>101216976
Another retard, that's not documentation, just put a nice, organized website or pdf for the documentation, fuck
>>
>>101216745
why do you think the browser is chaotic? you type in "string" and you get what you're looking for
also, i don't know why it being .NET has any relevance when the string class itself is a .NET library. as the docs say, 'string' is an alias for System.String
>>101216988
i posted that link in my first reply, you must've missed it
>>
>>101217023
bad baby, no tv shows or dessert
>>
>>101216359
I googled ".net string" and first link was exactly what you were looking for. Thus you must be just retarded
>>
this guy doesn't know how to use string... in C#? and makes a thread because he can't figure it out? holy shit this is pathetic
>>
File: 1719763594957.jpg (550 KB, 1080x1923)
550 KB
550 KB JPG
>>101217024
This is the main page when you Google c# documentation, behalf of those are useless links with stupid explanations that don't really dig in or are made by people who don't know how to teach.

It's shit. Cant they just put a link with the detailed information of their own language?
>>
>>101217061
No you didn't
>>101217087
0 reading comprehension
>>101217041
Kill yourself
>>
msdn docs are the worst docs I've ever seen. and because they change their links from time to time, some references get 404.
>>
>filtered by strings
>>
>>101217124
the guides assume you have little/no knowledge of programming. the page says that if you're more experienced, you can look at the reference, linked at the bottom of the page.
whether it's a good idea to structure it like this, i dunno. but you would benefit from reading more of the headings (which one literally says "learn to program", implying someone has very little knowledge on how to do so unlike you)
>>
Imagine looking back at your life in a few years and remembering the time you got filtered by string class and had to make an angry 4chan thread where you insult people who try to help you because you can't figure it out. How do you go on carrying that burden? Is that something you tell your wife or kids or do you keep it a secret your whole life? Won't it cause you to just die from cringe?
>>
>>101216359
> documentation?
For what? It’s a poojeet language. No one serious about developing maintainable software is using C# or associating with anyone who does.
>>
Language documentation is for pussy, read the specification or shut the fuck up.
>>
>>101217340
But the thing is that learning with those "how to" guides can be tricky because they don't explain some basic stuff that can snowball later.

Let me think of an example, types can be value types or reference types, I wasn't explained that when learning programming and so I was confused because with certain things the value changed and with others didn't.

Or how namespaces are used and what they are really, which is usually dismissed in many tutorials, they just say "oh just put this and don't think about it.

They have simplified the format with console applications for example so now you don't even have to put the main function, it is all automatic.
That's cool if you know what is going on in the back, but as a beginner that's just gonna cause malpractice.
>>
>>101217396
Better than being a trolling retard that can't even do good bait or understand what the thread is about.
>>101217437
What do they use then.
>>101217449
It is also garbage.
>>
>>101217464
yes sir value type VERY tricky not explained at ALL microsoft please do better for us thank you sir
>>
>>101216359
> I'm trying to check the methods and properties string variables have and I can't find anything in the docs.

are you scared of IntelliSense? do you know api browser was in your ide all along?
>>
>>101217502
He wants a pdf or something, he's fucking retarded
>>
>>101217437
>no one serious about developing maintainable software is using C#
ah yes, the unserious individuals of AMD, Github, Jetbrains, Air France...
https://avaloniaui.net/
and Air Canada, National Geographic...
https://platform.uno/
and from my experience crawling websites, lots of universities, hospitals, government institutions, and more! :^)

>>101217464
that's fair. i remember getting caught on ref types too when using lists. however, both ref types and namespaces are listed in the fundamentals. it's easy to miss though because there's so much to take in at the start. that's probably the hardest part about c#, that there's a lot of features that are of varying usefulness that you're unsure of their importance.
>>
>>101217548
>namespaces and ref types are the hardest part about C#
>>
>>101217495
You seriously do not have reading comprehension, you are absolutely retarded my God, I'm talking about all of those how to tutorials that usually skip basic concepts, like value or reference types, and just go with types as general.

And that page is also retarded because it doesn't tell you everything about types, and it's sorted in a very chaotic way, which is what I'm talking about.

You are a fucking idiot.
>>
>>101216359

if you cant figure out strings or values youre gonna fuckin hate methods and return values lmao
>>
>>101217580
>you do not have reading comprehension
>can't figure out documentation written for literal retards
>i-it's not me! the words are just chaotic and stuff, they are teasing me it's not fair!!
>>
>>101217548
That's the thing, that's why I wanted a detailed and organized doc because there is so much stuff that can be ignored which is important, but all I can find is half asses "documents" and tutorials for absolute beginners.
>>101217573
>Wasting time being a stupid troll on the internet is a good way of using time! I could do anything yet here I am!
Pathetic
>>
>>101217580
just learn the language first

btw there is a good C# resource called metanit, a blog kinda but it is in russian so you need to translate it
>>
>>101217396
>wife and kids
Anon, I...
>>
>>101217573
no, reread what i wrote.
>that's probably the hardest part about c#, that there's a lot of features that are of varying usefulness
"that" is in reference to the large number of things to learn right off the bat in comparison to say, python; NOT about refs/namespaces.
>>
>>101217618
How can you learn the language first if all of the tutorials ignore basic concepts and the documentation is shit?
I just want something useful but I don't doubt that Microsoft is full of pajeets now and that they don't really know how their own language works, therefore the shitty documentation.
>>
Just read the saucecode bro. Docs suck is what it is.
>>
>>101217632
>The hardest part about C# is that it's harder than Python
Amazin
>>
>>101217652
Give me a link please
>>
>>101216359
C# has the second best documentation of all languages.
#1 is Rust btw.
>>
>>101216745
There's no "string" in C#, string is a class in the .net System namespace.
You asked for an API browser, and you got an API browser with all the information you may want.
The docs are tutorials and guides, and they're fucking insanely good. I love them, and I barely use C#, but when I have to use it it's always a comfy experience
>>
>>101217687
https://referencesource.microsoft.com/#mscorlib/system/string.cs
>>
File: csharp_docs.jpg (225 KB, 1957x999)
225 KB
225 KB JPG
>>101217642
just click on the html links Anon, they will guide you...
if you want to know what you are doing you need to go through fundamentals, quickstarts and tutorials are supposed to be concise, web api quick start is not supposed to teach you how strings in .net work
>>
>>101217708
>There's no "string" in C#, string is a class in the .net System namespace.
If only they explained that clearly, instead of bloating concepts.

I'm checking the API and it seems to be better, but I swear I couldn't find that link by going alone, it always shows the language reference links which are garbage
>>
>>101217765
Most of those aren't what I'm looking for, will check the API more. There should be one of the main links in the page, instead of a gorillion tutorials.
>>
File: action.png (22 KB, 406x558)
22 KB
22 KB PNG
I swear this is like that meme you know the one I'm talking about
>>
>>101217769
>If only they explained that clearly
Can't get clearer than that:

https://learn.microsoft.com/en-us/dotnet/csharp/programming-guide/strings/
>A string is an object of type String whose value is text. Internally, the text is stored as a sequential read-only collection of Char objects. There's no null-terminating character at the end of a C# string; therefore a C# string can contain any number of embedded null characters ('\0'). The Length property of a string represents the number of Char objects it contains, not the number of Unicode characters. To access the individual Unicode code points in a string, use the StringInfo object.
>>
>>101217798
He wants it Sesame Street format with little talking stuffed animals
>>
>>101216359
You are a moron.
>>
>>101217798
Where does it say there that string is part of the system namespace
>>
>>101217905
2nd paragraph, it has big bold letters that say "string vs. System.String"
>>
>>101217952
Why not the 1st paragraph?
>>
>>101217952
So string isn't a value type?
>>
>>101218034
No, that would be retarded a string can be very large.
>>
>>101218034
strings are immutable reference types
>>
>>101218100
Why would it be retarded? What's the deal with being very large?
>>101218120
Ok, and I'm what part of the language reference docs says that types are derived from the system namespace?

That info is put in a link at the end maybe as if it was something non important, but it is a fundamental way of understanding types.
>>
ngmi
>>
>>101217905
https://learn.microsoft.com/en-us/dotnet/csharp/language-reference/builtin-types/reference-types#the-string-type
>>
And this is the shit I'm talking about, if string comes from system, if you are not using system, the program still detects it automatically, which causes confusion for beginners. Fucking why.
>>
>>101218169
>Why would it be retarded? What's the deal with being very large?
Because value types are passed by value.
>types are derived from the system namespace
How can types be derived from a namespace?
>>
>>101216359
>place caret on string or any other type in your code
>press f1
woooooooooooooooooooow
>>
At some point you just have to learn, you can't put every single necessary concept in a single sentence on the first page of every single website on the internet.
>>
>>101218234
>Because value types are passed by value.
That doesn't mean anything. Shit explanation, what even is that?
>How can types be derived from a namespace?
They can't, namespace is a namespace, a clasification, but string is technically system.string
>>
>>101218324
You can make it in a sorted manner that isn't cancer.
>>
>>101218327
>That doesn't mean anything. Shit explanation, what even is that?
try googling
https://en.wikipedia.org/wiki/Value_type_and_reference_type
https://learn.microsoft.com/en-us/dotnet/csharp/language-reference/builtin-types/value-types
>string is technically system.string
yes, string is an alias, see >>101218220
>>
I only use docs when it comes to how to use things like custom libraries or obscure features. if it's something as common as string operations you can probably just search "how to do X in c#" and get your answer that way
>>
>>101218327
int is technically System.Int32
>>
>>101218345
It is but you are just too stupid to realize how stupid you are. There is no reason why the string page should have an entire section that explains what a value type is. It links to it because that way it's in a place that makes sense.
>>
>>101218349
I usually do that too, but I would expect the main page to have a better explanation than something a third party made.
>>101218348
I know that one type is passed by reference and the other as an instance, is just that saying "passing things by value" doesn't mean shit.
>String is an alias for system
What's the point of system then if everything ends up being system.thing
>>
>>101218408
>that saying "passing things by value" doesn't mean shit
it does
>What's the point of system
https://learn.microsoft.com/en-us/dotnet/api/system?view=net-8.0
>>
>>101218404
That's not what I said, can you read?
My point from the beginning was to have the API on the main page, instead of the reference docs which are shit.

Instead of having both separated and the API not linked in the main page, have them as the same entry and separate it into semantics and general explanation, have a classification of what can you do woth each, etc.

Having a more organized doc, that's it, instead of the chaos that is the main page with tutorials, useless info that only bloat the important content.
>>
>>101218408
>"passing things by value" doesn't mean shit
obviously some topic you have no knowledge of doesn't mean shit or sounds absurd to you, this concept is not exclusive to c#
>>
>>101218452
>have them as the same entry
no, it's better the way it is
>>
>>101218478
>>101218446
It doesn't
"passing thing by value" is a shit expression.
You are making a copy, you arent passing anything. It ironically fits the reference definition more than the other thing.
>>
>>101218495
Yeah, miles times better, having to dig through a million articles and links to find the fucking API instead of having it in the main page; googling it redirects you to the other stupid reference docs
>>
>>101218538
>pass by reference
a reference to the value is passed
>pass by value
the value itself is passed

It's really not that hard. Even the retarded women in my introduction to programming course in university 10 years ago had no trouble understanding this simple concept.
>>
File: retard.png (48 KB, 638x541)
48 KB
48 KB PNG
>>101218564
>instead of having it in the main page
it's right there
https://learn.microsoft.com/en-us/dotnet/csharp/programming-guide/strings/
>>
>>101216359
You're nothing but a retarded pajeet (or an aspiring one if you're white)
>>
>>101218566
You don't "pass" shit, you make a reference or you make a copy
>>
>>101218585
https://learn.microsoft.com/en-us/dotnet/csharp/language-reference/keywords/method-parameters
>arguments in C# are passed to functions
looks like you are wrong
>>
>>101218585
are you new to programming? you argue semantics that don't mean shit in the grand scheme of things
>>
>>101218585
What do you think pass means?
>>
>>101218576
That's not a good design nor a gotcha nor anything. It's shit. If I search for "string" I would hope to get the API first or have explanation next to the specifications, not in an embed link in a word. I shouldn't have to click words to get to the API.
>>101218604
>Authority fallacy
Passing doesn't mean that. If you "pass" something you no longer have it. Value types create a copy and reference makes a reference to the original; both cases leave the original.
Unless it is something that changes the physical space on memory for a variable, pass doesn't mean shit
>>
>>101218585
Fuck off with the pedantic shit. Simplified, primitive types are pass by value (or as you like to say "copy") unless you use the ref or out keyword and stuff like classes is pass by reference (or you can say pointer, but that's abstracted away in c#)
>>
>>101218645
They mean shit. Programming is a language. It's literally what it means, programmers not understanding definitions and using words that no one really knows what they mean is why shit is breaking all the time.

Imagine if you where looking for a word in the dictionary and instead of using simple rules for organization (alphabet)it didn't because fuck It.
>>
>>101218665
If you want the string api, how about searching for "string api"?
dumb retard
>Passing doesn't mean that.
The C# language reference says otherwise.
>If you "pass" something you no longer have it.
We are talking about C#, not Rust.
>>
>>101218665
Ohhh the self taught esl retard is trying to learn
>>
>>101218707
stop avoiding the question, are you new to programming? get off that dunning-kruger high
>words that no one really knows
you mean established definitions used for decades by many
>>
>>101217985
jesus christ are you retarded
>>
File: 1719771615494.jpg (476 KB, 1080x2004)
476 KB
476 KB JPG
>>101218708
Because I would expect the API to be the default, not a retarded half assed explanation
>>101218690
>>101218757
Pass has a simple definition, I don't care what a pajeet Microsoft hired says.
To move, transfer, change, things the original value in memory ISN'T doing
>>
>>101216359
Why are you wasting your time with pajeet languages and you are surprised the documentation is shit
>>
>>101218665
You can make a copy then pass it, what a stupid argument to make. A reference is also passed. The reference is a distinct thing that moves from the caller to the function, it's literally passed along.
>>
>>101218785
>Authority fallacy
>>
>>101218793
Is the ORIGINAL passed, yes or no?
>>101218791
Because lots of people and programs use the pajeet language. And the pajeet language is java.
>>
>>101218785
>Pass has a simple definition, I don't care what a pajeet Microsoft hired says.
oh no no no no ahahahhahaah muh microsoft bad, except the documentation of any fucking language would use "pass" to describe giving values to functions, it's not exclusive to microsoft
I really hope you're just baiting and not that stupid irl
>>
>>101218785
>a pajeet Microsoft hired
https://en.wikipedia.org/wiki/Anders_Hejlsberg
dumb retard
>>
>>101218842
>Is the ORIGINAL passed
see >>101218708
>>
>>101218843
And I suppose that if everyone now says "woman" when wanting to call a man, that makes you a woman, right tranny?
>>
File: obsessed.png (354 KB, 1170x814)
354 KB
354 KB PNG
>>101218888
>>
>>101218862
>>101218847
Then anders should look the definition of "pass"

If I pass you the ball, do I still have the ball?

If I have my ball and you make a new ball, did I pass you the ball?

If I write down my address on a letter, did I pass you my house? My house is still there, you just have a REFERENCE to it
>>
>>101218888
does every problem presented to you loop back to trannies? go read a book you dumb nigger
>>
>>101218942
Not my fault you don't know your own language
>>
>>101218939
>>
>>101218953
arguing semantics again? go read a book
>>
bait thread
>>
it's crazy how delusional and defensive c# devs are. there's no bigger spergout than when someone criticizes their mid language and their mid ecosystem. it's amusing
>>
File: IMG_20240630_133948.jpg (435 KB, 1080x2000)
435 KB
435 KB JPG
>>101218847
>>
File: English-Obj.-1st.jpg (367 KB, 1600x2512)
367 KB
367 KB JPG
NOOO THATS NOT WHAT PASS MEANS MY TEACHER SAJID IQBAL TOLD ME THAT ITS WHEN THE ORIGINAL THING MOVES YOU CAN"T MAKE A COPY THATS NOT WHAT MY DICTIONARY SAYS
>>
>>101216359
good thread anon I hate MS docs as well but shills here always get assblasted when you mention it.
>>
File: file.png (210 KB, 1908x1001)
210 KB
210 KB PNG
>>101217789
this one?
>>
my experience with the c# documentation mirrors my experience with c# itself: expecting something decent after reading so much praise, only to be appalled
>>
>>101217762
why is this 3,500 lines long?
>>
dam you're fucking retarded
>>
all you need to do is append "microsoft learn" at the end of your search query and click on the first couple of links by microsoft. most of the time you will get your answer
>>
Microsoft, Azure, Amazon and Google documentation all suck
>>
>>101216745

>And .net not c#
Yes, but also no. .NET is the runtime environment and standard library of C#, F#, PowerShell, and Visual Basic .NET. You can think of all .NET languages, including C#, as just different syntaxes for interfacing with the same abstract machine. This is true even if you compile AOT to native machine code. You will always be using .NET data types, and therefore the .NET API reference is what you need to look at if you want to look up any standard library feature of C#.

Saying C# is not .NET is like saying Java is not the JVM and Java Class Library. You're right, but in a way that is irrelevant to the subject.
>>
>>101222345
t. retard
>>
>>101221681
How long should a string class be?
>>
>>101216359
all the main articles are well written and have all the information you need.
>>
>>101217789
what's the issue here?
it's auto-generated
>>
>>101222612
half that or less
>>
>>101218452
you need to read a book, I suggest C# in a nutshell
>>
>>101222832
why's it ok when people do it in c# but not in go?
>>
>>101222810
I've seen articles flat-out lie.
>>
>>101216526
That's modern UI/UX. Specialization has gotten to the point where the people that make these docs aren't even programmers themselves.
>>
>>101222612
And what should be done to ensure the number of lines of code does not exceed 1750? Should there be less methods? Should there be less comments explaining the logic of less intuitive sections of code? Should the implementations be slower but easier to express in fewer lines?
>>
>>101224685
Meant for >>101222845



[Advertise on 4chan]

Delete Post: [File Only] Style:
[Disable Mobile View / Use Desktop Site]

[Enable Mobile View / Use Mobile Site]

All trademarks and copyrights on this page are owned by their respective parties. Images uploaded are the responsibility of the Poster. Comments are owned by the Poster.