A conceptual level view of an object design describes the key abstractions. While someone might think of key abstractions as being nothing more or no… - Rebecca Wirfs-Brock

" "

A conceptual level view of an object design describes the key abstractions. While someone might think of key abstractions as being nothing more or nothing less than high-level descriptions of "candidate classes", I prefer to consider a conceptual design from a slightly different angle--I'm thinking about design at a slightly different level. An object-oriented application is a set of interacting objects. Each object is an implementation of one or more roles. A role supports a set of related (cohesive) responsibilities. A responsibility is an obligation to perform a task or know certain information. And objects don't work in isolation, they collaborate with others in a community to perform the overall responsibilities of the application. So a conceptual view, at least to start, is a distillation of the key object roles and their responsibilities (stated at a fairly high level). More than likely (unless you form classification hierarchies and use inheritance and composition techniques) many candidates you initially model will map directly to a single class in some inheritance hierarchy. But I like to open up possibilities by think first of roles and responsibilities, and then as a second step towards a specification-level view, mapping these candidates to classes and interfaces.

English
Collect this quote

About Rebecca Wirfs-Brock

Rebecca Wirfs-Brock (born 1953) is an American software engineer and consultant in object-oriented programming and object-oriented design, the founder of the information technology consulting firm Wirfs-Brock Associates, and inventor of .

Go Premium

Support Quotewise while enjoying an ad-free experience and premium features.

View Plans

Related quotes. More quotes will automatically load as you scroll down, or you can use the load more buttons.

Additional quotes by Rebecca Wirfs-Brock

Frameworks are skeletal structures of programs that must be fleshed out to build a complete application. For example, a windowing system or a simulation system can both be viewed as frameworks fleshed out by a windowed application or a simulation, respectively.

Frameworks are white boxes to those that make use of them. Application developers must be able to quickly understand the structure of a framework, and how to write code that will fit into the framework. Frameworks are reusable designs as well as reusable code.

Unlimited Quote Collections

Organize your favorite quotes without limits. Create themed collections for every occasion with Premium.

Loading...