Original link:http://blog.csdn.net/cuixinminsuijie/article/details/3497442 Tag:software Engineering, fan-in, Fan-out what is fan-in and fan-out?
In software design, the concept of fan-in and fan-out refers to the hierarchical invocation between application modules.
According to the structured design method, an application is composed of several modules with relatively independent functions.
Fan in: Refers to the number of ancestor modules that call the module directly. Fan-In large indicates that the module has a high reuse program.
Fan out: Refers to the number of subordinate modules that the module calls directly. Fan-out large indicates that the module is of high complexity, need to control and coordinate too many sub-modules, but the fan out too small (for example, always 1) is not good. Fan out too large generally because of the lack of intermediate levels, should be appropriate to increase the intermediate level of the module. Fan out too long can further decompose the sub-modules into several sub-function modules, or merge them into their parent modules.
Well-designed software structure, usually the top fan out relatively large, the middle fan out small, the underlying module has a large fan into. Https://en.wikipedia.org/wiki/Fan-infrom wiki pedia:
fan-in is the number of inputs a gate can handle. For instance the fan-in, the and gate shown in the figure is 3. Physical logic gates with a large fan-in tend to being slower than those with a small fan-in. This is because the complexity of the input circuitry increases the input capacitance of the device.
Fan-in, Fan-out