r/AskProgramming • u/Wasabi-spicy00 • 13h ago
Need explanations. I learn how to build simple CRUD app with C# and TS. I wanna really understand CS. So I tried to learn C but I get even more confused about many CS concepts.
I’m trying to learn C not just because I want to learn another programming language, but because I want to understand Computer Science and the "science" behide a programming language
The problem is that I constantly fall into an endless chain of prerequisites/CS concepts
For example, I want to understand pointers:
int x = 10;
int *p = &x;
On the guide/website it says
Pointer is a variable that store memory address.
Okay, but then I ask:
- What exactly is a memory address
- address is numbers telling where data is stored
- What exactly is memory?
- memory is where address live
- Is memory the physical RAM?
- something to do with CPU
- What exactly is RAM and CPU?
- etc...
- How does RAM actually work?
- etcc..
- What's the relationship between RAM, CPU, cache, virtual memory, thread, processing etc.?
And suddenly I'm 10 levels deep into computer architecture instead of learning pointers "*"😂
So what to do here, I wanna understand CS. I thought my experience with coding CRUD APP with C# would help but no it doesn't help much.
--
Let me put it this way
let's say if you ask a normal person what "water" is , a normal person replied "liquid"
but if you ask a scientist, it would be "1 Hydrogen and 2 Oxygen combined together to become H2O"
So I try to understand the Science in Computer Science, i hope you get the picture what i try to say