Preguntas etiquetadas con method-chaining

5
Propósito de 'return self' de un método de clase?
Encontré algo como esto en un proyecto de código abierto. Los métodos que modifican los atributos de la instancia devuelven una referencia a la instancia. ¿Cuál es el propósito de esta construcción? class Foo(object): def __init__(self): self.myattr = 0 def bar(self): self.myattr += 1 return self


4
¿Cuál es el nombre del idioma usando el método de encadenamiento para construir un objeto?
Con frecuencia uso un patrón donde uso el método de encadenamiento para configurar un objeto, similar a un patrón Buildero Prototype, pero no creo nuevos objetos con cada llamada al método, sino que modifico el objeto original. Ejemplo: new Menu().withItem("Eggs").withItem("Hash Browns").withStyle("Diner"); Solo me pregunto si hay un nombre para este …




4
¿Hay algún inconveniente real en el encadenamiento de métodos autorreferenciales?
Hace poco sugerí que se implementara un método de encadenamiento para una clase determinada en un proyecto determinado para que se pudiera mejorar la legibilidad del código. Obtuve una respuesta de "las interfaces fluidas no deberían implementarse solo por conveniencia, sino por semántica" y mi sugerencia fue rechazada. Respondí que …

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.