From: Michael H. <mg...@gm...> - 2008-01-08 23:06:28
|
Hi Kjell, -------- Original-Nachricht -------- > Datum: Tue, 08 Jan 2008 20:46:10 +0100 > Von: Kjell Rilbe <kje...@da...> > An: Development list <fla...@li...> > Betreff: Re: [Flamerobin-devel] Insert row dialog > Just thought I'd comment on this. I subscribe to a forum called > pragmatic programming, and the issue of rewrites came up there. The > strong consensus was that complete rewrites are never a good idea. yes, one could go as far as saying that. Second system effect, and all that. However: > Instead, they recommend to rewrite small parts at a time, so that the > complete product is eventually completely rewritten, but in small steps. how does one do that, when the most basic data structure of the program (the MetadataItem class as the base class of all database entities) is flawed, and if changing it makes most of the program immediately uncompilable? I'd love to hear some opinions about changing MetadataItem class in-place, so that it - is smart pointer based - implements the Composite pattern properly - removes the NodeType enum and replaces switches on it with proper OOP and still limits the amount of changes necessary in client code. But I don't really see how that could be achieved. Thanks -- Michael Hieke |