Skip to content

Commit 0b2567e

Browse files
feat(ai): polishing the content
1 parent e346b9b commit 0b2567e

File tree

1 file changed

+6
-5
lines changed

1 file changed

+6
-5
lines changed

docs/index.md

Lines changed: 6 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -11,17 +11,18 @@ Along with these principles, they also introduced certain practices that made se
1111

1212
However, over time, some of these practices have been taken to extremes. You'll often hear recommendations like:
1313

14-
* "Your business logic should depend only on the JDK — no external libraries allowed."
15-
* "Create your own logging abstraction."
16-
* "Avoid framework annotations and write XML instead to keep your core 'pure'"
14+
* Your business logic should depend only on the JDK — no external libraries allowed
15+
* Create your own logging abstraction
16+
* Avoid framework annotations and write XML instead to keep your core 'pure'
1717

1818
While these ideas may sound elegant in theory, in practice they often add unnecessary complexity.
1919
Modern frameworks and libraries already solve many of these recurring problems. In the real world, companies rarely switch frameworks, databases, or message brokers overnight. Building multiple abstraction layers just to guard against that possibility usually results in more boilerplate and less productivity.
2020

2121
I've seen teams implementing Clean, Hexagonal, or Onion architectures spend a surprising amount of time on:
2222

23-
* Copying data objects across multiple layers,
24-
* Creating endless interfaces with only one implementation,
23+
* Endless copying of data from one layer to another
24+
* Creating unnecessary interfaces
25+
* Creating endless interfaces with only one implementation
2526
* Re-implementing features (like cross-cutting concerns) that frameworks already handle elegantly.
2627

2728
With the tools we have today — Mockito for mocking concrete classes, Testcontainers for testing with real dependencies, and frameworks like Spring Boot or Quarkus that already abstract away much of the complexity — many of these additional layers are simply unnecessary.

0 commit comments

Comments
 (0)