3.12. Tools Are Tools-Use Them Wisely

 <  Day Day Up  >  

3.12. Tools Are Tools ”Use Them Wisely

Many software development tools are available. They range from requirements documentation to modeling tools to IDEs (Integrated Development Environment). Tools are wonderful. They can automate many processes and ensure consistency and integrity.

3.12.1. Work with or Against the IDE

Particular features of IDEs or frameworks can influence how you develop your system. An IDE such as Microsoft Visual Studio makes it easy to develop handlers for graphical user interface (GUI) events. With a couple of mouse clicks, you can set up a function that is called when a button is clicked or when text is entered into an edit box. The IDE strongly suggests a stylistic pattern for handling and naming the functions. You are welcome to override that pattern if you have strong feelings concerning your own style. However, it is often easier to accept rather than to fight. It will add consistency to your programs. Other developers working on your system might not be as adamant about the style and might be much more willing to accept the default. So the default becomes the easiest form of consistent code. [*]

[*] If you prefer your own style, select tools that do not impose their own style or allow you to customize their style. Eric M. Burke, a reviewer, gave the example of the Java Spring framework. Its persistence mechanism does not require you to code classes to be persisted in any particular style.

3.12.2. Multiple Tools

An old adage says, "Use the right tool for the job." When programming particular aspects of a system, usually certain tools are designed to perform specific jobs easily. For example, Perl performs string processing; XLST transforms XML from one form into another; Crystal Reports creates reports from databases. If you are familiar with the appropriate tool, it is quicker to code the operation with that tool. If you are not familiar with the tool and if the aspect of the program that requires the tool is relatively small, coding using the main development language might make more sense. For example, if you have a number of string manipulations, writing those manipulations in PERL makes sense. If you have only a few, code them in Java (if that's what you are using). Not only do you save tool-learning time, but also, the maintainers after you will not be required to know yet another language.

On the other hand, it is important to learn new tools. You learn new ways of solving problems. If you know more tools, you will be better able to pick the appropriate tools. If you know only a few, you will be forced to use those few tools, bending them into uncomfortable solutions.

 <  Day Day Up  >  


Prefactoring
Prefactoring: Extreme Abstraction, Extreme Separation, Extreme Readability
ISBN: 0596008740
EAN: 2147483647
Year: 2005
Pages: 175
Authors: Ken Pugh

flylib.com © 2008-2017.
If you may any questions please contact us: flylib@qtcs.net