Sunday, September 19, 2004

system design

The book Linux and the Unix Philosophy holds many good application design stratgies. One is to separate the GUI from the rest of the application. The non-gui part of the application can be built up from small programs tied together with a 'glue' language such as PERL. If it uses standard io devices for input and output it can be used in 'batch mode' where the transactions are in a file, as well as for entry of single transactions. If a GUI interface is desired it can run the application, take its output and present it to the user and then take user input and feed it to the application. This lets the developer create a simple GUI that presents only the main options that a user requires. Very rarely used options can be used in 'command line' mode. Also this lets a designer replace the GUI without having to rewrite the application.

In the Windows approach, the only way a user can operate an application is through a GUI, thus the GUI needs to present to the user all available options. This causes the GUI (and application) code to be more complex than under the Linux/Unix approach. Maintenance is much more difficult.

0 Comments:

Post a Comment

<< Home