Computer Aided Design (CAD) is a form of design in which people work with computers to create ideas, models, and prototypes. CAD was originally developed to assist people with technical drawing and drafting, but it has expanded to include numerous other potential uses. A variety of software products designed for CAD can be found on the market, with many being targeted to a specific application or industry.
Drafting and technical drawing can be very painstaking, and they require some special skills. Using CAD for drafting still requires many of the same skills, but by working with a computer instead of on paper, people can be much more efficient. They can also play around with ideas much more easily, moving design elements around and running the design through software programs which can determine whether or not the design is structurally viable. For example, an architect working on a bridge can test the design in simulations to see if it will withstand the load it will need to carry.
CAD can be used to design structures, mechanical components, and molecules, among other things. One advantage of using CAD is that people don't have to make prototypes to demonstrate a project and its potential, as they can use a three dimensional modeling program to show people how something might look. CAD also allows for endless variations and experiments to show how the look and feel of something can be altered, and these can be done at the click of a button, rather than with painstaking drafting work.
Casual users sometimes like to play with CAD for things like deciding how to organize their furniture, or lay out a garden. They can drag and drop elements and play with the space in a variety of ways, and generate a configuration which will be suitable and aesthetically pleasing. CAD is used by professionals in a number of industries across the manufacturing sector, and it can also appear in some surprising places, like forensics labs, where researchers recreate crime scenes on a computer to explore scenarios.
Advanced CAD programs usually require extensive training from their users, as they can be very complex and challenging to work with. More casual programs can be learned in shorter periods of time, with some designed to allow people to work within the program immediately, learning as they go. Simple programs can also sometimes have their functionality increased with expansion packs which are designed to provide additional features, so that people can work within a program they are familiar with when they want to develop more complex designs.