[英]ExpressJS/NodeJS and Object Orientated Programming
我剛接觸該行業,但似乎大多數公司在面試過程中似乎都在大量測試/強調OOP知識,即使它們的堆棧主要基於javascript / NodeJS / typescript。
我很困惑這如何適用於使用像ExpressJS這樣的框架開發后端應用程序/ API?
例如,偽代碼示例GET路由:
app.get('/', async(req, res) => {
const exampleData = await database.querySomething()
res.send(exampleData)
})
在我看來,創建這些REST API的編碼風格有些程序化。 例如,接收請求,根據參數進行一些數據庫操作或查詢,添加計算/數據處理,發送回最終數據。
OOP在哪里發揮作用? 后端nodejs應用程序中OOP的用例是什么?
談到OOP概念時,您需要專注於語言(即Javascript),而不是Express。
MDN網站是JS語言的最佳網絡資源之一。 從這里開始
您可以在es6中編寫代碼或使用完全支持oops方法的框架。 查看框架-fortjs , nestjs等。
例如-fortjs中的控制器看起來像-
export class UserController extends Controller {
@defaultWorker()
async getUsers() {
const service = new UserService();
return jsonResult(service.getUsers());
}
@worker([HTTP_METHOD.Post])
@route("/")
async addUser() {
const user = {
name: this.body.name,
gender: this.body.gender,
address: this.body.address,
emailId: this.body.emailId,
password: this.body.password
};
const service = new UserService();
const newUser = service.addUser(user);
return jsonResult(newUser, HTTP_STATUS_CODE.Created);
}
}
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.