What does modularity mean in the programming world and is it helpful?
- 1 decade agoFavorite Answer
In design of software it means that the problem is broken down into a set of interacting components with clearly defined (and ideally formally specified) interfaces between them.
This helps as each component can be tested in isolation against the interface and functional specifications (and each component can be developed in isolation, buy different groups if necessary).
In many cases these components can actually be made separate programs communicating by some suitable means, and one large system is way more then three times as difficult to develop then 3 smallish ones, the overhead of designing the interfaces and documenting them is often well worthwhile. The win becomes even bigger when if comes to debugging as there are far less interactions in the simpler code base.
I work on a piece of broadcast automation software that has a core made up of 5 components that all run as self contained programs and that talk among themselves by means of network sockets. Could we have done it as a single monolithic monster? Well,yea, but I figure it would have at least doubled the development time.
So, yea, it is helpful. The trick is to know how to partition the problem so as to keep the interfaces manageable and so as to be able to deal with spec changes (specifications always change).
- Anonymous6 years ago
This Site Might Help You.
What does modularity mean in the programming world and is it helpful?Source(s): modularity programming world helpful: https://tr.im/c23iM
- Jeffrey FLv 61 decade ago
it is code that can be used as an #include in other programs.
take a file read function/subroutine....use it as an #include and you pass in a file to the function/subroutine
The idea is that the only thing you would need to develop is the custom coding for a specific process which may not already be coded.
- How do you think about the answers? You can sign in to vote the answer.
- Andy TLv 71 decade ago
It simply meant the ability to take some codes developed within a project and reuse it under another project.