Submitted by trekhleb t3_xvum4n in InternetIsBeautiful
RockstarArtisan t1_ir57u2i wrote
Reply to comment by Ok-Butterscotch-6829 in Interactive sketches to illustrate SOLID programming principles by trekhleb
There're reasons why this got upvoted in a nonprogramming subreddit and downvoted in r/programming :P
Ok-Butterscotch-6829 t1_ir5c4cc wrote
Why was it downvoted there? I thought SOLID was accepted as good practice in OOP?
RockstarArtisan t1_ir5q7om wrote
Well, it is widely known and established, but many people disagree about being good. Some of the advice is applicable in the context of a framework, but the author insists it should be used everywhere which results in bloated designs that people hate. The popularity of this in the Java community is mostly what's responsible for all the hate Java gets online - bloat, overabstraction, complicated designs exemplified by the most SOLID frameworks of them all - Spring - with it's AbstractSingletonProxyFactoryBean https://docs.spring.io/spring-framework/docs/current/javadoc-api/org/springframework/aop/framework/AbstractSingletonProxyFactoryBean.html
Ok-Butterscotch-6829 t1_ir5rulv wrote
Good to know thanks
billwoo t1_ir6e306 wrote
Well we can ignore what the author insists on, and just use them as handy short hands for describing architecture decisions. All the principles are sound architectural advice without further context, but software design is mostly striking a balance between pragmatism and "perfect" architecture (extensibility, generality, low coupling etc.). That some Java libraries get that wrong isn't really evidence that "SOLID is a bunch of bs".
Only things that nobody uses don't get complained about.
ImTheTechn0mancer t1_ir7nrku wrote
>good practice in OOP
A vacuous statement because OOP is not a good practice.
Ok-Butterscotch-6829 t1_ir9wbvh wrote
Well, I kept seeing SOLID come up for interviews and what not but it sounds like many programmers dislike it.
ImTheTechn0mancer t1_ir9xyp1 wrote
Of course! Companies love acronyms and buzzwords. SOLID! CRUD! Synergy! Bobody!
They make the business-oriented folks feel like they know what they're talking about with the senior devs.
Viewing a single comment thread. View all comments