I'm starting to make a code-generation suite in python, customized to the way we ASP.NET at my company, and I'm having some trouble finding a good way to organize all the code. I keep writing it, but it feels more and more spaghetti-ish every day.
Organize your code into packages. Give each package a clear responsibility and clear dependencies on other packages. For example my current (Jython) project has these packages:
app - top-level application objects data - database access - all the SQL code and database objects dbload - helpers for initial database load gui - gui classes importer - classes to implement an import function main - misc. main programs, not really part of the main app server - embedded web server tree - support for the Swing TreeModel that is a major part of the app writer - generation of output files
I also use some packages that are not specific to the application: db - generic database support swing - generic Swing widgets and support classes util - misc helpful stuff
In total there are 121 Python files (including test modules) and 49 Java files.
For a smaller project you might just have a few modules in one package, or just a couple of packages.
HTH Kent
_______________________________________________ Tutor maillist - Tutor@python.org http://mail.python.org/mailman/listinfo/tutor