ลองทำโปรเจคเล่นๆด้วย (Node.js + Serverless + MongoDB + Flutter + Vue.js)
เริ่มต้นจากที่เขียน Line-bot จบ (ไม่น่าเชื่อว่าจะเขียนจบได้) แล้วก็เลยมีความคิดว่าหรือเราจะลองเขียนยาวๆดูบ้าง จะได้เก็บไว้เป็นไดอารี่และผลงานด้วย (ถ้าทำเสร็จนะ)
ซึ่งจากที่ทำงานมาก็คิดว่าน่าจะพอทำได้ โดยแผนที่วางไว้คือ
Node.js สำหรับทำส่วนหลังบ้าน (Backend)โดยจะใช้สถาปัตยกรรมแบบ Serverless (AWS)
MongoDB + Docker สำหรับทำฐานข้อมูล (Database)
Flutter สำหรับเขียนส่วนโมบาย (Mobile Application)
Vue.js สำหรับส่วนหน้าเว็บ (Fontend)
และ Gitlab/Github หรืออะไรก็แล้วแต่ สำหรับการทำ Version Control
ในบทความนี้จะใช้ Visual Studio Code สำหรับการเขียนนะครับ แต่ถ้าใครสะดวกอะไรก็ตามสะดวกได้เลยครับ
เดี๋ยวเรามาเริ่มจากส่วนที่เป็นเส้นเหลือดใหญ่ก่อนนะครับ นั้นก็คือ “งบ” แฮร่
ส่วน Backend ครับ เพราะว่าเป็นส่วนที่รวบรวม Logic ทั้งหมดไว้นะครับ
สิ่งที่ต้องมี

2. Docker

หลังจากติดตั้งเรียบร้อยแล้วก็มาติดตั้งส่วนเสริม (DLC) กันต่อเลยนะครับ
มาเริ่มกันเลยดีกว่า ก่อนอื่นก็สร้าง Folder สำหรับก่อนเลยนะครับ ด้วยคำสั่ง
npm initจากนั้นก็กรอกข้อมูล (กดแค่ enter ไปเรื่อยก็ได้ครับ)

เมื่อทำเสร็จเราจะได้ package.json มา ซึ่งไฟล์นี้เป็นเหมือนที่ไว้เก็บว่า Project ของเราจะใช้ Library อะไรในการทำงานบ้าง
จากนั้นก็ติดตั้ง mongoose กันต่อครับ ด้วยคำสั่ง (npm install คือคำสั่งติดตั้ง library ต่างของ Node.js)
npm install mongoose --saveและในเมื่อเราจะทำ serverless ก็คงขาดไม่ได้
npm install -g serverlessnpm install serverless-offline --save-dev

เมื่อติดตั้งจะมีไฟล์เพิ่มขึ้นมาดังนี้นะครับ
จากนั้นก็สร้างไฟล์ index.js ครับ โดยเขียนโค้ดดังนี้ครับ
และสร้าง serverless.yml
จากนั้นเราก็ลองพิมพ์ serverless offline ได้เลยครับ
serverless offline
แล้วก็ทดสอบด้วยการเข้าไปที่
http://localhost:3000/guest/helloworldก็จะได้ผลลัพธ์หน้าตาประมาณนี้

ตอนนี้รู้สึกว่าเริ่มยาว เดี๋ยวจะเหนื่อยซะก่อน อิอิ
เดี๋ยวมาต่อเรื่อง MongoDB part หน้าเนอะ
