En desuso
El apoyó la forma de marcar las funciones como obsoleto es algo como esto:
type MyStruct struct {
}
// MyFunc returns hello
// Deprecated: Use YourFunc
func (m MyStruct) MyFunc() string {
return "hello"
}
Moderno de los IDEs resaltar los usos de esta función y de pelusa también podría aumentar las advertencias (no he comprobado personalmente este)
Aceptar las interfaces. Volver estructuras.
Un popular mejor práctica es "Aceptar interfaces. Volver estructuras." - que tiende a fomentar SÓLIDO diseño en el software.
Sin embargo, el siguiente código que sigue las mejores prácticas - oculta el mismo mensaje de advertencia:
// MyInterface specifies a single function that we require from a dependency
type MyInterface interface {
MyFunc() string
}
func main() {
var v MyInterface
v = MyStruct{}
v.MyFunc()
}
Pregunta
Hay una solución a este problema?
Si yo fuera, por ejemplo, una biblioteca mantenedor: ¿cómo puedo asegurarme de que mi desaprobación advertencias son vistos por los usuarios de la biblioteca que también están siguiendo las mejores prácticas y la definición de su propia dependencia de las interfaces.