You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
I was relatively unsurprised when I first saw you describe YouAreDaChef as a "vile creation". I've long known JavaScript bestowed plenty of power to library authors to shoot themselves in the foot in the code interoperation department. I was only surprised when I looked up YouAreDaChef, and discovered that you are its project leader and primary developer. Can you please explain what differentiates YouAreDaChef from allong.es, what about YouAreDaChef's approach makes it so "vile", and what you would have done differently with YouAreDaChef had you been designing it today?
I was being sarcastic. Somewhat. YouAreDaChef "greenspuns" fairly sophisticated aspect-oriented programming into JavaScript, but in doing so, it kind of "takes over" the way you use prototypes and method definitions.
In Ruby, Rails does a similar thing with its method lifecycles for models. No other class allows you to write things like after_save :write_announcement_to_log.
Is that a good thing or a bad thing? Well, it can be a very good thing in limited contexts. For example, if you are writing a framework (OSS or internal), and want to allow programmers to patch in extra behaviour on top of the classes you provide, YouAreDaChef might be perfect.
Reg,
I was relatively unsurprised when I first saw you describe YouAreDaChef as a "vile creation". I've long known JavaScript bestowed plenty of power to library authors to shoot themselves in the foot in the code interoperation department. I was only surprised when I looked up YouAreDaChef, and discovered that you are its project leader and primary developer. Can you please explain what differentiates YouAreDaChef from allong.es, what about YouAreDaChef's approach makes it so "vile", and what you would have done differently with YouAreDaChef had you been designing it today?
Thanks,
-Loren Osborn
P.S. The comment I'm referring to is at the bottom of https://github.com/raganwald/javascript-allonge/blob/master/manuscript/markdown/Instances%20and%20Classes/class.md
The text was updated successfully, but these errors were encountered: