Hubbry Logo
search button
Sign in
Design marker
Design marker
Comunity Hub
History
arrow-down
starMore
arrow-down
bob

Bob

Have a question related to this hub?

bob

Alice

Got something to say related to this hub?
Share it here.

#general is a chat channel to discuss anything related to the hub.
Hubbry Logo
search button
Sign in
Design marker
Community hub for the Wikipedia article
logoWikipedian hub
Welcome to the community hub built on top of the Design marker Wikipedia article. Here, you can discuss, collect, and organize anything related to Design marker. The purpose of the hub is to connect peopl...
Add your contribution
Design marker

In software engineering, a design marker is a technique of documenting design choices in source code using the Marker Interface pattern. Marker interfaces have traditionally been limited to those interfaces intended for explicit, runtime verification (normally via instanceof). A design marker is a marker interface used to document a design choice. In Java programs the design choice is documented in the marker interface's Javadoc documentation.

Many choices made at software design time cannot be directly expressed in today's implementation languages like C# and Java. These design choices (known by names like Design Pattern, Design Contract, Refactoring, Effective Programming Idioms, Blueprints, etc.) must be implemented via programming and naming conventions, because they go beyond the built-in functionality of production programming languages. The consequences of this limitation conspire over time to erode design investments as well as to promote a false segregation between the designer and implementer mindsets.

Two independent proposals recognize these problems and give the same basic strategies for tackling them. Until now, the budding explicit programming movement has been linked to the use of an experimental Java research tool called ELIDE. The Design Markers technique requires only standard Javadoc-like tools to garner many of the benefits of Explicit Programming.

See also

[edit]
[edit]