I've been programming for about 5 years now, mostly using functions without diving much into classes. I realize there are many design principles and patterns out there, but no matter how hard I try to learn them, they just don't stick with me! I sometimes end up using them without even knowing their names. I'm wondering if mastering these concepts will actually make me a better programmer. Any tips on how to get better at them? Also, I'm easily forgetful about things I haven't practiced in a while. If you have any YouTube channels or resources that could help, I would really appreciate it!
5 Answers
Have you considered trying functional programming? A lot of the concepts in design patterns align with functional techniques. It might be simpler and more intuitive for you. Plus, it's a great way to expand your programming skills!
It's totally okay if you don’t get to use all the design patterns often. You might not encounter them in simpler projects. However, as you work on complex systems, you'll find that many patterns become naturally necessary. Keep a cheat sheet handy if you’re practicing, and eventually, you’ll remember them as you use them. Just keep coding!
Sure, you can definitely become a good programmer! Start with dedicated playlists on YouTube covering design patterns. Check this one out: [Design Pattern](https://youtube.com/playlist?list=PLrhzvIcii6GNjpARdnO4ueTUAVR9eMBpc&si=1mD56az94jjjVH-e). It's a solid starting point to grasp those concepts. Don't get discouraged; everyone learns at their own pace!
Design principles are just frameworks to help you write better code. You shouldn't feel pressured to memorize them all. Instead, try picking a few and creating your own mini-tutorial or project to practice what they do. This way, you’ll remember them better in context. Also, look up resources like design pattern videos; they can simplify the concepts for you!
I love that idea! I think finding practical examples will make them stick.
It's a real challenge to remember all the design patterns, especially if you're not using them regularly. But honestly, you don't need to memorize every single one. Focus on the most common ones like Factory, Singleton, and Observer. These will often come up in conversations, so understanding them is fine—no need to stress about knowing their names! Remember, the goal is to write effective code, not to flex your knowledge of terms. Keep it simple and see what fits your workflow!
That's true! Just knowing how to apply them when you need to is what matters most.
That sounds interesting! I'm definitely going to explore functional programming next.