Update src/roadmaps/software-design-architecture/content/100-clean-code-principles/114-avoid-hasty-abstractions.md

content/software-design-and-architecture
Kamran Ahmed 2 years ago committed by GitHub
parent 7217359af1
commit ca714f39ab
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
  1. 15
      src/roadmaps/software-design-architecture/content/100-clean-code-principles/114-avoid-hasty-abstractions.md

@ -4,15 +4,14 @@ Creating abstractions is an important part of software development, but creating
Here are some ways to avoid hasty abstractions in system architecture:
1. Understand the problem that needs to be solved before creating an abstraction.
2. Start with a simple solution and only create an abstraction when it becomes clear that the solution is becoming too complex.
3. Use code refactoring techniques to simplify the code before creating an abstraction.
4. Avoid creating abstractions for the sake of creating abstractions.
5. Use established design patterns and practices when creating abstractions, but do not force them into the code.
6. Use automated testing to ensure that the abstraction does not introduce new bugs or break existing functionality.
7. Create abstraction in a way that it's easy to test, debug, and reason about.
- Understand the problem that needs to be solved before creating an abstraction.
- Start with a simple solution and only create an abstraction when it becomes clear that the solution is becoming too complex.
- Use code refactoring techniques to simplify the code before creating an abstraction.
- Avoid creating abstractions for the sake of creating abstractions.
- Use established design patterns and practices when creating abstractions, but do not force them into the code.
- Use automated testing to ensure that the abstraction does not introduce new bugs or break existing functionality.
- Create abstraction in a way that it's easy to test, debug, and reason about.
By following these best practices, the system architecture will be more maintainable, testable, and less error-prone, and it will be easier to read and understand the code.
Learn more from the following links:

Loading…
Cancel
Save