Linguagem e Framework escolhido: Afinidade do grupo
Criar a pasta do nosso projeto, e logo após executar os seguintes comandos:
npm init -y
npm install express
npm install --save-dev sucrase
npm install nodemon -D
E partimos para estruturação das pastas e arquivos, pra isso eu vou seguir da seguinte forma
|-src
| |-app.js
| |-server.js
| |-routes.js
Dentro do nosso app.js é onde vamos configurar nossa aplicação, e criaremos nossas classes com nome específico para cada funcionalidade.
// src>app.js
import express from 'express';
class App {
constructor() { // constructor é um método de chamada quando for instanciado a nossa classe
this.server = express(); // mesma coisa que o nosso const app = express()
this.server.post('/') // exemplo se eu quisesse chamar uma rota
}
}
Seguindo para configurar nosso app.js
// src>app.js
import express from 'express';
import routes from './routes'; //importando nossas rotas
class App {
constructor() {
this.server = express();
}
middlewares() {
this.server.use(express.json()); //método use para retornar sem o json
}
routes() {
this.server.use(routes); //acessar nossas rotas
}
}
Com o nosso middlewares importado e as nossas rotas também, agora vou chamar ele dentro do nosso constructor e exportar a instância App da nossa aplicação.
// src>app.js
import express from 'express';
import routes from './routes';
class App {
constructor() {
this.server = express ();
this.middlewares();
this.routes();
}
middlewares() {
this.server.use(express.json());
}
routes() {
this.server.use(routes);
}
}
export default new App().server;
Com isso agora podemos configurar um porta no arquivo server.js
// src>server.js
import app from './app';
app.listen(8080);