About: Abstraction inversion     Goto   Sponge   NotDistinct   Permalink

An Entity of Type : owl:Thing, within Data Space : dbpedia.demo.openlinksw.com associated with source document(s)
QRcode icon
http://dbpedia.demo.openlinksw.com/describe/?url=http%3A%2F%2Fdbpedia.org%2Fresource%2FAbstraction_inversion&invfp=IFP_OFF&sas=SAME_AS_OFF

In computer programming, abstraction inversion is an anti-pattern arising when users of a construct need functions implemented within it but not exposed by its interface. The result is that the users re-implement the required functions in terms of the interface, which in its turn uses the internal implementation of the same functions. This may result in implementing lower-level features in terms of higher-level ones, thus the term 'abstraction inversion'. Possible ill-effects are:

AttributesValues
rdfs:label
  • Abstraction inversion (en)
  • Inversión de abstracción (es)
  • Inversione di astrazione (it)
  • Инверсия абстракции (ru)
rdfs:comment
  • Con inversione di astrazione, in informatica, si inca il procedimento utilizzato per creare una astrazione. Ad esempio se il linguaggio di programmazione usato da un utente non supportasse nessun meccanismo di lock-crossthread e lo volessi implementare con una classe che usa una transazione su DB, starei creando una classe che dovrebbe esporre una funzionalità molto astratta (perché utilizzabile dovunque) con una implementazione pesante e particolarmente caratterizzata dal DBMS su cui gira. L'astrazione inversa è un esempio di anti-pattern. (it)
  • Инве́рсия абстра́кции (англ. abstraction inversion) — ошибка проектирования программного модуля, когда в сложном модуле для пользователя закрыты некоторые простые, но необходимые функции. В результате пользователь модуля вынужден реализовывать простую функциональность на основе интерфейса модуля, иногда с использованием недокументированных возможностей и побочных эффектов, в то время когда она уже реализована внутри модуля. То есть, реализовывать более низкоуровневые функции на основе высокоуровневых, откуда и происходит термин «инверсия абстракции». (ru)
  • In computer programming, abstraction inversion is an anti-pattern arising when users of a construct need functions implemented within it but not exposed by its interface. The result is that the users re-implement the required functions in terms of the interface, which in its turn uses the internal implementation of the same functions. This may result in implementing lower-level features in terms of higher-level ones, thus the term 'abstraction inversion'. Possible ill-effects are: (en)
  • En computación, el antipatrón de diseño inversión de abstracción (en inglés abstraction inversion) ocurre cuando un programador construye una interfaz que no expone las funcionalidades requeridas por los usuarios, aunque estas sean efectivamente implementadas, obligando al usuario a implementarlas mediante un mecanismo complejo. No debe mal entenderse como: "una construcción simple que esconde una construcción muy complicada" - construcción que es deseable. (es)
dcterms:subject
Wikipage page ID
Wikipage revision ID
Link from a Wikipage to another Wikipage
Link from a Wikipage to an external page
sameAs
dbp:wikiPageUsesTemplate
has abstract
  • In computer programming, abstraction inversion is an anti-pattern arising when users of a construct need functions implemented within it but not exposed by its interface. The result is that the users re-implement the required functions in terms of the interface, which in its turn uses the internal implementation of the same functions. This may result in implementing lower-level features in terms of higher-level ones, thus the term 'abstraction inversion'. Possible ill-effects are: * The user of such a re-implemented function may seriously underestimate its running-costs. * The user of the construct is forced to obscure their implementation with complex mechanical details. * Many users attempt to solve the same problem, increasing the risk of error. (en)
  • En computación, el antipatrón de diseño inversión de abstracción (en inglés abstraction inversion) ocurre cuando un programador construye una interfaz que no expone las funcionalidades requeridas por los usuarios, aunque estas sean efectivamente implementadas, obligando al usuario a implementarlas mediante un mecanismo complejo. No debe mal entenderse como: "una construcción simple que esconde una construcción muy complicada" - construcción que es deseable. Por ejemplo, en el lenguaje de programación Ada se considera que las primitivas de sincronización están invertidas: se construyen exclusiones mutuas o mutex como sencilla aplicación de la noción de rendevouz que es en sí más compleja. Lo que sucede en este caso, es que los programadores de Ada, para implementar semáforos (mutex), deben utilizar las primitivas «rendevouz», las que son más complejas que los semáforos (los utilizan), produciendo de esta forma la inversión de abstracción . Otro ejemplo es el uso de transacciones en una base de datos, cuando lo que se desea hacer es garantizar exclusión entre varias instancias de un algoritmo en hilos de ejecución diferentes. (es)
  • Con inversione di astrazione, in informatica, si inca il procedimento utilizzato per creare una astrazione. Ad esempio se il linguaggio di programmazione usato da un utente non supportasse nessun meccanismo di lock-crossthread e lo volessi implementare con una classe che usa una transazione su DB, starei creando una classe che dovrebbe esporre una funzionalità molto astratta (perché utilizzabile dovunque) con una implementazione pesante e particolarmente caratterizzata dal DBMS su cui gira. L'astrazione inversa è un esempio di anti-pattern. (it)
  • Инве́рсия абстра́кции (англ. abstraction inversion) — ошибка проектирования программного модуля, когда в сложном модуле для пользователя закрыты некоторые простые, но необходимые функции. В результате пользователь модуля вынужден реализовывать простую функциональность на основе интерфейса модуля, иногда с использованием недокументированных возможностей и побочных эффектов, в то время когда она уже реализована внутри модуля. То есть, реализовывать более низкоуровневые функции на основе высокоуровневых, откуда и происходит термин «инверсия абстракции». (ru)
prov:wasDerivedFrom
page length (characters) of wiki page
foaf:isPrimaryTopicOf
is Link from a Wikipage to another Wikipage of
is foaf:primaryTopic of
Faceted Search & Find service v1.17_git139 as of Feb 29 2024


Alternative Linked Data Documents: ODE     Content Formats:   [cxml] [csv]     RDF   [text] [turtle] [ld+json] [rdf+json] [rdf+xml]     ODATA   [atom+xml] [odata+json]     Microdata   [microdata+json] [html]    About   
This material is Open Knowledge   W3C Semantic Web Technology [RDF Data] Valid XHTML + RDFa
OpenLink Virtuoso version 08.03.3330 as of Mar 19 2024, on Linux (x86_64-generic-linux-glibc212), Single-Server Edition (378 GB total memory, 58 GB memory in use)
Data on this page belongs to its respective rights holders.
Virtuoso Faceted Browser Copyright © 2009-2024 OpenLink Software