Ok, so I am a decent programmer. I can code in a variety of languages, have good understanding of general hardware and general CPU design, have good computer math and logic understanding, good datastructures and OOP understanding. Basically I can program what I need.
But there is one thing that I can't do, and I don't know how to learn to do: Software design. How do I organize my code? How do I split code between various files? How do I decide how much do in the main method?
Can anyone point me to some free resources to learn some of these topics?
But there is one thing that I can't do, and I don't know how to learn to do: Software design. How do I organize my code? How do I split code between various files? How do I decide how much do in the main method?
Can anyone point me to some free resources to learn some of these topics?