3 ms·
Technically not if packages are just the misguided habit of "one package per function" seen in the Node ecosystem. Same amount of code, increased amount of comp
by weiming 8y ago
Technically not if packages are just the misguided habit of "one package per function" seen in the Node ecosystem. Same amount of code, increased amount of complexity/meta-problems to deal with.
- nailer 8y ago> Technically not if packages are just the misguided habit of "one package per function" seen in the Node ecosystem. No. Using a package for a single function doesn't preclude code reuse. Look at underscore.get package. You could write your own recursive key finder (which I have before), and so could every package author, and you'd have 10x the amount of implementations of a recursive key finder. A single require of underscore.get by you and other authors means you have a single, well tested implementation with a million other users rather than 10 low quality ones.
- weiming 8y agoWhy not one package per line of code? One package per expression? Surely, someone will want to reuse var x = a + b. const {get} = require("underscore.get"); get(obj, 'a[0].b', defaultValue); If your language requires this [1] just to be able to subscript things without going bonkers, it may be time for a new language. [1] https://github.com/NarHakobyan/underscore.get https://github.com/NarHakobyan/underscore.get
- nailer 8y ago> Why not one package per line of code? Exactly. If it's a difficult line of code, with edge cases, requiring unit tests, etc. then sure. Algorithms are a great example of this. Using your own example: how many badly written copies of https://github.com/NarHakobyan/underscore.get/blob/master/underscore-get.js https://github.com/NarHakobyan/underscore.get/blob/master/un... do you want?