

What are the criteria that should be followed for module division in software design?
#The principle that should be followed in module division in software design is high cohesion and low coupling.
High cohesion and low coupling is a concept in software engineering. It is a standard for judging the quality of software design. It is mainly used in the object-oriented design of programs. It mainly depends on whether the cohesion of the class is high. , whether the coupling degree is low.
In software design, coupling and cohesion are usually used as standards to measure the degree of module independence. One criterion for dividing modules is high cohesion and low coupling.
From the perspective of module granularity, high cohesion: as much as possible, each member method of the class only completes one thing (maximum aggregation); low coupling: reduce the number of members within the class that one member method calls another member method.
From a class perspective, high cohesion and low coupling: reduce calls to other classes within the class; from a functional block perspective, high cohesion and low coupling: reduce the interaction complexity between modules (number of interfaces , parameter data) that is, horizontally: between classes and between modules and modules; vertically: between levels; as much as possible, content is cohesive and data is coupled.
The above is the detailed content of What are the criteria that should be followed for module division in software design?. For more information, please follow other related articles on the PHP Chinese website!

Hot AI Tools

Undresser.AI Undress
AI-powered app for creating realistic nude photos

AI Clothes Remover
Online AI tool for removing clothes from photos.

Undress AI Tool
Undress images for free

Clothoff.io
AI clothes remover

AI Hentai Generator
Generate AI Hentai for free.

Hot Article

Hot Tools

Notepad++7.3.1
Easy-to-use and free code editor

SublimeText3 Chinese version
Chinese version, very easy to use

Zend Studio 13.0.1
Powerful PHP integrated development environment

Dreamweaver CS6
Visual web development tools

SublimeText3 Mac version
God-level code editing software (SublimeText3)

Hot Topics

