Skip to main content

A observer pattern implementation in Python based on jQuery.

Project description

https://img.shields.io/badge/license-MIT-blue.svg http://img.shields.io/pypi/v/pattern-observer.svg https://img.shields.io/pypi/status/pattern-observer.svg https://img.shields.io/travis/fernandojunior/observer.svg https://img.shields.io/codecov/c/github/fernandojunior/observer.svg

The observer pattern is a software design pattern in which an object, called the subject, maintains a list of its dependents, called observers, and notifies them automatically of any state changes, usually by calling one of their methods [1].

The observer.py implementation has a topic-based system, a message filtering type of the publish–subscribe pattern (an observer pattern variation) [2]. Therefore, a subject can be subdivided into topics and observers can express interest in one (or more) topic and only receive notifications (with any message or not) from that.

The implementation is also based on the jquery publish–subscribe model [3] [4]. So, for convenience, observers will be called handlers and topics will be called events. The observer module has only two members: Event and Observable. An Observable instance allows you connect different handlers to its events. A handler can be any function, method or callable object.

A simpler implementation of the pattern can be found at old.py.

References

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

pattern-observer-1.0.0.tar.gz (6.1 kB view details)

Uploaded Source

Built Distribution

pattern_observer-1.0.0-py3-none-any.whl (8.3 kB view details)

Uploaded Python 3

File details

Details for the file pattern-observer-1.0.0.tar.gz.

File metadata

File hashes

Hashes for pattern-observer-1.0.0.tar.gz
Algorithm Hash digest
SHA256 1aed03adacf1068c89d94187ff194cc0a8856000fcc032dca1e7a6a5aa9988cf
MD5 67859e7217626759ab519b1e8c6a7709
BLAKE2b-256 dc569425a90dd71179a279ce2b027d851235ebf526a34bcdf53125df7480a601

See more details on using hashes here.

File details

Details for the file pattern_observer-1.0.0-py3-none-any.whl.

File metadata

File hashes

Hashes for pattern_observer-1.0.0-py3-none-any.whl
Algorithm Hash digest
SHA256 07eeeaf93b851ccd4c2ca2cc6565f28e8e81c7c2c3502524613dd175f810cade
MD5 274fd19367ef5b80f9c0949da5d212a2
BLAKE2b-256 0617abe74c22416f9b0801e374f106e55cadde3778866ac019874071847ad556

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page