ExpressJS - En İyi Uygulamalar
Tanımlanmış bir iş yapma şekli, dosya yapısı vb. Olan Django ve Rails'in aksine, Express tanımlı bir yol izlemez. Bu, uygulamayı istediğiniz gibi yapılandırabileceğiniz anlamına gelir. Ancak uygulamanızın boyutu büyüdükçe, iyi tanımlanmış bir yapıya sahip değilse sürdürmek çok zordur. Bu bölümde, uygulamalarımızı oluşturmak için genel olarak kullanılan dizin yapılarına ve endişelerin ayrılmasına bakacağız.
İlk olarak, düğüm ve Express uygulamaları oluşturmak için en iyi uygulamaları tartışacağız.
Her zaman kullanarak bir düğüm projesine başlayın npm init.
Bağımlılıkları her zaman bir --save veya --save-dev. Bu, farklı bir platforma geçerseniz, tüm bağımlılıkları yüklemek için sadece npm install komutunu çalıştırabilmenizi sağlayacaktır .
Küçük harfli dosya adları ve camelCase değişkenleri kullanın. Herhangi bir npm modülüne bakarsanız, küçük harfle adlandırılır ve kısa çizgilerle ayrılır. Bu modüllere ihtiyaç duyduğunuzda camelCase'i kullanın.
Node_modules'i depolarınıza göndermeyin. Bunun yerine npm her şeyi geliştirme makinelerine yükler.
Kullanın config değişkenleri depolamak için dosya
Rotaları kendi dosyalarına gruplayın ve izole edin. Örneğin, REST API sayfasında gördüğümüz film örneğindeki CRUD işlemlerini ele alalım.
Dizin Yapısı
Şimdi Express'in Dizin Yapısını tartışalım.
Web siteleri
Express, uygulama oluşturmak için topluluk tanımlı bir yapıya sahip değildir. Aşağıdaki, bir web sitesi için büyük ölçüde kullanılan bir proje yapısıdır.
test-project/
node_modules/
config/
db.js //Database connection and configuration
credentials.js //Passwords/API keys for external services used by your app
config.js //Other environment variables
models/ //For mongoose schemas
users.js
things.js
routes/ //All routes for different entities in different files
users.js
things.js
views/
index.pug
404.pug
...
public/ //All static content being served
images/
css/
javascript/
app.js
routes.js //Require all routes in this and then require this file in
app.js
package.json
Express ile web siteleri oluşturmak için başka yaklaşımlar da var. MVC tasarım modelini kullanarak bir web sitesi oluşturabilirsiniz. Daha fazla bilgi için aşağıdaki bağlantıları ziyaret edebilirsiniz.
https://code.tutsplus.com/tutorials/build-a-complete-mvc-website-with-expressjs--net-34168
ve,
https://www.terlici.com/2014/08/25/best-practices-express-structure.html.
RESTful API'ler
API'lerin tasarımı daha basittir; bir genel veya görünümler dizinine ihtiyaçları yoktur. API'ler oluşturmak için aşağıdaki yapıyı kullanın -
test-project/
node_modules/
config/
db.js //Database connection and configuration
credentials.js //Passwords/API keys for external services used by your app
models/ //For mongoose schemas
users.js
things.js
routes/ //All routes for different entities in different files
users.js
things.js
app.js
routes.js //Require all routes in this and then require this file in
app.js
package.json
Benzer bir yapı elde etmek için bir yeoman jeneratör de kullanabilirsiniz .