This article is about the architectural problem. For the language implementation problem, see Fragile binary interface problem.
This article includes a list of general references, but it lacks sufficient corresponding inline citations. Please help to improve this article by introducing more precise citations.(September 2009) (Learn how and when to remove this message)
The fragile base class problem is a fundamental architectural problem of object-oriented programming systems where base classes (superclasses) are considered "fragile" because seemingly safe modifications to a base class, when inherited by the derived classes, may cause the derived classes to malfunction. The programmer cannot determine whether a base class change is safe simply by examining in isolation the methods of the base class.
One possible solution is to make instance variables private to their defining class and force subclasses to use accessors to modify superclass states. A language could also make it so that subclasses can control which inherited methods are exposed publicly. These changes prevent subclasses from relying on implementation details of superclasses and allow subclasses to expose only those superclass methods that are applicable to themselves.
An alternative solution is to have an interface instead of superclass.
The fragile base class problem has been blamed on open recursion (dynamic dispatch of methods on this), with the suggestion that invoking methods on this default to closed recursion (static dispatch, early binding) rather than open recursion (dynamic dispatch, late binding), only using open recursion when it is specifically requested; external calls (not using this) would be dynamically dispatched as usual.[1][2]
^"Selective Open Recursion: A Solution to the Fragile Base Class Problem", Jonathan Aldrich
^"Selective Open Recursion: A Solution to the Fragile Base Class Problem", Lambda the Ultimate
and 18 Related for: Fragile base class information
The fragilebaseclass problem is a fundamental architectural problem of object-oriented programming systems where baseclasses (superclasses) are considered...
example of software brittleness. This problem is more often called the fragilebaseclass problem or FBC; however, that term has a wider sense. The problem...
dependency on XPCOM led to certain dynamic linking issues (e.g. the fragilebaseclass problem) which had to be solved before the plugin would work correctly...
way, SOM addresses the fragile binary interface problem that affects other library technology such as C++. SOM allows classes to be defined in one programming...
American yacht club Florida Building Code Form-based code Fluidized bed combustion Fragilebaseclass FBC Media, British public relations firm Frankfurter...
Codium fragile, known commonly as green sea fingers, dead man's fingers, felty fingers, forked felt-alga, stag seaweed, sponge seaweed, green sponge,...
Masculine fragility is the anxiety among males who feel they do not meet cultural standards of masculinity. Evidence suggests that this concept is necessary...
A fragile state or weak state is a country characterized by weak state capacity or weak state legitimacy leaving citizens vulnerable to a range of shocks...
Marxist theory, society consists of two parts: the base (or substructure) and superstructure. The base refers to the mode of production which includes the...
Fragile Things: Short Fictions and Wonders is a collection of short stories and poetry by English author Neil Gaiman. It was published in the US and UK...
White Fragility: Why It's So Hard for White People to Talk About Racism is a 2018 book written by Robin DiAngelo about race relations in the United States...
Leucocoprinus fragilissimus, commonly known as the fragile dapperling, is a species of gilled mushroom in the family Agaricaceae. As with many of the...
Microlasma fragile is a species of symmetrical sessile barnacle in the family Pachylasmatidae. "Microlasma fragile". GBIF. Retrieved 2021-09-01. "World...
Broken (1992). The following albums, The Downward Spiral (1994) and The Fragile (1999), were released to critical acclaim and commercial success. Following...
Buccinum fragile is a species of sea snail, a marine gastropod mollusk in the family Buccinidae, the true whelks. Buccinum fragile G. O. Sars, 1878. Retrieved...
an ageing and increasingly fragile surface combatant fleet". The government also agreed to reduce the number of Hunter-class frigates to be acquired from...
classified based on their skin vasoconstrictive abilities. There are numerous topical steroid products. All the preparations in each class have the same...
Lissoclinum fragile is a species of tunicate. This species was named by Willard G. Van Name in 1902. This species is a colonial ascidian. This means that...