VB to Python migration
josh-post at istedconsulting.com
Tue Jan 31 18:25:11 EST 2006
Magnus Lycka wrote:
> I suppose that you need to present a lot of differnt kinds of data,
> and that you need to provide various search parameters etc for
> different data sets, but this sounds like something that might be
> very few screens that adapt to some kind of meta-data, perhaps XML
> descriptions or small "configuration files" containing som simple
> Python data structures and possibly input validation routines etc.
> Maybe this information should even be in the database?
This all makes sense. Being hamstrung by the VB model has hampered our
thinking in areas like this I think. Having a smaller number of dynamic,
data driven screens is good for maintainability anyways.
> The problem arises if there is behavior in the application that
> varies with data, but with Python, it's certainly possible to handle
> that to some extent even if these screens are driven by database
> BTW, I guess DABO http://dabodev.com/ is intended just for this kind
> of application, but I doubt it was ever used for a project of this
> size, it's fairly new... Never used it myself...
I have looked through the DABO website and it looks very promising. By
the looks of it, the authors come from the same type of background
(Windows RAD application) as we are coming from. I'll have to download
it and give it a run for it's money.
> Whatever you use for your user interface, I suggest that you use
> a multi-tier approach, and a very thin user interface layer. In my
> opinion that makes testing much easier. I'd recommend that you use
> a proper test tool and employ a test-driven approach.
This is what we're planning on. If the user interface is as thin as
possible, that allows easily porting it to a web app etc.
As for the testing, that's something we'll need to learn about. I've
read some articles about test driven programming in relation to extreme
programming. Can you give me links to any good sites explaining how this
all works? (Off list may be better for these off-topic links)
More information about the Python-list