¿Qué es la dependencia en package.json - nodejs

En mi proyecto de nodo, construyo módulos independientes en la carpeta con main.js como punto de entrada y localizo los ayudantes para ese módulo en la misma carpeta que los diferentes archivos.

Ex:
Aggregator:
     |___package.json
     |___main.js
     |___node_modules
         |_____helper1.js
         |_____helper2.js

Por lo tanto, el nodo resolverá toda la dependencia de mis ayudantes para los módulos [Ej: Agregador] del localnode_modules carpeta. La razón de la estructura anterior es que no necesito preocuparme por el camino enrequire

Uso package.json para especificar que el punto de entrada es main.js incaserequire es para agregador

Ex:
//Sample.js
require('Aggregator'); // Resolves to Aggregator/main.js

Ej: package.json del módulo Aggregator

  {
        "name": "Aggregator"
      , "description": "Returns Aggregates"
      , "keywords": ["aggregate"]
      , "author": "Tamil"
      , "contributors": []
      , "dependencies": {
            "redis": "0.6.7"
        }
      , "lib"           : "."
      , "main"          : "./main.js"
      , "version"       : "1.0"
    }

Aquí ¿para qué es la columna de dependencia? Me referíesta enlazar. Mi código parece funcionar incluso si especifico la versión de redis como 10000 sin ninguna advertencia. Intenté eliminar mi módulo redis del proyecto para probar si el nodo lo recoge y resuelve la dependencia, pero no lo hizo. ¿Cuándo usar ese atributo de dependencia en package.json? ¿Es solo una nota para referencia futura?

npm versión 1.1.0-beta-4; versión de nodo v0.6.6

Respuestas a la pregunta(1)

Su respuesta a la pregunta