dbo:abstract
|
- Liskovové princip zastoupení (Liskov substitution principle) je princip objektově orientovaného programování, který říká, že pokud v počítačovém programu je S potomkem předka T, potom objekty typu T mohou být nahrazeny objekty typu S (např. objekt typu T lze zastoupit jakýmkoliv objektem potomka S) beze změny jakékoliv potřebné vlastnosti předka T. Liskovové princip zastoupení je formálněji konkrétní definicí vztahu dědění (subtyping) nazvaného (strong) behavioral subtyping, kterou poprvé představila na konferenci v roce 1987 Barbara Liskovová v hlavním příspěvku s názvem Data abstraction and hierarchy. Jedná se spíše o sémantický než syntaktický vztah, protože předpokládá sémantickou zaměnitelnost typů v hierarchii, zejména zaměnitelnost jejich objektů. Barbara Liskov a tento princip v roce 1994 stručně formulovali takto: Podmínka na potomka: Nechť je vlastnost prokazatelná objektu typu . Potom jsou pravdivé pro objekty typu , kde je potomkem . (cs)
- Das Liskovsche Substitutionsprinzip (LSP) oder Ersetzbarkeitsprinzip ist ein Kriterium in der objektorientierten Programmierung, das die Bedingungen zur Modellierung eines Datentyps für seinen Untertyp angibt. Es besagt, dass ein Programm, das Objekte einer Basisklasse T verwendet, auch mit Objekten der davon abgeleiteten Klasse S korrekt funktionieren muss, ohne dabei das Programm zu verändern. Das Liskovsche Substitutionsprinzip wurde erstmals 1987 von Barbara Liskov auf einer Konferenz Data abstraction and hierarchy vorgestellt und wurde 1993 von Barbara Liskov und Jeannette Wing formuliert. In einem nachfolgenden Artikel wurde es folgendermaßen formuliert (Übersetzung): „Eine stärkere Forderung [als Kovarianz und Kontravarianz] wird benötigt, die das Verhalten von Untertypen einschränkt: Eigenschaften, die anhand der Spezifikation des vermeintlichen Typs eines Objektes bewiesen werden können, sollten auch dann gelten, wenn das Objekt einem Untertyp dieses Typs angehört: Sei eine beweisbare Eigenschaft von Objekten des Typs . Dann soll für Objekte des Typs wahr sein, wobei ein Untertyp von ist.“ Damit ist garantiert, dass Operationen, die auf ein Objekt des Typs vom Typ angewendet werden, auch korrekt ausgeführt werden. In einigen der heute üblichen Programmiersprachen, die Polymorphie unterstützen, kann dieses Prinzip durch Vererbung von mehr als einem Objekt auf ein anderes verletzt werden. Dann ließe sich nicht stets bedenkenlos ein Objekt vom Typ durch ein Objekt vom Typ ersetzen. Bezogen auf einzelne Methoden bedeutet das Liskovsche Substitutionsprinzip, dass beim Überschreiben einer Methode durch eine abgeleitete Klasse die Vorbedingungen nur abgeschwächt und die Nachbedingungen nur verstärkt werden dürfen (siehe Design by Contract). (de)
- Principio de sustitución de Liskov o LSP (Liskov Substitution Principle) es un principio de la programación orientada a objetos.y puede definirse como: Cada clase que hereda de otra puede usarse como su padre sin necesidad de conocer las diferencias entre ellas. (es)
- Le principe de substitution de Liskov (LSP) est, en programmation orientée objet, une définition particulière de la notion de sous-type. Il a été formulé par Barbara Liskov et Jeannette Wing dans un article intitulé Family Values: A Behavioral Notion of Subtyping : Liskov et Wing en ont proposé la formulation condensée suivante : Si est une propriété démontrable pour tout objet de type , alors est vraie pour tout objet de type tel que est un sous-type de . (fr)
- The Liskov substitution principle (LSP) is a particular definition of a subtyping relation, called strong behavioral subtyping, that was initially introduced by Barbara Liskov in a 1988 conference keynote address titled Data abstraction and hierarchy. It is based on the concept of "substitutability" – a principle in object-oriented programming stating that an object (such as a class) may be replaced by a sub-object (such as a class that extends the first class) without breaking the program. It is a semantic rather than merely syntactic relation, because it intends to guarantee semantic interoperability of types in a hierarchy, object types in particular. Barbara Liskov and Jeannette Wing described the principle succinctly in a 1994 paper as follows: Subtype Requirement: Let be a property provable about objects of type T. Then should be true for objects of type S where S is a subtype of T. Symbolically: That is, if S subtypes T, what holds for T-objects holds for S-objects.In the same paper, Liskov and Wing detailed their notion of behavioral subtyping in an extension of Hoare logic, which bears a certain resemblance to Bertrand Meyer's design by contract in that it considers the interaction of subtyping with preconditions, postconditions and invariants. (en)
- リスコフの置換原則(りすこふのちかんげんそく、英: Liskov substitution principle)は、オブジェクト指向プログラミングにおいて、サブタイプのオブジェクトはスーパータイプのオブジェクトの仕様に従わなければならない、という原則である。リスコフの置換原則を満たすサブタイプを と呼ぶ。 リスコフの置換原則の概念は最初、1987年10月のOOPSLAでのバーバラ・リスコフの基調講演 “Data abstraction and hierarchy”にて、インフォーマルな形で紹介された。より形式的な定義は1994年のリスコフとの共著論文 “A Behavioral Notion of Subtyping” で与えられた。 (ja)
- 치환성(영어: substitutability)은 객체 지향 프로그래밍 원칙이다. 컴퓨터 프로그램에서 자료형 가 자료형 의 서브타입라면 필요한 프로그램의 속성(정확성, 수행하는 업무 등)의 변경 없이 자료형 의 객체를 자료형 의 객체로 교체(치환)할 수 있어야 한다는 원칙이다. 리스코프 치환 원칙(영어: Liskov substitution principle, LSP)은 바바라 리스코프가 자료 추상화와 계층 (Data abstraction and hierarchy)이라는 제목으로 기조연설을 한 1987년 컨퍼런스에서 처음 소개한 내용으로, 이 원칙을 엄밀한 용어로 말하자면 (강한) 행동적 하위형화라 부르는 하위형화 관계의 특정한 사례이다. 이 정의는 1994년 논문에서 다음 원칙을 만들어낸 자료형의 의미론적 상호처리를 보장하기 때문에 단순한 문법적 관계일 뿐만 아니라 의미론적 관계다. 를 자료형 의 객체 에 대해 증명할 수 있는 속성이라 하자. 그렇다면 가 의 하위형이라면 는 자료형 의 객체 에 대해 증명할 수 있어야 한다. 같은 논문에서 리스코프와 윙은 사전 및 사후 조건으로 하위형화의 상호 작용을 고려함으로써 행동 하위형화 개념을 베르트랑 메이어의 계약에 의한 설계와 분명한 유사성을 지닌 호어 논리의 확장으로 자세히 설명한다. (ko)
- Het substitutieprincipe van Liskov, ook wel Liskov Substitution Principle (LSP) genoemd, is een principe uit het objectgeoriënteerd programmeren met betrekking tot het overerven. Het principe luidt als volgt: Stel is een aantoonbare eigenschap van de objecten van het type . Dan zou een aantoonbare eigenschap van de objecten van het type moeten zijn, waarbij een subtype is van . Dit principe houdt in dat als de basisklasse T gebruikt wordt in een programma, het programma ook correct dient te werken met alle specifieke implementaties van T, zonder wijzigingen in het programma te hoeven maken. Het substitutieprincipe van Liskov werd voorgesteld in 1987 door Barbara Liskov op de conferentie Data abstraction and hierarchy en werd in 1993 geformuleerd. (nl)
- Nella programmazione orientata agli oggetti il principio di sostituzione di Liskov (Liskov substitution principle) è una particolare definizione di sottotipo, introdotta da Barbara Liskov e nel 1993. La formulazione sintetica del principio è la seguente: "Se è una proprietà che si può dimostrare essere valida per oggetti di tipo , allora deve essere valida per oggetti di tipo dove è un sottotipo di ." Questa nozione di sottotipo è quindi basata sulla nozione di sostituibilità secondo cui, se S è un sottotipo di T, allora oggetti dichiarati in un programma di tipo T possono essere sostituiti con oggetti di tipo S senza alterare la correttezza dei risultati del programma. Nella metodologia di programmazione chiamata progettazione per contratto (Design by contract), questo principio pone alcuni vincoli sulle modalità con cui i contratti possono interagire con l'ereditarietà:
* i prerequisiti richiesti ad una superclasse devono essere almeno altrettanto vincolanti di quelli richiesti alle sottoclassi;
* le postcondizioni e gli invarianti in una sottoclasse devono essere almeno altrettanto vincolanti di quelle delle sue superclassi. Inoltre il principio non ammette la presenza di eccezioni più ampie nelle sottoclassi. (it)
- Zasada podstawienia Liskov (ang. Liskov substitution principle) – zasada projektowania w programowaniu obiektowym mówiąca, że: Funkcje które używają wskaźników lub referencji do klas bazowych, muszą być w stanie używać również obiektów klas dziedziczących po klasach bazowych, bez dokładnej znajomości tych obiektów. Inaczej mówiąc, klasa dziedzicząca powinna tylko rozszerzać możliwości klasy bazowej i w pewnym sensie nie zmieniać tego, co ona robiła już wcześniej. Mówiąc jeszcze inaczej — jeśli będziemy tworzyć egzemplarz klasy potomnej, to niezależnie od tego, co znajdzie się we wskaźniku na zmienną, wywoływanie metody, którą pierwotnie zdefiniowano w klasie bazowej, powinno dać te same rezultaty. Zasada została sformułowana po raz pierwszy przez Barbarę Liskov w książce Data Abstraction and Hierarchy, a spopularyzowana i podana w obecnym brzmieniu przez w artykule "Principles of Object Oriented Design" oraz książce "Agile Software Development: Principles, Patterns, and Practices" (pl)
- Na programação orientada a objeto, o princípio da substituição de Liskov é uma definição particular para o conceito de . Foi introduzido em 1993 por Barbara Liskov e através de um artigo de nome Family Values: A Behavioral Notion of Subtyping. Para outra definição de subtipo ver tipo de dado. O princípio foi definido de forma resumida como: Se é uma propriedade demonstrável dos objetos de tipo . Então deve ser verdadeiro para objetos de tipo onde é um subtipo de . Portanto, a visão de "subtipo" defendida por Liskov e Wing é baseada na noção da substituição; isto é, se S é um subtipo de T, então os objetos do tipo T, em um programa, podem ser substituídos pelos objetos de tipo S sem que seja necessário alterar as propriedades deste programa. (pt)
- Принцип подстановки Барбары Лисков (англ. Liskov Substitution Principle, LSP) в объектно-ориентированном программировании является специфичным определением подтипа, предложенным Барбарой Лисков в 1987 году на конференции в основном докладе под названием Абстракция данных и иерархия. В последующей статье Лисков кратко сформулировала свой принцип следующим образом: Пусть является свойством, верным относительно объектов некоторого типа . Тогда также должно быть верным для объектов типа , где является подтипом типа . Роберт С. Мартин определил этот принцип так: Функции, которые используют базовый тип, должны иметь возможность использовать подтипы базового типа, не зная об этом. Таким образом, идея Лисков о «подтипе» даёт определение понятия замещения — если S является подтипом T, тогда объекты типа T в программе могут быть замещены объектами типа S без каких-либо изменений желательных свойств этой программы (например, корректность). Этот принцип является важнейшим критерием для оценки качества принимаемых решений при построении иерархий наследования. Сформулировать его можно в виде простого правила: тип S будет подтипом Т тогда и только тогда, когда каждому объекту oS типа S соответствует некий объект oT типа T таким образом, что для всех программ P, реализованных в терминах T, поведение P не будет меняться, если oT заменить на oS. Более простыми словами можно сказать, что поведение наследующих классов не должно противоречить поведению, заданному базовым классом, то есть поведение наследующих классов должно быть ожидаемым для кода, использующего переменную базового типа. Саттер и Александреску в своём руководстве по использованию C++ для выражения этого принципа также используют фразу «подкласс не должен требовать от вызывающего кода больше, чем базовый класс, и не должен предоставлять вызывающему коду меньше, чем базовый класс». По мнению данных авторов, публичное наследование в C++ можно употреблять только тогда, когда оно удовлетворяет принципу Лисков. Приватное наследование, по их же мнению, дозволено использовать для доступа к protected части базы и перекрытия виртуальных методов. В любом же ином случае, то есть для всего лишь повторного использования кода из базы, наследование применять нельзя. Основания: использование публичного наследования для повторного использования кода приводит к тому, что внешний мир начинает считать класс Derived разновидностью класса Base, и возможно появление кода, явно использующего этот факт. Это сильно сужает простор для манёвра архитектора в дальнейшем поддержании и рефакторинге класса Derived. (ru)
- Принцип заміщення Лісков (англ. Liskov Substitution Principle, LSP) в об'єктно-орієнтованому програмуванні — це спеціальне визначення , запропоноване Барбарою Лісков у 1987 році на конференції у доповіді під назвою "Абстракція даних та ієрархія". У своїй статті Лісков сформулювала свій принцип так: Нехай є властивістю правильною для об'єктів деякого типу . Тоді також має бути правильним для об'єктів типу , де — підтип типу . Таким чином ідея Лісков про «підтип» визначає поняття заміщення — якщо S підтип T, тоді об'єкти типу T в програмі можуть бути заміщені об'єктами типу S без будь-яких змін бажаних властивостей цієї програми (наприклад, ). Цей принцип — найважливіший критерій для оцінки якості ухвалених рішень при побудові ієрархій успадкування. Сформулювати його можна у вигляді простого правила: тип S буде підтипом Т тоді і тільки тоді, коли кожному об'єктові o1 типу S відповідає певний об'єкт o2 типу T таким чином, що для всіх програм P, реалізованих в термінах T, поведінка P не зміниться, якщо o2 замінити на o1. Принцип Лісков є суворішим за поняття підтипу в теорії типів, яка вимагає тільки:
* коваріантність методів за типом результату;
* контраваріантність методів за типами аргументів;
* заборону в методах підтипу викиду винятків, які не є похідними від типів винятків, що викидаються методами базового типу. Див. коваріантність і контраваріантність і типи даних. (uk)
- 在面向对象的程序设计中,里氏替换原则(Liskov Substitution principle)是对子类型的特别定义。它由芭芭拉·利斯科夫(Barbara Liskov)在1987年在一次会议上名为“数据的抽象与层次”的演说中首先提出。 里氏替换原则的内容可以描述为:“派生类(子类)对象可以在程式中代替其基类(超类)对象。”以上内容并非利斯科夫的原文,而是译自罗伯特·马丁(Robert Martin)对原文的解读。其原文为: Let be a property provable about objects of type . Then should be true for objects of type where is a subtype of . 芭芭拉·利斯科夫与周以真(Jeannette Wing)在1994年发表论文并提出以上的Liskov代換原則。 (zh)
|
rdfs:comment
|
- Principio de sustitución de Liskov o LSP (Liskov Substitution Principle) es un principio de la programación orientada a objetos.y puede definirse como: Cada clase que hereda de otra puede usarse como su padre sin necesidad de conocer las diferencias entre ellas. (es)
- Le principe de substitution de Liskov (LSP) est, en programmation orientée objet, une définition particulière de la notion de sous-type. Il a été formulé par Barbara Liskov et Jeannette Wing dans un article intitulé Family Values: A Behavioral Notion of Subtyping : Liskov et Wing en ont proposé la formulation condensée suivante : Si est une propriété démontrable pour tout objet de type , alors est vraie pour tout objet de type tel que est un sous-type de . (fr)
- リスコフの置換原則(りすこふのちかんげんそく、英: Liskov substitution principle)は、オブジェクト指向プログラミングにおいて、サブタイプのオブジェクトはスーパータイプのオブジェクトの仕様に従わなければならない、という原則である。リスコフの置換原則を満たすサブタイプを と呼ぶ。 リスコフの置換原則の概念は最初、1987年10月のOOPSLAでのバーバラ・リスコフの基調講演 “Data abstraction and hierarchy”にて、インフォーマルな形で紹介された。より形式的な定義は1994年のリスコフとの共著論文 “A Behavioral Notion of Subtyping” で与えられた。 (ja)
- 在面向对象的程序设计中,里氏替换原则(Liskov Substitution principle)是对子类型的特别定义。它由芭芭拉·利斯科夫(Barbara Liskov)在1987年在一次会议上名为“数据的抽象与层次”的演说中首先提出。 里氏替换原则的内容可以描述为:“派生类(子类)对象可以在程式中代替其基类(超类)对象。”以上内容并非利斯科夫的原文,而是译自罗伯特·马丁(Robert Martin)对原文的解读。其原文为: Let be a property provable about objects of type . Then should be true for objects of type where is a subtype of . 芭芭拉·利斯科夫与周以真(Jeannette Wing)在1994年发表论文并提出以上的Liskov代換原則。 (zh)
- Liskovové princip zastoupení (Liskov substitution principle) je princip objektově orientovaného programování, který říká, že pokud v počítačovém programu je S potomkem předka T, potom objekty typu T mohou být nahrazeny objekty typu S (např. objekt typu T lze zastoupit jakýmkoliv objektem potomka S) beze změny jakékoliv potřebné vlastnosti předka T. Liskovové princip zastoupení je formálněji konkrétní definicí vztahu dědění (subtyping) nazvaného (strong) behavioral subtyping, kterou poprvé představila na konferenci v roce 1987 Barbara Liskovová v hlavním příspěvku s názvem Data abstraction and hierarchy. Jedná se spíše o sémantický než syntaktický vztah, protože předpokládá sémantickou zaměnitelnost typů v hierarchii, zejména zaměnitelnost jejich objektů. Barbara Liskov a tento princip v r (cs)
- Das Liskovsche Substitutionsprinzip (LSP) oder Ersetzbarkeitsprinzip ist ein Kriterium in der objektorientierten Programmierung, das die Bedingungen zur Modellierung eines Datentyps für seinen Untertyp angibt. Es besagt, dass ein Programm, das Objekte einer Basisklasse T verwendet, auch mit Objekten der davon abgeleiteten Klasse S korrekt funktionieren muss, ohne dabei das Programm zu verändern. Sei eine beweisbare Eigenschaft von Objekten des Typs . Dann soll für Objekte des Typs wahr sein, wobei ein Untertyp von ist.“ (de)
- The Liskov substitution principle (LSP) is a particular definition of a subtyping relation, called strong behavioral subtyping, that was initially introduced by Barbara Liskov in a 1988 conference keynote address titled Data abstraction and hierarchy. It is based on the concept of "substitutability" – a principle in object-oriented programming stating that an object (such as a class) may be replaced by a sub-object (such as a class that extends the first class) without breaking the program. It is a semantic rather than merely syntactic relation, because it intends to guarantee semantic interoperability of types in a hierarchy, object types in particular. Barbara Liskov and Jeannette Wing described the principle succinctly in a 1994 paper as follows: (en)
- Nella programmazione orientata agli oggetti il principio di sostituzione di Liskov (Liskov substitution principle) è una particolare definizione di sottotipo, introdotta da Barbara Liskov e nel 1993. La formulazione sintetica del principio è la seguente: "Se è una proprietà che si può dimostrare essere valida per oggetti di tipo , allora deve essere valida per oggetti di tipo dove è un sottotipo di ." Inoltre il principio non ammette la presenza di eccezioni più ampie nelle sottoclassi. (it)
- 치환성(영어: substitutability)은 객체 지향 프로그래밍 원칙이다. 컴퓨터 프로그램에서 자료형 가 자료형 의 서브타입라면 필요한 프로그램의 속성(정확성, 수행하는 업무 등)의 변경 없이 자료형 의 객체를 자료형 의 객체로 교체(치환)할 수 있어야 한다는 원칙이다. 리스코프 치환 원칙(영어: Liskov substitution principle, LSP)은 바바라 리스코프가 자료 추상화와 계층 (Data abstraction and hierarchy)이라는 제목으로 기조연설을 한 1987년 컨퍼런스에서 처음 소개한 내용으로, 이 원칙을 엄밀한 용어로 말하자면 (강한) 행동적 하위형화라 부르는 하위형화 관계의 특정한 사례이다. 이 정의는 1994년 논문에서 다음 원칙을 만들어낸 자료형의 의미론적 상호처리를 보장하기 때문에 단순한 문법적 관계일 뿐만 아니라 의미론적 관계다. 를 자료형 의 객체 에 대해 증명할 수 있는 속성이라 하자. 그렇다면 가 의 하위형이라면 는 자료형 의 객체 에 대해 증명할 수 있어야 한다. (ko)
- Het substitutieprincipe van Liskov, ook wel Liskov Substitution Principle (LSP) genoemd, is een principe uit het objectgeoriënteerd programmeren met betrekking tot het overerven. Het principe luidt als volgt: Stel is een aantoonbare eigenschap van de objecten van het type . Dan zou een aantoonbare eigenschap van de objecten van het type moeten zijn, waarbij een subtype is van . Het substitutieprincipe van Liskov werd voorgesteld in 1987 door Barbara Liskov op de conferentie Data abstraction and hierarchy en werd in 1993 geformuleerd. (nl)
- Zasada podstawienia Liskov (ang. Liskov substitution principle) – zasada projektowania w programowaniu obiektowym mówiąca, że: Funkcje które używają wskaźników lub referencji do klas bazowych, muszą być w stanie używać również obiektów klas dziedziczących po klasach bazowych, bez dokładnej znajomości tych obiektów. (pl)
- Na programação orientada a objeto, o princípio da substituição de Liskov é uma definição particular para o conceito de . Foi introduzido em 1993 por Barbara Liskov e através de um artigo de nome Family Values: A Behavioral Notion of Subtyping. Para outra definição de subtipo ver tipo de dado. O princípio foi definido de forma resumida como: Se é uma propriedade demonstrável dos objetos de tipo . Então deve ser verdadeiro para objetos de tipo onde é um subtipo de . (pt)
- Принцип подстановки Барбары Лисков (англ. Liskov Substitution Principle, LSP) в объектно-ориентированном программировании является специфичным определением подтипа, предложенным Барбарой Лисков в 1987 году на конференции в основном докладе под названием Абстракция данных и иерархия. В последующей статье Лисков кратко сформулировала свой принцип следующим образом: Пусть является свойством, верным относительно объектов некоторого типа . Тогда также должно быть верным для объектов типа , где является подтипом типа . Роберт С. Мартин определил этот принцип так: (ru)
- Принцип заміщення Лісков (англ. Liskov Substitution Principle, LSP) в об'єктно-орієнтованому програмуванні — це спеціальне визначення , запропоноване Барбарою Лісков у 1987 році на конференції у доповіді під назвою "Абстракція даних та ієрархія". У своїй статті Лісков сформулювала свій принцип так: Нехай є властивістю правильною для об'єктів деякого типу . Тоді також має бути правильним для об'єктів типу , де — підтип типу . Принцип Лісков є суворішим за поняття підтипу в теорії типів, яка вимагає тільки: Див. коваріантність і контраваріантність і типи даних. (uk)
|