4 ms·
> The "seriously, who cares?" at the end just discredits the entire article for me. It doesn't for me. I can't keep track of all the times I've been frustrated
by cle 6y ago
> The "seriously, who cares?" at the end just discredits the entire article for me.
It doesn't for me. I can't keep track of all the times I've been frustrated by a "final" class or a private variable somewhere that, were it public, I could have trivially solved my urgent business problem in time, with full awareness of the tech debt being incurred.
But I can't remember any time in the tens of thousands of lines of Python that I've written, where I had regretted consuming a variable somewhere.
So at this point, based on my experience, it all just sounds like paranoia to me that doesn't actually add value in practice. I think many of these "best practices" in Java, especially those coming from "Effective Java", are over-paranoid for most developers, and just create more problems than they solve. Being paranoid about API contracts makes sense if you are writing a widely-consumed library like those that Josh Bloch worked on, where the cost of changing consumers is prohibitively high. But when you are working on a class that has a handful of consumers, it really doesn't matter--just go update the consumers if you really need to (which you probably don't).