Por ejemplo — dicen que quiero agregar un método helloWorld()
al tipo dict de Python. ¿Puedo hacer esto?¿Puedo agregar métodos/atributos personalizados a los tipos de Python incorporados?
JavaScript tiene un objeto prototipo que se comporta de esta manera. Tal vez es un mal diseño y debería subclasificar el objeto dict, pero solo funciona en las subclases y quiero que funcione en todos los diccionarios futuros.
Así es como se reduciría en JavaScript:
String.prototype.hello = function() {
alert("Hello, " + this + "!");
}
"Jed".hello() //alerts "Hello, Jed!"
Aquí hay un enlace útil con más ejemplos — http://www.javascriptkit.com/javatutors/proto3.shtml
También puede hacerlo en ruby simplemente abriendo nuevamente la clase, es decir: clase String; def new_method() ...; end; Estoy bastante seguro de que Python tiene algo así también. –
@ Abdullah Creo que te estás refiriendo al parche de monos, que en su mayoría es desaprobado. –
Sí exactamente. Está hecho todo en Rails. –