Или "мы не продумали архитектуру". Да не можете вы продумать архитектуру навека, у вас требования к продукту меняются каждые полгода. Все что можно и нужно попытаться "продумать" - это то, как быстро менять реализацию. А быстро - это только с тестами получится, но на них часто забивают (времени много ведь занимают)...
Lean Architecture It is high time to ‘kill’ Clean Architecture, the Hex, the Onion and the VSA and come up with something better
3 important points in creating a maintainable solution:
Step 1: Analysis of the problem and the stakeholders.
Step 2: Analysis of the current use case.
Step 3: Modelling
Step 4: Implementing the different pieces and their tests
Step 5: Dependency management
At all times, we keep our goal in mind. Because the process itself does not account for Lean Architecture. With every decision we try to evaluate if it brings us closer to our goal of maintainability or not. We fix the design problems we have now. We don’t try to fix possible changes that have yet to come. This is the hard part, deciding when to add more design. This becomes easier when you truly understand the design problems that certain techniques and principles solve.
И небольшое продолжение в виде скрина в комментах.
#tech_read #holywar