Update design principles

update/backend-2023
Kamran Ahmed 2 years ago
parent dac327faef
commit 3779f6b34a
  1. 4
      content/roadmaps/101-backend/content-paths.json
  2. 15
      content/roadmaps/101-backend/content/114-design-and-development-principles/103-solid.md
  3. 7
      content/roadmaps/101-backend/content/114-design-and-development-principles/104-kiss.md
  4. 7
      content/roadmaps/101-backend/content/114-design-and-development-principles/105-yagni.md
  5. 7
      content/roadmaps/101-backend/content/114-design-and-development-principles/106-dry.md
  6. 1897
      public/project/backend.json

@ -98,10 +98,6 @@
"design-and-development-principles:gof-design-patterns": "/roadmaps/101-backend/content/114-design-and-development-principles/100-gof-design-patterns.md",
"design-and-development-principles:domain-driven-design": "/roadmaps/101-backend/content/114-design-and-development-principles/101-domain-driven-design.md",
"design-and-development-principles:test-driven-development": "/roadmaps/101-backend/content/114-design-and-development-principles/102-test-driven-development.md",
"design-and-development-principles:solid": "/roadmaps/101-backend/content/114-design-and-development-principles/103-solid.md",
"design-and-development-principles:kiss": "/roadmaps/101-backend/content/114-design-and-development-principles/104-kiss.md",
"design-and-development-principles:yagni": "/roadmaps/101-backend/content/114-design-and-development-principles/105-yagni.md",
"design-and-development-principles:dry": "/roadmaps/101-backend/content/114-design-and-development-principles/106-dry.md",
"architectural-patterns": "/roadmaps/101-backend/content/115-architectural-patterns/readme.md",
"architectural-patterns:monolithic-apps": "/roadmaps/101-backend/content/115-architectural-patterns/100-monolithic-apps.md",
"architectural-patterns:microservices": "/roadmaps/101-backend/content/115-architectural-patterns/101-microservices.md",

@ -1,15 +0,0 @@
# SOLID
SOLID is a set of principles applied to object-oriented design (OOD) to create maintainable, understandable, and flexible code, while avoiding code smells and defects. The principles are:
- Single Responsibility
- Open/Closed
- Liskov Substitution
- Interface Segregation
- Dependency Inversion
<ResourceGroupTitle>Free Content</ResourceGroupTitle>
<BadgeLink colorScheme='blue' badgeText='Official Docs' href='https://web.archive.org/web/20150906155800/http://www.objectmentor.com/resources/articles/Principles_and_Patterns.pdf'>Design Principles and
Design Patterns</BadgeLink>
<BadgeLink colorScheme='yellow' badgeText='Read' href='https://www.baeldung.com/solid-principles'>SOLID Principles</BadgeLink>
<BadgeLink colorScheme='yellow' badgeText='Read' href='https://www.digitalocean.com/community/conceptual_articles/s-o-l-i-d-the-first-five-principles-of-object-oriented-design'>SOLID: The First 5 Principles of Object Oriented Design</BadgeLink>

@ -1,7 +0,0 @@
# KISS
Keep It Simple, Stupid (KISS) is a software design principle that states avoiding needless complexity is the best way to build software that is easier to maintain, understand, and contains fewer defects. A simple product that does a single thing well is better than a complex product that does many things poorly.
<ResourceGroupTitle>Free Content</ResourceGroupTitle>
<BadgeLink colorScheme='yellow' badgeText='Read' href='https://deviq.com/principles/keep-it-simple'>Keep It Simple</BadgeLink>
<BadgeLink colorScheme='yellow' badgeText='Read' href='https://www.interaction-design.org/literature/topics/keep-it-simple-stupid'>Keep It Simple, Stupid (Kiss)</BadgeLink>

@ -1,7 +0,0 @@
# YAGNI
You Aren't Going to Need It (YAGNI) is a software design principle from the Extreme Programming (XP) framework that states when developing software, functionality or features should not be added until they are necessary. Within agile software development in general, requirements are always open to change; any extra functionality may end up being wasted time and resources.
<ResourceGroupTitle>Free Content</ResourceGroupTitle>
<BadgeLink colorScheme='yellow' badgeText='Read' href='https://martinfowler.com/bliki/Yagni.html'>Yagni</BadgeLink>
<BadgeLink colorScheme='yellow' badgeText='Read' href='https://deviq.com/principles/yagni'>YAGNI</BadgeLink>

@ -1,7 +0,0 @@
# DRY
Don't Repeat Yourself (DRY) is a software design principle which encourages developers to not repeat software patterns or code. DRY encourages code reusability, often in the form of methods, functions, or subroutines. When DRY is implemented successfully, developers are able to make one change to update many related elements while avoiding making changes to unrelated elements.
<ResourceGroupTitle>Free Content</ResourceGroupTitle>
<BadgeLink colorScheme='yellow' badgeText='Read' href='https://dzone.com/articles/software-design-principles-dry-and-kiss'>Software Design Principles DRY and KISS</BadgeLink>
<BadgeLink colorScheme='yellow' badgeText='Read' href='https://journals.plos.org/plosbiology/article?id=10.1371/journal.pbio.1001745#s5'>Best Practices for Scientific Computing</BadgeLink>

File diff suppressed because it is too large Load Diff
Loading…
Cancel
Save