DovAmir /awesome-design-patterns

A curated list of software and architecture related design patterns.

★ 49,686⑂ 3,312👁 717⑃ 59● 18▤ 0◈ 0
Created 2018-06-04
49,686
stars
+14
3,312
forks
717
watchers
59
prs
18
issues
0
releases
0
discussions

README

Awesome Software and Architectural Design Patterns 


   



 A curated list of software and architecture related design patterns.

Software design pattern - A general, reusable solution to a commonly occurring problem within a given context in software design. It is a description or template for how to solve a problem that can be used in many different situations. 





 Contents
- Programming language design patterns
- General Architecture
- Cloud Architecture
- Serverless Architecture
- Micro services & Distributed Systems
- Internet of things
- Big Data
- Machine Learning
- Databases and storage
- DevOps & containers
- Mobile
- Front End Development
- Security



 Programming Language Design Patterns

- AngularJS
	- design patterns
- C
	- design-patterns 
	- design-patterns-for-human - ultra simplified explanation to design patterns.
	- Design Patterns Library
- C++
	- design-patterns
- Closure
	- design-patterns
- Go
	- design-patterns
- Java
	- sourcemaking - patterns and anti patterns.
	- oodesign  - patterns catalog with UML diagrams.
	- design-patterns
	- effective-java patterns - patterns from the Effective Java book.
	- Design patterns implemented in Java
	- Effective-Java-3rd-Joshua-Bloch
- JavaScript
	- es6 design patterns
	- humans - ultra simplified explanation to design patterns.
	- design-patterns
	- design patterns by addy osmani
- Kotlin
	- design-patterns 
- Node
	- Real world design patterns with Node.js
	- Node.js Design Patterns
- Object Oriented
	- Design-Patterns-Elements-Reusable-Object-Oriented
	- Head-First-Design-Patterns-Brain-Friendly
	- Object Design Style Guide
- PHP
	- humans - ultra simplified explanation to design patterns.
	- design-patterns 
- Python
	- design-patterns 
	- PyPattyrn - A simple library for implementing common design patterns.
	- Python Design Patterns
	- Design Patterns in Python
	- Django Design Patterns and Best Practices
- React
	- design-patterns
	- react-bits
	- reactpatterns.com
- Ruby
	- design-patterns 
- Rust
	- design-patterns 

- Scala
	- design-patterns
- Swift
	- design-patterns
- TypeScript
	- design-patterns
- UML
	- design-patterns quick reference
	- design-patterns cheat-sheet
- Vue.js
	- Vue Patterns - Useful Vue patterns, techniques, tips and tricks and curated helpful links.
- Elixir
	- design-patterns
	- the-pipeline - The Pipeline is defined by a collection of functions that take a data structure as an argument and return the same type of data structure
	
	
 General Architecture
- 10 common architectural patterns - 10 Common software architectural patterns in a nutshell.
- reactive design patterns - This website accompanies the book Reactive Design Patterns by Roland Kuhn.
- scalable System Design Patterns - Scalable system design techniques.
- martin fowler - Catalog of Patterns of Enterprise Application Architecture.
- system-design-primer - Design large-scale systems.
- architecting-for-reliability - Architecting for Reliability Part 1/3.
- InnerSource Patterns - Patte

Top issues

Snapshot: 2026-11-10T09:35:25Z · Data license Apache-2.0 · JSON