principles:low_coupling
Differences
This shows you the differences between two versions of the page.
| Both sides previous revisionPrevious revisionNext revision | Previous revision | ||
| principles:low_coupling [2021-10-18 21:49] – +++ restored +++ christian | principles:low_coupling [2026-01-14 14:13] (current) – created cliftonkibble5 | ||
|---|---|---|---|
| Line 1: | Line 1: | ||
| - | ====== Low Coupling (LC) ====== | + | PC based software has a low associated with ownership. Updates can be installed quickly and easily, and maintenance can be carried out without very much inconvenience. Instead of requiring an ardent engineer to visit, a member of the hospital IT staff should be able to resolve any problems. |
| - | ===== Variants | + | A And.O. uses his or her hands for diagnosing maladies |
| - | * Loose Coupling | + | Pay looking for 10 years but get only 6 years of services. More pie above mathematics unsurprisingly. Nobody in order to buy a motorcar and buy it 10 harmful ingredient but only get they are driving it for 6 years. |
| - | ===== Context ===== | + | I hear that 30 million people are insured who currently terribly lack access. How fast will include coverage and how will pouring this Osteopathic clinic connected with people |
| - | /* fill in contexts here: */ | + | |
| - | * [[contexts: | + | |
| - | * [[contexts: | + | |
| - | * [[contexts: | + | |
| + | International outlays have increased 204% from 2001 to 2011. In dollars, it increased from 22.5 billion to 5.9 billion. While the American people saw the typical wage increase by just one.27% from 2000 to 2009, we increased our international outlays by more than 202% above that. It must be capped by 3% annually, which in dollars is definitely an increase from 22.5 billion to 28.3574 billion. If we round at least 30 billion a year it is often a savings of 15.9 billion a 1 year. | ||
| - | ===== Principle Statement ===== | + | My greatest fear is that this healthcare plan will limit services, increase costs, and overall lessen quality of care. Obama promises just the opposite. I hope they' |
| - | [[glossary: | + | Virginia is often a great starting point attend school in. Element is great, the beaches are gorgeous, and will not find of living is cheap. Should you be a person looking going to medical school, then Virginia is often a great starting point look. Not only because of your above reasons, but also because Virginia has five medical schools in it then. This is an awful lot! It's neighbor states only have between one and four. |
| + | The Regional Medical Center was over 80 miles away so it wasn't probably a quick solution. Inside the ambulance and so forth Acupuncture clinic the way I had my worst episode during. I thought I am a goner, hacking perfectly into a little pale while the EMT sat quietly gazing at paperwork. Superior time personal computer I was hooked to was saying over and also again 'check the patient - check the patient' | ||
| - | ===== Description ===== | + | I listened to two doctors, on all parties of the issue, debate about the bill's affect various surgical procedures until my head concerned to expand. Each procedure carries it's own unique requirements, |
| - | A module should not interact with too many other modules. Furthermore if a module //A// interacts with another module //B//, this interaction should be loose, which means that //A// should not make too many assumptions about //B//. | + | When ever I go to see Henry Su in his Acupuncture clinic 'Good Health Acupuncture & Chinese Herbal Clinic' |
| - | Coupling is a measure of dependency between modules. The more dependencies there are, the stronger the dependencies are, and the more assumptions are made upon other modules, the higher | + | Start that isn't senses. Does your clinic look comfortable, healing, and clean? Does anything need repair? Does it have inviting? Can you get soothing sounds-muted voices and gentle mp3? Does your clinic smell good when you walk in or is there a funky odor? Is your treatment room comfortable? |
| - | There are different forms of couplings which can be rated according to their strength((G. J. Myers: //Reliable Software through Composite Design//)): | + | Big government has won and free market has lost inside |
| - | * //No coupling//: The modules do not know each other. | + | You: OK, well I understand |
| - | * //Call coupling//: A module calls another one. | + | |
| - | * //Data coupling//: A module calls another one passing parameters to it. | + | |
| - | * //Stamp coupling//: A module calls another one passing complex parameters to it. | + | |
| - | * //Control coupling//: A module influences the control flow of another module. | + | |
| - | * //External coupling//: The modules communicate using a simple global variable. | + | |
| - | * //Common coupling//: The modules communicate using a common global data structure. | + | |
| - | * //Content coupling//: A modules depends on the inner working of another module. This is the strongest form of coupling. | + | |
| - | + | ||
| - | The forms ranging from no coupling to stamp coupling can be considered " | + | |
| - | + | ||
| - | There are also some additional forms of undesirable couplings: | + | |
| - | + | ||
| - | * //Tramp coupling//: A module is only coupled to a data structure because some other module needs the data. The module gets the data and passes it to the other module without touching the "tramp data" ((M. Page-Jones: //The Practical Guide to Structured Systems Design// | + | |
| - | * //Logical coupling//: A module makes some assumptions about another module without referencing it. For example a module //A// only sorts a list because some other module //B// which //A// technically does not know about needs it sorted. | + | |
| - | + | ||
| - | + | ||
| - | ===== Rationale ===== | + | |
| - | + | ||
| - | If a module //A// interacts with a module //B//, there is a certain dependency between these modules. When for example //A// uses a certain functionality of //B//, then //A// depends on //B//. //A// makes the assumption | + | |
| - | + | ||
| - | Furthermore if //A// makes many and detailed assumptions about //B//, there is also a high probability that //A// has to change despite only relying on one other module. This is because in such a case //A// also needs to change when only a certain detail of //B// changes. | + | |
| - | + | ||
| - | But if coupling is low, there are only few assumptions between the modules which can be violated. This reduces the chance of [[glossary: | + | |
| - | + | ||
| - | + | ||
| - | ===== Strategies ===== | + | |
| - | + | ||
| - | * Indirection: | + | |
| - | * Dependency Inversion/ | + | |
| - | * Use lower form of coupling | + | |
| - | * Merge modules: when there is only one module, | + | |
| - | * Hide information: | + | |
| - | + | ||
| - | ===== Caveats ===== | + | |
| - | + | ||
| - | Coupling can be reduced by several technical measures (see [[# | + | |
| - | + | ||
| - | Furthermore note that coupling to a stable module is often no problem. The problematic cases are couplings to unstable modules. This means that applying decoupling strategies is beneficial when a coupling to an unstable module is reduced. But it may not be beneficial in the other cases. | + | |
| - | + | ||
| - | See also section [[#contrary principles]]. | + | |
| - | + | ||
| - | + | ||
| - | ===== Origin ===== | + | |
| - | /* the *primary* source */ | + | |
| - | * W. P. Stevens, | + | |
| - | + | ||
| - | ===== Evidence ===== | + | |
| - | /* Comment out what is not applicable and explain the rest: */ | + | |
| - | /* * [[wiki: | + | |
| - | + | ||
| - | * [[wiki: | + | |
| - | * [[wiki: | + | |
| - | + | ||
| - | /* * [[wiki: | + | |
| - | + | ||
| - | + | ||
| - | ===== Relations to Other Principles ===== | + | |
| - | + | ||
| - | ==== Generalizations ==== | + | |
| - | + | ||
| - | ==== Specializations ==== | + | |
| - | + | ||
| - | * [[Constantine' | + | |
| - | * [[Dependency Inversion Principle]] (DIP): LC aims at reducing the dependencies to other modules. One way to do so is to only depend on abstractions. DIP is about this aspect. | + | |
| - | + | ||
| - | ==== Contrary Principles ==== | + | |
| - | + | ||
| - | * [[Keep It Simple Stupid]] (KISS): Reducing the coupling often involves the use of complicated interaction patterns, indirections, | + | |
| - | * [[High Cohesion]] (HC): A system consisting of one single module has a very low coupling as there are no dependencies on other modules. But such a system also has low cohesion. The other extreme, very many highly cohesive modules, naturally has a higher coupling between the modules. So here a compromise has to be found. | + | |
| - | * [[Rule of Explicitness]] (RoE): Direct communication typically has the disadvantage of a higher coupling. Indirection reduces coupling but creates implicit/ | + | |
| - | ==== Complementary Principles ==== | + | |
| - | + | ||
| - | * [[Tell, don't Ask/ | + | |
| - | * [[Model Principle]] (MP): LC aims at reducing the dependencies to other modules. So a module shall depend on only a few others. MP now tells which dependencies are allowed and which aren' | + | |
| - | * [[Information Hiding/ | + | |
| - | + | ||
| - | ==== Principle Collections ==== | + | |
| - | + | ||
| - | {{page> | + | |
| - | {{page> | + | |
| - | {{page> | + | |
| - | + | ||
| - | ===== Examples ===== | + | |
| - | + | ||
| - | + | ||
| - | ===== Description Status ===== | + | |
| - | /* Choose one of the following and comment out the rest: */ | + | |
| - | / | + | |
| - | + | ||
| - | [[wiki: | + | |
| - | + | ||
| - | / | + | |
| - | + | ||
| - | ===== Further Reading ===== | + | |
| - | + | ||
| - | * Albert Endres and Dieter Rombach: // | + | |
| - | * [[wp> | + | |
| - | * [[wiki> | + | |
| - | * Martin Fowler: // | + | |
| - | * {{page> | + | |
| - | + | ||
| - | ===== Discussion ===== | + | |
| - | + | ||
| - | Discuss this wiki article and the principle on the corresponding [[talk: | + | |
| + | Your honeymoon in Panama and nicaragua , can be as little as complying with the environment, | ||
principles/low_coupling.1634586598.txt.gz · Last modified: by christian
