[Python-ideas] Composition over Inheritance
Nick Coghlan
ncoghlan at gmail.com
Mon Oct 30 00:01:48 EDT 2017
More information about the Python-ideas mailing list
Mon Oct 30 00:01:48 EDT 2017
- Previous message (by thread): [Python-ideas] Composition over Inheritance
- Next message (by thread): [Python-ideas] Composition over Inheritance
- Messages sorted by: [ date ] [ thread ] [ subject ] [ author ]
On 29 October 2017 at 21:44, Soni L. <fakedme+py at gmail.com> wrote: > ORMs use this kind of descriptor based composition management extensively > in order to reliably model database foreign key relationships in a way > that's mostly transparent to users of the ORM classes. > > > And this is how you miss the whole point of being able to dynamically > add/remove arbitrary components on objects you didn't create, at runtime. > You can already do that by adding new properties to classes post-definition, or by changing __class__ to refer to a different type, or by wrapping objects in transparent proxy types the way wrapt does. We *allow* that kind of thing, because it's sometimes beneficial in order to get two libraries to play nicely together at runtime without having to patch one or the other. However, it's a last resort option that you use when you've exhausted the other more maintainable alternatives, not something we actually want to encourage. Cheers, Nick. -- Nick Coghlan | ncoghlan at gmail.com | Brisbane, Australia -------------- next part -------------- An HTML attachment was scrubbed... URL: <http://mail.python.org/pipermail/python-ideas/attachments/20171030/4bc34285/attachment.html>
- Previous message (by thread): [Python-ideas] Composition over Inheritance
- Next message (by thread): [Python-ideas] Composition over Inheritance
- Messages sorted by: [ date ] [ thread ] [ subject ] [ author ]
More information about the Python-ideas mailing list