Broader Impact On Software Engineering
Even beyond the connection with design by contract, CQS is considered by its adherents to have a simplifying effect on a program, making its states (via queries) and state changes (via commands) more comprehensible in a manner reminiscent of how Edsger Dijkstra's admonition against gotos did the same for control flow.
CQS is well-suited to the object-oriented methodology, but can also be applied outside of object-oriented programming. There is nothing inherently object-oriented about the separation of side effects and return values, and so CQS can be profitably applied to any programming paradigm that requires reasoning about side effects.
Read more about this topic: Command-query Separation
Famous quotes containing the words broader, impact and/or engineering:
“The young women, what can they not learn, what can they not achieve, with Columbia University annex thrown open to them? In this great outlook for womens broader intellectual development I see the great sunburst of the future.”
—M. E. W. Sherwood (18261903)
“As in political revolutions, so in paradigm choicethere is no standard higher than the assent of the relevant community. To discover how scientific revolutions are effected, we shall therefore have to examine not only the impact of nature and of logic, but also the techniques of persuasive argumentation effective within the quite special groups that constitute the community of scientists.”
—Thomas S. Kuhn (b. 1922)
“Mining today is an affair of mathematics, of finance, of the latest in engineering skill. Cautious men behind polished desks in San Francisco figure out in advance the amount of metal to a cubic yard, the number of yards washed a day, the cost of each operation. They have no need of grubstakes.”
—Merle Colby, U.S. public relief program (1935-1943)