Introduction¶
In these documentation pages we present the software_patterns Python package and the motivation for publishing it. The package currently host only a handful of software patterns, but they come with a test suite and full CI for local and remote integrations.
Why would this project be useful to you?¶
To Learn:¶
You may study the source code to find out more about software design patterns.
You may wanna learn how to make an open source code contribution and find this codebase a good place to start.
To use the python package and its contained software patterns in your project:¶
To promote good software quality in your python codebase.
To promote the DRY prinicipal in your client code.
To promote the principal of Single Responsibility in your client code.
To promote having Simple Units of Code in your project.
Why use this Python Patterns library?¶
It is user-friendly with a clean API designed to reduce boilerplate code needed to use a pattern in your client code.
It comes with a 100% code coverage test suite (automated tests).
It is statically type checked with mypy.
It features (these) documentation pages with examples on how to use the package, doctests (see [here]) and
complete API reference (automated) documentation.
It is developer-friendly featuring a public CI-workflow with jobs automating running tests,
deploying the python package to a staging server, hosting the test coverage results and visualizing the
code dependencies and uml diagrams.