In computer science, separation of concerns (SoC) is a design principle that comprises the process of separating a computer program into distinct features that overlap in functionality as little as possible. A concern is any piece of interest or focus in a program. Typically, concerns are synonymous with features or behaviors. Progress towards SoC is traditionally achieved through modularity of programming and encapsulation (or "transparency" of operation), with the help of information hiding. Layered designs in information systems are also often based on separation of concerns (e.g., presentation layer, business logic layer, data access layer, database layer).
Read more about Separation Of Concerns: Implementation, Origin
Famous quotes containing the words separation of, separation and/or concerns:
“There is nothing that I shudder at more than the idea of a separation of the Union. Should such an event ever happen, which I fervently pray God to avert, from that date I view our liberty gone.”
—Andrew Jackson (17671845)
“Just as children, step by step, must separate from their parents, we will have to separate from them. And we will probably suffer...from some degree of separation anxiety: because separation ends sweet symbiosis. Because separation reduces our power and control. Because separation makes us feel less needed, less important. And because separation exposes our children to danger.”
—Judith Viorst (20th century)
“In what concerns you much, do not think that you have companions: know that you are alone in the world.”
—Henry David Thoreau (18171862)