En Rubí ¿cuál es la diferencia entre los dos (en código):Diferencia entre. y #
Class.method
Class#method
En Rubí ¿cuál es la diferencia entre los dos (en código):Diferencia entre. y #
Class.method
Class#method
El formato hash (método Class #) no es ruby válido, pero se usa en la documentación para describir un método de instancia.
Los métodos de clase generalmente se documentan usando un doble punto (método Class ::).
Verá ejemplos tanto en los documentos de rubí (por ejemplo http://www.ruby-doc.org/core-1.9.3/String.html)
El formato de punto se utiliza en código cuando en realidad llamar un método de clase (Class.method), aunque he visto algunas personas (desafortunadamente) usarlo indistintamente con el doble punto o el hash en la documentación.
Es una convención de nomenclatura.
#method
de los métodos de instancia.method
de métodos de clasebasado en esa publicación de blog súper escueta solo? ¿No debería seguirse el formato de documentación, es decir, 'Class :: method' para un método de clase? – Todd
Estoy con cdn en este caso. Los documentos de Ruby son una fuente canónica, la publicación del blog no es autoritativa y '.method' es confuso porque todos los métodos se llaman de esa manera. Además de eso, se accede a las constantes de clase a través de '::' por lo que tiene sentido. –
Class#method
no es un código válido. Solo se usa en la documentación. método debe ser un método de instancia.
Class.method
o object.method es el método real que pertenece al objeto. La clase también es un objeto. Es un código válido.
En el código, el primero es una llamada a un método, mientras que el segundo es un comentario. –