Download - OOD - Princípio da Substituição de Liskov
Participantes:• João Batista Neto – Moderador Hoster
• Priscila Mayumi Sato – Slides
• Ivo nascimento – Controlador do chat
• Luís OtavioDaniel Ribeiro - Ignorado
Pauta• Repassar o que foi discutido no hangout passado e apontar o link
para a gravação.
• Abordar, com profundidade e exemplos, o princípio de design O.C.P.
• Aberto mas fechado, como algo pode ser aberto mas fechado?
• Como saber se meu código não está fechado?
• Ilustrar casos do mundo real, através de exemplos em frameworks ou bibliotecas conhecidas, o uso de L.S.P. e as consequências que esse uso trouxe para o FW ou biblioteca.
Substituição de Liskov• “O termo mais importante do principio de Liskov: o
cliente. Quando falamos de OO é a objetos. Temos o cliente que consome o objeto qualquer. No Liskov quando o cliente utiliza determinado participante ele precisa confiar no participante original. Seu participante consegue não ser alterado pela variação?
Essa é a grande pergunta do Liskov: poder substituir o participante sem alterar o cliente.” João
Substituição de Liskov• “Além da assinatura temos a expectativa do retorno.
No pre conditions iremos abortar o input e no pro conditions iremos abortar output.” Ivo
• “As classes derivas não podem ser mais fortes que as originais. Por exemplo: um dos parâmetros é um inteiro e a classe pai determina que ele é entre 1 e 10. A classe filha não pode restringir de 1 a 4, mas pode de 1 a 15. Essa é a questão do input.” Luiz Otávio
Substituição de Liskov• “O filho não pode ser mais restritiva que a classe pai.”
Ivo
• “Você pode substituir uma classe por sua classe base. A pergunta é: qual a consequência dessa substituição” João