Setelah beberapa tahun dengan node, saya dapat mengatakan bahwa tidak ada konvensi untuk struktur direktori / file. Namun kebanyakan aplikasi ekspres (profesional) menggunakan pengaturan seperti:
/
/bin - scripts, helpers, binaries
/lib - your application
/config - your configuration
/public - your public files
/test - your tests
Contoh yang menggunakan penyiapan ini adalah nodejs-starter .
Saya pribadi mengubah pengaturan ini menjadi:
/
/etc - contains configuration
/app - front-end javascript files
/config - loads config
/models - loads models
/bin - helper scripts
/lib - back-end express files
/config - loads config to app.settings
/models - loads mongoose models
/routes - sets up app.get('..')...
/srv - contains public files
/usr - contains templates
/test - contains test files
Menurut pendapat saya, yang terakhir lebih cocok dengan struktur direktori bergaya Unix (sedangkan yang pertama mencampurkannya sedikit).
Saya juga menyukai pola ini untuk memisahkan file:
lib / index.js
var http = require('http');
var express = require('express');
var app = express();
app.server = http.createServer(app);
require('./config')(app);
require('./models')(app);
require('./routes')(app);
app.server.listen(app.settings.port);
module.exports = app;
lib / static / index.js
var express = require('express');
module.exports = function(app) {
app.use(express.static(app.settings.static.path));
};
Hal ini memungkinkan pemisahan semua kode sumber dengan rapi tanpa harus mengganggu dependensi. Solusi yang sangat bagus untuk melawan Javascript yang buruk. Contoh dunia nyata ada di dekatnya yang menggunakan penyiapan ini.
Perbarui (nama file):
Mengenai nama file yang paling umum adalah nama file pendek dan huruf kecil . Jika file Anda hanya dapat dideskripsikan dengan dua kata, sebagian besar proyek JavaScript menggunakan garis bawah sebagai pemisah.
Perbarui (variabel):
Mengenai variabel, "aturan" yang sama berlaku untuk nama file. Prototipe atau kelas, bagaimanapun, harus menggunakan camelCase .
Perbarui (styleguides):