Não é o ponto principal de uma interface que várias classes aderem a um conjunto de regras e
Perguntas sobre considerações de design relacionadas à interface, como programação para a interface.
Não é o ponto principal de uma interface que várias classes aderem a um conjunto de regras e
Recentemente, iniciei um novo trabalho em que estou trabalhando em um aplicativo muito grande (15M loc). No meu trabalho anterior, tínhamos um aplicativo igualmente grande, mas (para melhor ou para pior), usamos o OSGi, o que significava que o aplicativo era dividido em vários microsserviços que...
Eu tenho estudado e codificado em C # há algum tempo. Mas, ainda assim, não consigo entender a utilidade das interfaces. Eles trazem muito pouco para a mesa. Além de fornecer as assinaturas da função, eles não fazem nada. Se me lembro dos nomes e assinaturas das funções que precisam ser...
Eu sempre leio que a composição deve ser preferida à herança. Um post de blog sobre tipos diferentes , por exemplo, defende o uso da composição sobre a herança, mas não vejo como o polimorfismo é alcançado. Mas tenho a sensação de que, quando as pessoas dizem que preferem composição, elas...
No Java 8, as interfaces podem conter métodos implementados, métodos estáticos e os chamados métodos "padrão" (que as classes de implementação não precisam substituir). Na minha opinião (provavelmente ingênua), não havia necessidade de violar interfaces como essa. As interfaces sempre foram um...
No momento, há um debate em nossa equipe sobre se modificar o design do código para permitir o teste de unidade é um cheiro de código ou até que ponto isso pode ser feito sem ser um cheiro de código. Isso aconteceu porque estamos apenas começando a implementar práticas que estão presentes em...
Estudando o curso para iniciantes sobre interface de hardware / software e sistemas operacionais, muitas vezes surgem o tópico de se seria melhor substituir algumas peças de hardware por software e vice-versa. Não consigo fazer a
Eu tenho lido " Código Limpo ", de Robert Martin, para se tornar um programador melhor. Embora nada até agora tenha sido realmente inovador, isso me fez pensar de maneira diferente sobre a maneira como desenvolvo aplicativos e escrevo código. Há uma parte do livro com a qual eu não apenas não...
"Classe abstrata" e "interface" são conceitos semelhantes, sendo a interface o mais abstrato dos dois. Um fator de diferenciação é que as classes abstratas fornecem implementações de métodos para classes derivadas quando necessário. No C #, no entanto, esse fator de diferenciação foi reduzido pela...
O que é melhor e por quê? (Do ponto de vista do design da interface): a) Ter dois Show()e Hide()funções b) Ter uma SetVisible(bool visible)função EDIT: Por exemplo, algum objeto tem estado de visibilidade e esta função é usada para alterá-lo. c) ter todos os três Show(), Hide(), SetVisible(bool...
Em C #, o código a seguir é válido interface I{ int property{get;set;} } O que não faz nenhum sentido para mim. Isso parece quebrar um dos princípios mais importantes das interfaces: falta de estado (em outras palavras, nenhum campo). A propriedade não cria um campo privado implícito? Isso não...
Eu tenho um colega sentado ao meu lado que projetou uma interface como esta: public interface IEventGetter { public List<FooType> getFooList(String fooName, Date start, Date end) throws Exception; .... } O problema é que, no momento, não estamos usando esse parâmetro "end" em nenhum...
Na palestra instigadora de Rich Hickey, Goto Conference " The Value of Values ", aos 29 minutos, ele está falando sobre a sobrecarga de uma linguagem como Java e faz uma declaração como "Todas essas interfaces matam sua reutilização". O que ele quer dizer? Isso é verdade? Na minha busca por...
Uso interfaces raramente e as acho comuns em outros códigos. Também crio sub e super classes (ao criar minhas próprias classes) raramente no meu código. Isso é uma coisa ruim? Você sugeriria mudar esse estilo? Esse estilo tem algum efeito colateral? Isso é porque não trabalhei em nenhum grande...
Eu costumava criar muitas classes / métodos abstratos. Então eu comecei a usar interfaces. Agora não tenho certeza se as interfaces não estão tornando obsoletas as classes abstratas. Você precisa de uma aula totalmente abstrata? Crie uma interface em seu lugar. Você precisa de uma classe abstrata...
Notei que a partir do PHP5, as interfaces foram adicionadas à linguagem. No entanto, como o PHP é tão pouco digitado, parece que a maioria dos benefícios do uso de interfaces está perdida. Por que isso está incluído no
Após a leitura Os nomes dos pacotes devem ser singular ou plural? Ocorreu-me que nunca vi um debate adequado cobrindo uma das minhas irritações: nomear implementações de interfaces. Vamos supor que você tenha uma interface Orderque deve ser implementada de várias maneiras, mas existe apenas a...
Estou tentando entender bem como implementar uma boa dissociação entre uma interface do usuário e o modelo, mas estou tendo problemas para descobrir exatamente onde dividir as linhas. Eu estive analisando o Model-View-Presenter, mas não sei exatamente como proceder para implementá-lo. Por exemplo,...
Se minha classe é implementsuma interface, posso dizer que estou seguindo a herança? Eu sei que quando uma classe é extendsoutra, então é
Bem direto. Estou implementando uma interface, mas há uma propriedade desnecessária para essa classe e, de fato, não deve ser usada. Minha idéia inicial era fazer algo como: int IFoo.Bar { get { raise new NotImplementedException(); } } Suponho que não há nada errado com isso, por si só, mas não...