File tree Expand file tree Collapse file tree 1 file changed +25
-0
lines changed
Expand file tree Collapse file tree 1 file changed +25
-0
lines changed Original file line number Diff line number Diff line change @@ -29,6 +29,7 @@ have any feedback or suggestions for improvement!
2929
3030### Inter-Module/Class
3131
32+ - [ Connascence] ( #connascence )
3233- [ Minimise Coupling] ( #minimise-coupling )
3334- [ Law of Demeter] ( #law-of-demeter )
3435- [ Composition Over Inheritance] ( #composition-over-inheritance )
@@ -259,6 +260,30 @@ Resources
259260
260261- [ Opportunistic Refactoring] ( https://martinfowler.com/bliki/OpportunisticRefactoring.html )
261262
263+ ## Connascence
264+
265+ Connascence is a software quality metric that describes different levels and
266+ dimensions of coupling. Two components are connascent if a change in one would
267+ require a change in the other as well. Lower connascence means higher code
268+ quality.
269+
270+ Why
271+
272+ - Reducing connascence will reduce the cost of change for a software system.
273+ - Arguably one of the most important benefits of connascence is that it gives
274+ developers a vocabulary to talk about different types of coupling.
275+
276+ How
277+
278+ - Each instance of connascence in a codebase is considered on 3 separate axes:
279+ strength, degree and locality.
280+ - It provides a system for comparing different types of dependency.
281+
282+ Resources
283+
284+ - [ Connascence (connascence.io)] ( https://connascence.io )
285+ - [ Connascence (wikipedia.org)] ( https://en.wikipedia.org/wiki/Connascence )
286+
262287## Minimise Coupling
263288
264289Coupling between modules or components is their degree of mutual
You can’t perform that action at this time.
0 commit comments