Nodejs项目典型目录结构

技术文档网 2021-05-07

项目的组织就犹如行军作战的阵法和章法,混乱而无目的的军队几乎不可能打胜仗,有其形,有其魂的组织的生命周期才会更长,其形态才更稳固。 --《深入浅出Nodejs》

这一篇我们来聊聊结缘的项目结构。由于结缘是web应用,我们以常见的MVC为主要框架,然后在这个基础上进行扩展。结合卜灵的《深入浅出Nodejs》产品化一章中的应用项目结构以及之前做的项目的一些经验,结缘的目录结构如下:

.
├── CHANGELOG.md //网站的变更历史
├── INSTALL.md // 安装说明
├── LICENSE // 遵循的网络协议
├── Makefile //Makefile 文件
├── README.md
├── api //提供给移动端调用的api逻辑,类似web端的controllers
├── app.js
├── benchmark //基准测试
├── bin //可执行文件目录
├── config //设置文件目录
├── controllers //控制器
├── dispatch.js //多进程管理
├── libs //没有模块化得文件目录
├── logs //存放log信息
├── middlewares //中间件
├── models //数据库模型文件
├── node_modules // nodejs库
├── npm-debug.log // 忽略,npm的log文件
├── package.json //描述文件,依赖配置
├── proxy // 数据代理目录
├── public //静态文件目录
├── routes //路由处理目录
├── routes.js // 路由注册文件
├── test //测试文件目录
├── tools //工具文件目录
└── views // 视图目录

16 directories, 10 files

这里也没啥特别要注意的,这里的Makefile作为构建工具后面可能被gulp替代以实现更多定制和跨平台特性,models文件和传统的模型概念上不同,是用来描述数据库的Schema的,传统的模型和proxy更加接近,proxy提供对数据库数据的代理方法。

相关文章

  1. 使用NodeJS搭建你的微信机器人

    你可以把该程序运行在任何支持 NodeJS 的云平台,或者你自己的 VPS 上。 首先你需要理解几个概念: node.js -使用v8引擎的服务器端 JavaScript npm - nodejs

  2. webpack和browserify用法

    这两种技术都是使用按需加载的模块化的思想来开发项目,让我可以按照node的require模块的方法写前端代码。。 两者用法、思想相差不大 1.webpack的安装及使用方法 安装webpack:

  3. 基于webpack的前后端分离开发实践

    前后端分离开发分析 前后端开发分离,即是前后端除商定 API 接口外,其他的开发工作都不再相互干涉,前端开发进度不再受后端影响。 以开发一个 SPA 单页应用为例,日常开发工作流程变为: 前后端同设

  4. Node多版本管理

    为每个项目指定运行的Node版本 nvm 安装nvm, 用于下载和管理NodeJS的版本$ curl -o- https://raw.githubusercontent.com/creationix

  5. nodejs的客户端deploy墨客子链

    前提条件: 已经在本地建了一个私有链,已经启动了vnode,已经启动两个scs 在vnode上已经有了主账户,并已经启动miner.start(),并且主账户已经有至少200个moac 假设你的主账

随机推荐

  1. 使用NodeJS搭建你的微信机器人

    你可以把该程序运行在任何支持 NodeJS 的云平台,或者你自己的 VPS 上。 首先你需要理解几个概念: node.js -使用v8引擎的服务器端 JavaScript npm - nodejs

  2. webpack和browserify用法

    这两种技术都是使用按需加载的模块化的思想来开发项目,让我可以按照node的require模块的方法写前端代码。。 两者用法、思想相差不大 1.webpack的安装及使用方法 安装webpack:

  3. 基于webpack的前后端分离开发实践

    前后端分离开发分析 前后端开发分离,即是前后端除商定 API 接口外,其他的开发工作都不再相互干涉,前端开发进度不再受后端影响。 以开发一个 SPA 单页应用为例,日常开发工作流程变为: 前后端同设

  4. Node多版本管理

    为每个项目指定运行的Node版本 nvm 安装nvm, 用于下载和管理NodeJS的版本$ curl -o- https://raw.githubusercontent.com/creationix

  5. nodejs的客户端deploy墨客子链

    前提条件: 已经在本地建了一个私有链,已经启动了vnode,已经启动两个scs 在vnode上已经有了主账户,并已经启动miner.start(),并且主账户已经有至少200个moac 假设你的主账