I'm trying to learn distributed systems, but I keep hitting roadblocks with prerequisites. I started with database systems, which required knowledge of operating systems and algorithms. Now I'm facing a similar issue through the learning path: I need to learn operating systems first, then data structures and algorithms, and finally programming and Object-Oriented Programming (OOP). I find OOP really boring, and I'm looking for a solid book recommendation to help me get through it.
3 Answers
Looks like OOP really is that foundational, especially when you want to tackle more complex topics like distributed systems. You might want to check out "Design Patterns: Elements of Reusable Object-Oriented Software" too; it'll give you a solid perspective on how OOP concepts apply in real-world situations.
Are you sure you want to dive into OOP? It might be worthwhile to solidify your programming skills first. Have you already learned to code in any language? Knowing the language can help when picking a good OOP book.
If you’re aiming for distributed systems but haven’t grasped OOP yet, it’s crucial. Think of it as needing to learn to walk before you can run a marathon! For book recommendations, it depends on the language you're using; for Java, I'd suggest "Effective Java" or "Head First Object-Oriented Analysis and Design".
I've been learning Java for a year now.