5 ms·
Annotated Underscore.js Source Code – Good for Budding JavaScript Developers
- magic_beans 9y agoThis is amazingly helpful. Thank you for posting!
- p51ngh 9y agoHow did you go about creating this? I think it's super useful way of documenting code in general!
- bootcat 9y agoLook at docco comment above ! Just learnt myself !
- jevakallio 9y agoIt's written with Docco, a tool created by Jeremy Ashkenas. It's used in docs of his other projects, such as CoffeeScript and Backbone, too. http://ashkenas.com/docco/ http://ashkenas.com/docco/
- hacktothefuture 9y agoVery nice! Even those of us who don't consider ourselves "budding" have plenty to learn here.
- bootcat 9y agoFeel the same !
- armandososa 9y agoAlso interesting, even if it has become unfashionable these days, Backbone's annotated source: http://backbonejs.org/docs/backbone.html http://backbonejs.org/docs/backbone.html And the tool to make these: http://ashkenas.com/docco/ http://ashkenas.com/docco/
- bootcat 9y agoAmazing, to know about docco !!
- jevakallio 9y agoI love the annotated source code, but I wouldn't necessarily recommend the Underscore library code itself as learning material to budding developers - it's optimised for size and performance, not legibility and idiomatic style. I remember being a budding JS dev once upon a time, and being quite perplexed by it :)
- jashkenas 9y agoI quite agree that it's grown a bit gnarled and tangled with optimizations over the years. It's interesting to compare the current version to the earliest available copy of the annotated source code, from version 1.1.1, seven years ago, in a simpler JavaScript age: https://cdn.rawgit.com/jashkenas/underscore/1.1.1/docs/underscore.html https://cdn.rawgit.com/jashkenas/underscore/1.1.1/docs/under...
- mzzter 9y agoI've learned a lot from reading your underscore.js source code. For me, I started by reading and understanding the raw commented source code from the first release (without the initialization wrapper and initially confusing module setup): http://cdn.rawgit.com/jashkenas/underscore/f4299d7427abc59bca5b9c69904f25d0bf0f6791/underscore.js http://cdn.rawgit.com/jashkenas/underscore/f4299d7427abc59bc... Then I had an easier time following the annotated version after understanding how the other functions were built on top of each other in the simpler syntax.
- bootcat 9y agoWow, time flies and things get better with revision usually,
- KomradeKeeks 9y agoWould you happened to recall what projects/Etudes help you develop your programming skills? Asking for a friend
- pvsukale3 9y agoFor beginners annotated code of highly optimized library might become confusing. Try reading Mary Rose Cook's annotated code of 2 JS games and a Git clone http://annotated-code.maryrosecook.com/ http://annotated-code.maryrosecook.com/
- schemathings 9y agoLine 6: Naked function reference for surrogate-prototype-swapping. var Ctor = function(){}; TIL Ctor is short for constructor (?)
- teh_klev 9y agoProbably a bit long in the tooth now: http://robflaherty.github.io/jquery-annotated-source/ http://robflaherty.github.io/jquery-annotated-source/