Resultados da pesquisa a pedido "liskov-substitution-principle"

3 a resposta

Por que o Rust não suporta upcasting de objetos de característica?

Dado este código: trait Base { fn a(&self); fn b(&self); fn c(&self); fn d(&self); } trait Derived : Base { fn e(&self); fn f(&self); fn g(&self); } struct S; impl Derived for S { fn e(&self) {} fn f(&self) {} fn g(&self) {} } impl Base for S { ...

2 a resposta

Por que é impossível substituir `var` por` def` no Scala?

Enquanto eu entendo por que umvar não pode substituir umval na subclasse e vice-versa, não consigo entender por que Scala não permite umadef na subclasse para substituir umvar na superclasse class Car { var age = 32 } class SedanCar extends Car ...

2 a resposta

Isso resolve a violação de retângulo quadrado Liskov Substituição?

Sou muito novo nos princípios de design do SOLID. Uma coisa que eu tive problema com a compreensão é o exemplo do "Retângulo Quadrado" de uma viola...

27 a resposta

What is an example of the Liskov Substit,ution Principle

Ouvi dizer que o Princípio de Substituição de Liskov (LSP) é um princípio fundamental do design orientado a objetos. O que é e quais são alguns exemplos de seu uso?

5 a resposta

O relacionamento de implementação da interface C # é apenas um relacionamento "fácil de fazer"?

Hoje alguém me disse que a implementação da interface em C # é apenas um relacionamento "Impossível", não um "Im-A". Isso entra em conflito com minha crença de longa data no LSP (Princípio de Substituição de Liskov). Eu sempre acho que toda ...

4 a resposta

Isso viola o princípio da substituição de Liskov e, em caso afirmativo, o que devo fazer?

Caso de uso: estou usando modelos de dados para corresponder uma View a um ViewModel. Os modelos de dados funcionam inspecionando o tipo mais derivado do tipo concreto fornecido, e eles não olham para quais interfaces ele fornece, então eu tenho ...

5 a resposta

Por que a matriz implementa IList?

Veja a definição de System.Array class public abstract class Array : IList, ... Teoricamente, eu deveria ser capaz de escrever este pedaço e ser feliz int[] list = new int[] {}; IList iList = (IList)list; Eu também devo chamar qualquer método ...

2 a resposta

Ao aderir ao Princípio de Substituição de Liskov (LSP), uma classe filho pode implementar uma interface adicional?

Considere este exemplo de ruby class Animal def walk # In our universe all animals walk, even whales puts "walking" end def run # Implementing to conform to LSP, even though only some animals run raise NotImplementedError end end class Cat < ...

8 a resposta

osso implementar uma série de testes reutilizáveis para testar a implementação de uma interfac

Estou escrevendo uma série de classes de coleção em C #, cada uma das quais implementando interfaces personalizadas semelhantes. É possível escrever uma única coleção de testes de unidade para uma interface e executá-los automaticamente em ...

8 a resposta

A derivação do quadrado do retângulo é uma violação do Princípio de Substituição de Liskov? [fechadas]

Eu sou novo para projetar e aprender os princípios de design.Diz que derivar quadrados do retângulo é um exemplo clássico de violação do Princípio de Substit...