DEV Community

Discussion on: Talking technique: Recognizing context for cleaner design

Collapse
 
coderlens profile image
Lenin (he/they)

This is a great introduction on identifying software design issues.

I learnt about metrics like cohesion and coupling few days ago and i was able to immediately identify in the first example that the array doesn't really belong inside the function and a better approach would be to the passing the values using map.

I'm curious how i could go about to dive deeper into software fundamentals like this. Any resource or keywords would be really helpful!

Collapse
 
kirkcodes profile image
Kirk Shillingford

Thanks!

I feel like the information is scattered all over the place; I'm not sure if there's an excellent consolidating resource.

However, a notable standout is "A Philosophy of Software Design" by John Ousterhout. It's one of my most favourite programming books. I believe he has some lectures and talks on youtube about the principles as well.
https://www.amazon.com/dp/B07N1XLQ7D/ref=dp-kindle-redirect?_encoding=UTF8&btkr=1