Viewing a single comment thread. View all comments

Rwagstaff84 t1_ir4th5x wrote

Long time software developer and I get all these solid concepts but …. it doesn’t really change how I write code. I just write what I think is best based on experience. I never stop and think “does this meet the liskov substitution principle” or any of the other SOLID principles. Why is this brought up as the gold standard so much? Just seems like a way to claim you are a good coder because you “understand” solid. Is that just me? coding is so much more than just 5 generic concepts that you probably do almost always by default by following good patterns.

24

Lampshader t1_ir4x3tr wrote

> 5 generic concepts that you probably do almost always by default

You probably do. I assure you that not everyone does, and giving these concepts names and descriptions is a good way to teach those who don't just intuitively "get it"

12

ghostryder333 t1_ir6d7b7 wrote

I don't want to come off as offensive, but I believe if you don't just "get it" intuitively when writing code you're not gonna be able to work in the industry.

After all you still want to be able to read your code as it grows. You codebase will become more complex with each passing day, and if you don't actually get an intuitive grasp on how to structure things you'll become unable to maintain your code pretty soon.

−3

Lampshader t1_ir7dvlc wrote

It's definitely possible to learn and internalize new things.

2

TheBeardofGilgamesh t1_ir5c9yr wrote

Worst code based I have ever encountered where people with a Clean Code book on their desks. Uncle Bob has no real experience in software development he just does the conference circuit and gives lectures.

9

mouse_8b t1_ir6q00h wrote

If it's your only book, yeah it's lacking. It doesn't teach how to be a good developer. But as a self-taught coder, having a reference like that was useful to increase my code quality and readability.

1

TuringC0mplete t1_ir752yi wrote

I preach SOLID pretty hard, but I think after a certain point it just becomes second nature and a "Yeah, that's just how you do it" kind of mindset. Not all of these principles are applicable to every scenario, but for the most part they're a good guide to writing clean code. Some languages don't even have interfaces to do a lot of SOLID things with (looking at you, python -.-)

But I agree that just because you understand the concepts doesn't mean you know how to affectively apply them. Hell, even for preaching them so much, the architect on my team explained to me a few months ago how I was using LSP completely wrong.

Ultimately to me, it's a great teaching tool; but you definitely need to know when to apply it.

1