Reputation: 2678
Recently I was reading about monkey patching technique and wondered if it can be said.
Upvotes: 2
Views: 1922
Reputation: 385970
I suppose on some grammatical level they may be equivalent. However, decorators are applied at the time a function or class is defined, and monkeypatching modifies an object at runtime, making them very different both in spirit and in actual use.
Upvotes: 2
Reputation: 56467
Decorator = a function that takes a function as an argument and returns a function
Monkey patching = replacing a value of a field on an object with a different value (not necessarly functions)
In case of functions monkey patching can be performed via a decorator. So I guess decorator might be thought as an example of monkey patching. However commonly monkey patching refers to altering behaviour of a 3rd party library. In that case decorators are less useful.
Upvotes: 8