175 lines
9.1 KiB
Markdown
175 lines
9.1 KiB
Markdown
# awesome-patterns
|
|
Lists of software related patterns (work in progress)
|
|
|
|
<div align="center">
|
|
<img width="500" src="media/logo.svg" alt="Awesome">
|
|
<br>
|
|
<br>
|
|
<p>
|
|
<a href="https://en.wikipedia.org/wiki/Pattern_language">Pattern language - An attempt to express the deeper wisdom of what brings aliveness within a particular field</a>
|
|
</p>
|
|
<p>
|
|
<a href="https://en.wikipedia.org/wiki/Pattern_language">Aliveness - the quality that has no name</a>
|
|
</p>
|
|
<p>
|
|
<sup>Special thanks to:</sup>
|
|
<br>
|
|
<a href="https://github.com/wtgtybhertgeghgtwtg">
|
|
<img src="https://cdn.rawgit.com/sindresorhus/stuff/daa49fabede538ea8a533d75e7e55f4c81e3a972/sponsors/wtgtybhertgeghgtwtg-logo-light.svg" width="260" alt="wtgtybhertgeghgtwtg">
|
|
</a>
|
|
</p>
|
|
<br>
|
|
<br>
|
|
</div>
|
|
|
|
<!--
|
|
<p align="center">
|
|
<b>✨ Prelaunching the <a href="https://awesomeweekly.co">Awesome Weekly</a> newsletter! ✨</b>
|
|
<b> Vote it up on <a href="https://www.producthunt.com/posts/awesome-weekly">Product Hunt</a></b>
|
|
</p>
|
|
|
|
<br>
|
|
-->
|
|
|
|
<p align="center">
|
|
<a href="awesome.md">What is an awesome list?</a>
|
|
<a href="contributing.md">Contribution guide</a>
|
|
<a href="create-list.md">Creating a list</a>
|
|
</p>
|
|
|
|
<br>
|
|
|
|
|
|
<br>
|
|
|
|
|
|
## Contents
|
|
|
|
- [GoF](#GoF design patterns (Language/Framework specifc) )
|
|
- [General Architecture](#General Architecture)
|
|
- [Cloud Architecture](#Cloud Architecture)
|
|
- [Micro services & Decentralized Systems](#Micro services & Decentralized Systems)
|
|
- [Big Data](#Big Data)
|
|
- [Databases](#Databases)
|
|
- [Docker and DevOps](#Docker and DevOps)
|
|
- [Mobile](#Mobile)
|
|
- [Front-End Development](#front-end-development)
|
|
- [Security](#security)
|
|
- [Books](#Books)
|
|
- [Miscellaneous](#miscellaneous)
|
|
|
|
## GoF design patterns (Language/Framework specifc)
|
|
- [Angular]
|
|
- [angularjs-in-patterns](https://github.com/mgechev/angularjs-in-patterns)
|
|
- [Cat]
|
|
- [hoomans](https://github.com/mlnv/design-patterns-for-hoomans)
|
|
- [C#]
|
|
- [design-patterns](https://github.com/abishekaditya/DesignPatterns)
|
|
- [C++]
|
|
- [design-patterns](http://www.vincehuston.org/dp/)
|
|
- [Go]
|
|
- [design-patterns](http://tmrts.com/go-patterns/)
|
|
- [Java]
|
|
- [design-patterns](https://github.com/iluwatar/java-design-patterns)
|
|
- [from-gof-to-lambda](https://github.com/mariofusco/from-gof-to-lambda)
|
|
- [JavaScript]
|
|
- [es6](https://github.com/ziyasal/design-patterns-and-idioms-in-es6)
|
|
- [humans](https://github.com/sohamkamani/javascript-design-patterns-for-humans)
|
|
- [js_designpatterns](https://github.com/nnupoor/js_designpatterns)
|
|
- [addyosmani](https://addyosmani.com/resources/essentialjsdesignpatterns/book/)
|
|
- [Kotlin]
|
|
- [design-patterns](https://github.com/dbacinski/Design-Patterns-In-Kotlin)
|
|
- [gof-in-kotlin](https://github.com/lmller/gof-in-kotlin)
|
|
- [PHP]
|
|
- [design-patterns](https://github.com/domnikl/DesignPatternsPHP)
|
|
- [Python]
|
|
- [design-patterns](https://github.com/faif/python-patterns)
|
|
- [PyPattyrn](https://github.com/tylerlaberge/PyPattyrn)
|
|
- [React]
|
|
- [design-patterns](http://krasimirtsonev.com/blog/article/react-js-in-design-patterns)
|
|
- [react-bits](https://github.com/vasanthk/react-bits)
|
|
- [Ruby]
|
|
- [design-patterns](https://github.com/davidgf/design-patterns-in-ruby)
|
|
- [Scala]
|
|
- [scala-design-patterns](https://github.com/josephguan/scala-design-patterns)
|
|
- [Swift]
|
|
- [design-patterns](https://github.com/ochococo/Design-Patterns-In-Swift)
|
|
- [TypeScript]
|
|
- [typescript](https://github.com/torokmark/design_patterns_in_typescript)
|
|
|
|
## General Architecture
|
|
- [10 common architectural patterns](https://towardsdatascience.com/10-common-software-architectural-patterns-in-a-nutshell-a0b47a1e9013) - 10 Common Software Architectural Patterns in a nutshell.
|
|
- [reactive design patterns](https://www.reactivedesignpatterns.com/categories.html) - This website accompanies the book Reactive Design Patterns by Roland Kuhn
|
|
- [Scalable System Design Patterns](https://dzone.com/articles/scalable-system-design) - scalable system design techniques
|
|
- [martin fowler](https://martinfowler.com/eaaCatalog/) - Catalog of Patterns of Enterprise Application Architecture
|
|
- [system-design-primer](https://github.com/donnemartin/system-design-primer) - Design large-scale systems.
|
|
|
|
## Cloud Architecture
|
|
- [AWS cloud design patterns](http://en.clouddesignpattern.org/index.php/Main_Page) - The AWS Cloud Design Patterns (CDP)
|
|
- [Azure cloud design patterns](https://docs.microsoft.com/en-us/azure/architecture/patterns/) - Building reliable, scalable, secure applications in the cloud..
|
|
- [cloud patterns](http://cloudpatterns.org/) - a community site dedicated to documenting a master patterns catalog
|
|
- [cloud computing patterns](http://www.cloudcomputingpatterns.org/) - Cloud Computing Patterns
|
|
- [serverless](https://thenewstack.io/serverless-architecture-five-design-patterns/) - Serverless Architecture: Five Design Patterns
|
|
- [serverless](https://freecontent.manning.com/patterns-for-solving-problems-in-serverless-architectures/) - Patterns for Solving Problems in Serverless Architectures
|
|
|
|
## Micro services & Decentralized Systems
|
|
- [microservice patterns](http://microservicepatterns.org/) - a community site dedicated to documenting a master patterns catalog
|
|
- [Microservices](http://microservices.io/patterns) - A pattern language for microservices.
|
|
- [microservices-anti patterns](https://www.oreilly.com/ideas/microservices-antipatterns-and-pitfalls) - Microservices antipatterns and pitfalls.
|
|
- [12factor](https://12factor.net/) - The twelve-factor methodology.
|
|
- [microservices-sync-vs-async](https://dzone.com/articles/patterns-for-microservices-sync-vs-async) - Microservices patterns, synchronous and asynchronous.
|
|
- [message-queues](http://tech.forter.com/comparing-message-queue-architectures-on-aws/) - comparing-message-queue-architectures
|
|
- [Enterprise Integration Patterns](http://www.enterpriseintegrationpatterns.com/patterns/messaging/toc.html) - Patterns and Best Practices for Enterprise Integration
|
|
|
|
## Big Data
|
|
- [bigdatapatterns](http://bigdatapatterns.org/) - a community site dedicated to documenting a master patterns catalog
|
|
- [mapreduce-patterns](https://highlyscalable.wordpress.com/2012/02/01/mapreduce-patterns/) - MAPREDUCE PATTERNS, ALGORITHMS, AND USE CASES
|
|
- [streaming-realtime-analytics](https://iwringer.wordpress.com/2015/08/03/patterns-for-streaming-realtime-analytics/) - 13 Stream Processing Patterns for building Streaming and Realtime Applications.
|
|
|
|
## Databases
|
|
- [nosql resilience patterns](https://www.ebayinc.com/stories/blogs/tech/practical-nosql-resilience-design-pattern-for-the-enterprise/) - Practical NoSQL resilience design pattern for the enterprise
|
|
- [nosql-patterns](https://dzone.com/articles/introduction-nosql-patterns) - Pragmatic Programming Techniques
|
|
- [database tenancy patterns](https://docs.microsoft.com/en-us/azure/sql-database/saas-tenancy-app-design-patterns) - Multi-tenant SaaS database tenancy patterns
|
|
|
|
## Docker and DevOps
|
|
- [containerspatterns](https://l0rd.github.io/containerspatterns) - There are a Thousand Ways to Use Containers.
|
|
- [Kubernetes](https://github.com/gravitational/workshop/blob/master/k8sprod.md) - Kubernetes Production Patterns.
|
|
- [container-design-patterns](https://vitalflux.com/container-design-patterns-kubernetes-pods-design/) - Container Design Patterns for Kubernetes Pods Design.
|
|
- [pattern-and-anti-pattern-cicd](https://www.gronau-it-cloud-computing.de/pattern-and-anti-pattern-cicd/) - pattern-and-anti-pattern-cicd.
|
|
|
|
## Mobile
|
|
- [ios]
|
|
- [ios-architecture-patterns](https://medium.com/ios-os-x-development/ios-architecture-patterns-ecba4c38de52)
|
|
- [Android]
|
|
- [androidpatterns](https://unitid.nl/androidpatterns/) - interaction patterns that can help you design Android apps.
|
|
- [design-patterns-for-android](https://www.raywenderlich.com/109843/common-design-patterns-for-android) - Common Design Patterns for Android.
|
|
|
|
## Front-End Development
|
|
- [User Interface](http://ui-patterns.com/) - User Interface Design patterns.
|
|
- [smacss](https://smacss.com/) - Scalable and Modular Architecture for CSS.
|
|
- [css-protips](https://github.com/AllThingsSmitty/css-protips) - A collection of tips to help take your CSS skills pro.
|
|
- [mv*](https://proandroiddev.com/mvc-mvp-mvvm-clean-viper-redux-mvi-prnsaaspfruicc-building-abstractions-for-the-sake-of-building-18459ab89386) - MVC/MVP/MVVM/CLEAN/VIPER/REDUX/MVI/PRNSAASPFRUICC.
|
|
- [martinfowler](https://martinfowler.com/eaaDev/uiArchs.html) - GUI Architectures.
|
|
|
|
## Security
|
|
- [opensecurityarchitecture](http://www.opensecurityarchitecture.org/cms/library/patternlandscape) - Security Architecture Patterns
|
|
|
|
## Books
|
|
- [MongoDB Applied Design Patterns](http://shop.oreilly.com/product/0636920027041.do)
|
|
- [Design-Patterns-Elements-Reusable-Object-Oriented](https://www.amazon.com/Design-Patterns-Elements-Reusable-Object-Oriented/dp/0201633612/ref=sr_1_4?s=books&ie=UTF8&qid=1528136036&sr=1-4&keywords=design+patterns)
|
|
- [Head-First-Design-Patterns-Brain-Friendly](
|
|
https://www.amazon.com/Head-First-Design-Patterns-Brain-Friendly/dp/0596007124/ref=pd_sim_14_4
|
|
)
|
|
- [Effective-Java-3rd-Joshua-Bloch](https://www.amazon.com/Effective-Java-3rd-Joshua-Bloch/dp/0134685997/ref=pd_sim_14_7
|
|
)
|
|
|
|
## Miscellaneous
|
|
|
|
|
|
|
|
## License
|
|
|
|
[](https://creativecommons.org/publicdomain/zero/1.0/)
|
|
|
|
|