Console And Files First, GUI And Database Last
Adding Database IO and GUI IO to a program ratchets up it’s complexity, and hence development time, immensely. In “Programming: Principles and Practice Using C++“, Bjarne Stroustrup recommends designing and writing your program to do IO over the console and filesystem first, and then adding GUI IO and database IO later. And only if you have to.
Eliminating, or at least delaying, GUI and database IO forces you to focus on getting the internal application design right early. It also helps to keep you from tangling the GUI IO and database IO code with your application code and creating an unmaintainable ball of mud. Thirdly, the practice also makes testing much simpler than trying to write and debug the whole quagmire at once. Good advice?
Categories: technical
Bjarne Stroustrup, linkedin, software design, software development


GUI and Database IO and design are always the part of the development that usually have the most input from outside parties. GUI design and IO are sometimes tricky and the placement of the widgets with their color draws everybody opinion. Having the base functionality working puts the dveloper some what in the driver seat.
Interesting point about the developer being in the driver seat. Once the GUI starts becoming publicly visible, every swingin’ dick within viewing distance wants to jump in the back seat and tell him/her how to drive – without doing any of the work, of course.