Life of Python
benji at benjiyork.com
Sat Jun 25 15:01:51 CEST 2005
Uwe Mayer wrote:
> con: If you are planning larger applications (for a reasonable value of
> "large") you have to discipline yourself to write well structured code.
This is definitely true, no matter the language you use.
> Then you will want to specify interfaces,
If you're really interested in interfaces you might want to check out
Zope3. Even if you don't want to use the "web" parts, the component
architecture parts (interfaces, adapters, etc.) might be interesting to you.
In a related vein is PEAK (http://peak.telecommunity.com/). It also has
some related ideas about interfaces, components, adapters, etc.
> accessor functions with different read /write access, ...
I don't quite follow here. Are you talking about using a method like
"thing.getX" instead of just accessing the attribute directly like
"thing.x"? If so, that kind of up-front design isn't necessary in Python.
> Unless you have designed the software interactions completely bevorehand
> (which never works out) this is the only way to incorporate changes without
> refactoring your source all the time.
Refactoring *is* the way you handle not being able to "[design] the
software interactions completely bevorehand".
More information about the Python-list