Preguntas etiquetadas con interfaces

Preguntas sobre consideraciones de diseño relacionadas con la interfaz, como la programación en la interfaz.


5
¿Tiene sentido definir una interfaz si ya tengo una clase abstracta?
Tengo una clase con alguna funcionalidad predeterminada / compartida. Yo uso abstract classpara ello: public interface ITypeNameMapper { string Map(TypeDefinition typeDefinition); } public abstract class TypeNameMapper : ITypeNameMapper { public virtual string Map(TypeDefinition typeDefinition) { if (typeDefinition is ClassDefinition classDefinition) { return Map(classDefinition); } ... throw new ArgumentOutOfRangeException(nameof(typeDefinition)); } protected …





1
¿Por qué no define CharSequence contiene (CharSequence)?
Esto se aplica tanto a Java SE como a Android, ya que los contratos son idénticos. Documentación de CharSequence para Java SE Documentación de CharSequence para Android CharSequenceno define un contains(CharSequence)método Parece que no puedo encontrar un motivo, e incluirlo sería bastante útil, evitando la necesidad de llamar CharSequence#toString()para verificar …



4
El término "interfaz" en C ++
Java hace una clara distinción entre classy interface. (Creo que C # también lo hace, pero no tengo experiencia con eso). Sin embargo, al escribir C ++ no existe una distinción forzada por el lenguaje entre la clase y la interfaz. En consecuencia, siempre he visto la interfaz como una …

3
¿Cómo difieren los tipos existenciales de las interfaces?
Dado el tipo existencial T = ∃X.{op₁:X, op₂:X→boolean} y esta interfaz genérica de Java: interface T<X> { X op₁(); boolean op₂(X something); } ¿Cuáles son las diferencias fundamentales entre el tipo existencial y la interfaz Java? Obviamente hay diferencias sintácticas y la orientación a objetos de Java (que también incluye …


5
Patrón de diseño de estrategia modificado
Recientemente comencé a buscar patrones de diseño, y una cosa que estoy codificando se adaptaría perfectamente al patrón de estrategia, excepto por una pequeña diferencia. Esencialmente, algunos (pero no todos) de mis algoritmos, necesitan que se les pase uno o dos parámetros adicionales. Entonces, o bien necesito les paso un …



Al usar nuestro sitio, usted reconoce que ha leído y comprende nuestra Política de Cookies y Política de Privacidad.
Licensed under cc by-sa 3.0 with attribution required.