Am 07.09.2007 um 21:07 schrieb Christopher Lenz: > Am 07.09.2007 um 20:40 schrieb Yuri Baburov: >>> Or if I'm using Satchmo and I've written an excellent CRM system >>> in Django, >>> I want Satchmo to use the shipping and contact information that >>> I've defined >>> in my CRM system, and if they both implemented IPerson, >>> IPostalAddress, and >>> IPhoneNumber, I could drop in those replacements. Without that, >>> I'm bound to >>> either duplicate my data across the two applications, hack Satchmo >>> to use my >>> CRM, or constrict my CRM system to require Satchmo. >> I can see abstract idea. But don't see right implementation idea. >> 1) You can do this all without all javaish interfaces. >> Python metamodel is open for changes when program is running. >> 2) Interfaces are not python way of doing stuff. google: duck typing. >> Please take my arguments into account and reconsider your idea with >> them. > > Except that interfaces in Trac's component system (and AFAIK also in > Zope or PyProtocols) aren't about typing *at all*; they're about > protocols for using, extending, or replacing functionality > (components). It might help to actually read up on stuff before > commenting.
After writing this I realized that the example described by jag here was pretty misleading, in particular with respect to the interface names chosen (sorry jag ;), which definitely don't reflect correctly on how interfaces are used in "the Trac model". So I apologize if my reaction here was too harsh. But as the "we're pythonic, we use duck typing and documentation" meme has come up a couple times after that on this thread, let me repeat: that frankly has *nothing* to do with the component architecture as used in Trac that jag referred to originally. Cheers, Chris -- Christopher Lenz cmlenz at gmx.de http://www.cmlenz.net/ --~--~---------~--~----~------------~-------~--~----~ You received this message because you are subscribed to the Google Groups "Django developers" group. To post to this group, send email to django-developers@googlegroups.com To unsubscribe from this group, send email to [EMAIL PROTECTED] For more options, visit this group at http://groups.google.com/group/django-developers?hl=en -~----------~----~----~----~------~----~------~--~---