Postby ConvertFromOldNGs » Fri Aug 07, 2009 11:30 am
by cnwjhp1 >> Fri, 16 Apr 2004 9:23:50 GMT
Stuart,
It would be fair to say that most Jet clients start out with plans for refactoring or gradual rewriting. It would also be fair to say that most of them in the end decided that Jetted code isn't so bad to maintain after all, and it isn't worth a lot of effort to change it all over. After all, it works.
As Murray indicated, there are a variety of options, which to me is part of the appeal of Jetting. If you make a small change to business rules, you can copy and paste existing Jet code, or add new stuff using the usual Jet conventions. If you add a new functional area, you can make a clean break and use non-Jet methodology, with or without using legacy persistent data.
As Rob said, it pays to keep the overall architecture in mind. An example from my experience - if you marry Jet and non-Jet styles at runtime in the same app, eg a fancy front-end (with persistent updates) with calls to updating ispecs behind it, make sure you work in with the ispec transaction commit cycle. Otherwise you could end up holding locks when the user is idle. It's no reason not to do it though - you just have to keep the overall architecture in mind when you do.
No problem adding new inquiry gui or search screens to the same app. You can also do quickpads, hotkeys and other things to improve navigation that you couldn't do before.
Jet has to be very careful to do a line-by-line emulation. When you had to do something the hard way before, Jet will faithfully reproduce this the hard way, in order to ensure the same results. A little application knowledge here can reap huge improvements. I addressed one glg that used sd groups, arrays and loops to do capitalisation of customer names. A fairly painless rewrite into pure Jade (with a little application knowledge) made it 1000 times faster. Murray has also told such stories, and I'm sure most Jet clients have done this. No need to do this to every ispec and glg though, unless you have a lot of time on your hands.
Cheers,
John P