control coupling | common blocks in the Fortran language which are used to hold global variables | public routineX(String command) { //routineX will have to change whenever any of its callers adds a new command if (command.equals("drawCircle") { drawCircle(); } else { drawRectangle(); } } | when one procedure calls another using a 'flag' or 'command' that explicitly controls what the second procedure does | A form of coupling in which one component affects the sequence of execution in another | coupling | - having the callers of the routine directly call the methods called in the second routine
- the use of polymorphic operations
- using a look-up table that maps a command to a method that should be called when that command is issued
|