An Entity of Type: Thing, from Named Graph: http://dbpedia.org, within Data Space: dbpedia.org

The circle–ellipse problem in software development (sometimes called the square–rectangle problem) illustrates several pitfalls which can arise when using subtype polymorphism in object modelling. The issues are most commonly encountered when using object-oriented programming (OOP). By definition, this problem is a violation of the Liskov substitution principle, one of the SOLID principles.

Property Value
dbo:abstract
  • The circle–ellipse problem in software development (sometimes called the square–rectangle problem) illustrates several pitfalls which can arise when using subtype polymorphism in object modelling. The issues are most commonly encountered when using object-oriented programming (OOP). By definition, this problem is a violation of the Liskov substitution principle, one of the SOLID principles. The problem concerns which subtyping or inheritance relationship should exist between classes which represent circles and ellipses (or, similarly, squares and rectangles). More generally, the problem illustrates the difficulties which can occur when a base class contains methods which mutate an object in a manner which may invalidate a (stronger) invariant found in a derived class, causing the Liskov substitution principle to be violated. The existence of the circle–ellipse problem is sometimes used to criticize object-oriented programming. It may also imply that hierarchical taxonomies are difficult to make universal, implying that situational classification systems may be more practical. (en)
  • Das Kreis-Ellipse-Problem ist ein prominentes, wiederholt diskutiertes Problem aus dem Bereich der objektorientierten Programmierung im Zusammenhang mit der Modellierung von Vererbungsbeziehungen. Einerseits ist ein Kreis eindeutig eine Ellipse, was dafür spricht, dass es sich um einen Subtyp der Ellipse handelt. Andererseits führt die Unterstützung einer nachträglichen, unabhängigen Veränderung der Länge der beiden Halbachsen, die für eine Ellipse sinnvoll sein kann, bei einem Kreis zu einem Problem, das häufig im Zusammenhang mit dem Liskovschen Substitutionsprinzip diskutiert wird. Ein analoger Fall ist die Beziehung zwischen Quadrat und Rechteck. (de)
dbo:wikiPageExternalLink
dbo:wikiPageID
  • 9022379 (xsd:integer)
dbo:wikiPageLength
  • 21767 (xsd:nonNegativeInteger)
dbo:wikiPageRevisionID
  • 1094156860 (xsd:integer)
dbo:wikiPageWikiLink
dbp:wikiPageUsesTemplate
dcterms:subject
rdfs:comment
  • Das Kreis-Ellipse-Problem ist ein prominentes, wiederholt diskutiertes Problem aus dem Bereich der objektorientierten Programmierung im Zusammenhang mit der Modellierung von Vererbungsbeziehungen. Einerseits ist ein Kreis eindeutig eine Ellipse, was dafür spricht, dass es sich um einen Subtyp der Ellipse handelt. Andererseits führt die Unterstützung einer nachträglichen, unabhängigen Veränderung der Länge der beiden Halbachsen, die für eine Ellipse sinnvoll sein kann, bei einem Kreis zu einem Problem, das häufig im Zusammenhang mit dem Liskovschen Substitutionsprinzip diskutiert wird. (de)
  • The circle–ellipse problem in software development (sometimes called the square–rectangle problem) illustrates several pitfalls which can arise when using subtype polymorphism in object modelling. The issues are most commonly encountered when using object-oriented programming (OOP). By definition, this problem is a violation of the Liskov substitution principle, one of the SOLID principles. (en)
rdfs:label
  • Kreis-Ellipse-Problem (de)
  • Circle–ellipse problem (en)
owl:sameAs
prov:wasDerivedFrom
foaf:isPrimaryTopicOf
is dbo:wikiPageRedirects of
is dbo:wikiPageWikiLink of
is foaf:primaryTopic of
Powered by OpenLink Virtuoso    This material is Open Knowledge     W3C Semantic Web Technology     This material is Open Knowledge    Valid XHTML + RDFa
This content was extracted from Wikipedia and is licensed under the Creative Commons Attribution-ShareAlike 3.0 Unported License