Metadata-Version: 2.1
Name: software-patterns
Version: 0.9.0
Summary: Software Design Patterns with types in Python.
Home-page: https://github.com/boromir674/software_patterns
Author: Konstantinos Lampridis
Author-email: k.lampridis@hotmail.com
License: AGPLv3
Download-URL: https://github.com/boromir674/software_patterns/archive/v0.8.0.tar.gz
Project-URL: Bug Tracker, https://github.com/boromir674/software_patterns/issues
Project-URL: Source Code, https://github.com/boromir674/software_patterns
Keywords: neural style transfer,deep learning,cli
Platform: All
Classifier: Development Status :: 5 - Production/Stable
Classifier: Intended Audience :: Developers
Classifier: Intended Audience :: End Users/Desktop
Classifier: Intended Audience :: Science/Research
Classifier: License :: OSI Approved :: GNU Affero General Public License v3
Classifier: Natural Language :: English
Classifier: Operating System :: Unix
Classifier: Programming Language :: Python
Classifier: Programming Language :: Python :: 3 :: Only
Classifier: Programming Language :: Python :: 3.6
Classifier: Programming Language :: Python :: 3.7
Classifier: Programming Language :: Python :: 3.8
Classifier: Programming Language :: Python :: 3.9
Classifier: Topic :: Documentation :: Sphinx
Classifier: Topic :: Scientific/Engineering
Classifier: Topic :: Software Development
Classifier: Topic :: Software Development :: Libraries :: Python Modules
Classifier: Topic :: System :: Software Distribution
Classifier: Topic :: Utilities
Classifier: Typing :: Typed
Description-Content-Type: text/x-rst
License-File: LICENSE

Software Patterns
=================

A Python package with common Software Design Patterns.


.. start-badges

.. list-table::
    :stub-columns: 1

    * - tests
      - | |circleci| |codecov|

    * - package
      - | |pypi| |wheel| |py_versions| |commits_since|

    * - code quality
      - |better_code_hub| |codacy| |code_climate| |maintainability| |scrutinizer|



Overview
========

This package exposes a set of Python objects (ie Classes) that allow convient usage of common
Software Design Patterns.


Key features of the package:

* Notification (aka Broadcast/Listener pattern)
* Object Pool (aka Memoize)
* Classes Registry (aka Abstract Factory)
* Proxy


Installation
------------

Install from the Pypi server:

::

    pip install software_patterns



.. |circleci|  image:: https://img.shields.io/circleci/build/github/boromir674/software-patterns/master?logo=circleci
    :alt: CircleCI
    :target: https://circleci.com/gh/boromir674/software-patterns/tree/master


.. |codecov| image:: https://codecov.io/gh/boromir674/software-patterns/branch/master/graph/badge.svg?token=3POTVNU0L4
    :alt: Codecov
    :target: https://app.codecov.io/gh/boromir674/software-patterns/branch/master
    


.. |pypi| image:: https://img.shields.io/pypi/v/software-patterns?color=blue&label=pypi&logo=pypi&logoColor=%23849ed9
    :alt: PyPI
    :target: https://pypi.org/project/software-patterns/

.. |wheel| image:: https://img.shields.io/pypi/wheel/software-patterns?logo=python&logoColor=%23849ed9
    :alt: PyPI - Wheel
    :target: https://pypi.org/project/software-patterns

.. |py_versions| image:: https://img.shields.io/pypi/pyversions/software-patterns?color=blue&logo=python&logoColor=%23849ed9
    :alt: PyPI - Python Version
    :target: https://pypi.org/project/software-patterns

.. |commits_since| image:: https://img.shields.io/github/commits-since/boromir674/software-patterns/v0.9.0/master?color=blue&logo=Github
    :alt: GitHub commits since tagged version (branch)
    :target: https://github.com/boromir674/software-patterns/compare/v0.9.0..master



.. |better_code_hub| image:: https://bettercodehub.com/edge/badge/boromir674/software-patterns?branch=master
    :alt: Better Code Hub
    :target: https://bettercodehub.com/

.. |codacy| image:: https://app.codacy.com/project/badge/Grade/07b27ac547a94708aefc5e845d2b6d01
    :alt: Codacy
    :target: https://www.codacy.com/gh/boromir674/software-patterns/dashboard?utm_source=github.com&amp;utm_medium=referral&amp;utm_content=boromir674/software-patterns&amp;utm_campaign=Badge_Grade

.. |code_climate| image:: https://api.codeclimate.com/v1/badges/2ea98633f88b75e87d1a/maintainability
   :alt: Maintainability
   :target: https://codeclimate.com/github/boromir674/software-patterns/maintainability

.. |maintainability| image:: https://img.shields.io/codeclimate/tech-debt/boromir674/software-patterns?logo=CodeClimate
    :alt: Technical Debt
    :target: https://codeclimate.com/github/boromir674/software-patterns/maintainability

.. |scrutinizer| image:: https://img.shields.io/scrutinizer/quality/g/boromir674/software-patterns/master?logo=scrutinizer-ci
    :alt: Scrutinizer code quality
    :target: https://scrutinizer-ci.com/g/boromir674/software-patterns/?branch=master



.. |version| image:: https://img.shields.io/pypi/v/topic-modeling-toolkit.svg
    :alt: PyPI Package latest release
    :target: https://pypi.org/project/topic-modeling-toolkit

.. |python_versions| image:: https://img.shields.io/pypi/pyversions/software-patterns.svg
    :alt: Supported versions
    :target: https://pypi.org/project/software-patterns/


