Ответ 1
Не совсем уверен, о чем говорит большинство этих людей.
"Огромный океан библиотек" - это то, над чем активно работает сообщество. Проверьте это: http://search.npmjs.org/#/_analytics - вчера было опубликовано 8 пакетов
Не собирается решать вам ваш дизайн программного обеспечения. Что касается того, где и как писать бизнес-логику, многие из нас охватывают mvc или mvvm или что-то близкое к нему. Если вы создаете приложение и как рубисты (например) структурируете свой код, вы можете посмотреть на что-то подобное - никто не собирается рассказывать вам, как структурировать ваш код.
Проверить https://github.com/joyent/node/wiki/modules
Некоторые из наиболее популярных библиотек для повседневной работы:
- Экспресс: http://expressjs.com/ - https://github.com/visionmedia/express
- Sinatra вдохновила, использует его для создания типичного веб-приложения.
- Статистика: 3407 наблюдателей, 286 вилок, по запросу 778
- Сравните это с самой Синатрой! 2529 наблюдателей, 366 вилок
- При подключении он поддерживает все виды промежуточного программного обеспечения:
- сеансы,
- все виды маршрутизации,
- статические файлы
- около 15 различных шаблонных двигателей
- проверка, обработка формы и т.д. и т.д.
- Socket.io: http://socket.io/ - сделать его "в режиме реального времени"
- DNode: https://github.com/substack/dnode - делать rpc между чем-либо
- Backbone.js: http://documentcloud.github.com/backbone/ - MVC
- Разнообразие методов повторного использования ваших моделей на сервере:
- http://andyet.net/blog/2011/feb/15/re-using-backbonejs-models-on-the-server-with-node/
- Spine.js: http://maccman.github.com/spine.tutorials/index.html - MCV
- Методы повторного использования кода на сервере:
- http://maccman.github.com/spine.tutorials/node.html
- caolan/async: https://github.com/caolan/async - Помогите справиться с бизнес-логикой асинхронизации
- База данных, выберите свое местоположение
- node_redis, https://github.com/mranney/node_redis - или один из восьми других клиентов
- "Это полный клиент Redis для node.js. Он поддерживает все команды Redis"
- node -mysql, https://github.com/felixge/node-mysql - или один из одиннадцати других клиентов/ормов
- node -mongodb-native, https://github.com/christkv/node-mongodb-native
- node -postgres, https://github.com/brianc/node-postgres
- node_redis, https://github.com/mranney/node_redis - или один из восьми других клиентов
Там также множество ORM, если это ваша сумка. Такие вещи, как http://mongoosejs.com/, http://sequelizejs.com/ и друзья
Разработка, основанная на испытаниях, лежит в основе node. Существует 15 различных пакетов TDD для выбора из этого диапазона от полного анализа покрытия кода до настраиваемых модулей подтверждения.
Говорить, что все модули неполны, глупы. В этом сообществе существует невероятно целеустремленная группа людей, которые строят и поддерживают тонны работы с открытым исходным кодом каждый день.
Могут быть причины для перехода через node, но это не для неактивного сообщества или отсутствия библиотек.