Re:JavaScript Prototypes Made Easy
by jfaucett on Saturday June 30, 2012 @02:13PM
(#4182359)
great article that clearly articulates js prototypes. I'd have to disagree with ender7 though, I think JS prototypes are not a "poorly-designed system" they're just different from classical forms of OOP inheritance. And contrarily, I would recommend anyone to delve deeper into prototypes - an alternative method to class based OOP.
[ Parent
| on HN ]
It still could be much better designed though, compareed to othe rprototipical languages. Prototypes cannot be explicitly accessed or mutated, Object.create wasn't even part of the standard and the whole syntax with function constructors and having to set the prototype property is a very ugly hack.
I haven't used any other prototypical languages so I can't say how js compares... Can you give me the best prototypical language? - I'd like to check it out and see for myself. Still, as far as shimming up a clean cross browser API prototyping is extremely usefull.
I don't know much about this, but I've heard Self mentioned as the prototypical prototypical language many times.
It's the language where the idea came from originally. It's basically the Smalltalk of prototype-based OO :).
Here's a nice paper about it: http://ranger.uta.edu/~nystrom/courses/cse3302-fa10/selfPowe...
JavaScript's prototypes really are poorly designed, though. To see how it probably should have been done, check out the programming language Io (http://iolanguage.com/) or Douglas Crockford's note on prototypal inheritance in JavaScript at http://javascript.crockford.com/prototypal.html (specifically, the 2008-04-07 update).