|
|
|
|
|
by pydry
1915 days ago
|
|
>With any paradigm, there is often ambiguity with certain elements, because those elements should be dynamic. It's because, unless you're careful, human language is insufficiently precise by its nature for many domains. This is why mathematicians communicate with mathematical notation, for instance. It's why lawyers use special lawyer only terms (or why interpretation of the law is an explicitly separated function). With SOLID the lack of precision renders the whole exercise rather pointless. You're supposed to be able to use these principles as something you can agree upon with other developers so that you have a shared understanding of what constitutes "good" code. However, it doesn't happen. Instead we argue over what constitutes a single responsibility. SOLID isn't the only example of this. "Agile" is actually far worse. |
|
If your assumption is that design guidelines can have mathematical precision, then you're going to be perpetually disappointed.
> Instead we argue over what constitutes a single responsibility.
I'm sorry that you can't reach consensus. but IMHO, the false idea that there is a single, mathematically correct answer (and if people differ, therefor someone must be be Wrong, capital W) is often part of the problem, of what stops an agreement on how to move forward pragmatically being reached.