Ho appena trovato  questo articolo , e in particolare,  questa risposta . In sostanza si tratta di restituire   self    dai metodi di istanza per consentire il concatenamento dei metodi. Detto questo, uno dei primi pensieri che mi è venuto in mente è stato,  Perché non prendere sempre i metodi di istanza con   void    tipi di ritorno e renderli restituiti   this    o   self    invece?  Il prossimo pensiero , che mi è venuto in mente immediatamente, era,  C'è probabilmente una ragione per cui questo non è più comune.  Quindi quale potrebbe essere il danno in esso? 
 Sembra che onestamente non ci sarebbe nessuno. Il motivo è che nulla sulla semplice esistenza di un valore di ritorno implica o sembra addirittura implicare la necessità di usare quel valore di ritorno. Se il metodo è un getter specializzato o un lettore di file o qualcosa del genere, questa è una cosa, ma se le persone non stanno cercando di usare il valore di ritorno, naturalmente non presteranno alcuna attenzione. Inoltre, non dovrebbe essere troppo confuso, perché   return this;    è piuttosto banale; al massimo, qualcuno probabilmente penserebbe che sia irrilevante. Sembra certamente che non danneggerebbe nulla, ed è generalmente meglio avere troppo o troppo poco.