ติดตั้งและใช้งาน NestJS Framework

admin 0

Nodejs ถูกออกแบบมาเพื่อให้มี Performance ที่รับโหลดเยอะๆ ได้ แก้ปัญหาของ Server-side technology แต่เดิม โดยใช้เทคนิค Non-blocking IO

Nestjs เป็น Framework บน Nodejs อีกตัวที่พัฒนาด้วยแนวคิด Modern Javascript ที่เขียนด้วย Typescript ที่มีประสิทธิภาพสูงสามารถ Scalable ได้ สามารถเขียนแบบ OOP (Object Oriented Programming), FP(Functional Programming) และ FRP (Functional Reactive Programming) สามารถทำงานกับ Library ที่อยู่บน npmjs.com ได้ ส่วนจะซับซ้อนหรือไม่ส่วนนี้ก็คงขึ้นอยู่การนำไปใช้ว่ามีการออกแบบโครงสร้างกันอย่างไร โดยส่วนตัวจะวางโครงสร้างให้ Simple ไว้ก่อน และให้แบ่งหน้าที่การทำงานให้ชัดเจน วางมาตรฐานโค้ดดิ่งก่อนลงมือเขียนโค้ด เท่าที่เจอมาคือมันง่ายนะ แต่เราดันไปคิดมากจนทำให้มันซับซ้อนยากไปเอง ^^! เรามาดูวิธีการติดตั้งกันครับ

  1. ก่อนติดตั้งมาเตรียมเครื่องมือกันก่อนครับ
    • เขียน Nodejs ต้องมี Nodejs กันก่อนโดยเข้าไปโหลดได้ที่ลิงค์ https://nodejs.org/en/download เลือก LTS Version และกดติดตั้ง next next ๆๆ ง่ายๆ ^^! เมื่อติดตั้งเสร็จจะได้ npm มาด้วย เราสามารถตรวจสอบได้ด้วยการใช้คำสั่ง

      node –version
      npm –version

      จะแสดงเลขเวอร์ชั่นออกมาแสดงว่าติดตั้งสำเร็จ
    • ติดตั้ง Nest CLI (Command line interface) เพื่อให้สามารถใช้คำสั่งผ่าน Command line ได้นะครับ
      npm i -g @nestjs/cli
  2. สร้างโปรเจทสามารถทำได้ 2 วิธีคือผ่าน Nest CLI หรือ clone ด้วย starter project บน https://github.com/nestjs/typescript-starter

    เราจะใช้ Nest CLI กันนะครับโดยการเปิด terminal หรือวินโดว์ก็ powershell
    nest new {projectName}
    ตัวอย่าง nest nest nest01

    ! Nest CLI เพื่อให้จัดการไฟล์ได้ง่ายผ่าน Command lineและเป็นไปตาม best-practice ของ Nestjs ถ้าใครเคยใช้ PHP Laravel มาก็จะอารมณ์ของ Artisan ที่สามารถ Create, Generate, ดู Route ฯลฯ เพื่อให้สะดวกโดยที่เราไม่ต้องไปสร้างไฟล์เอง สามารถดูคำสั่งต่างๆ ได้จาก https://docs.nestjs.com/cli/usages
  3. cd เข้าไปในโฟร์เดอร์โปรเจทจะเห็นโครงสร้างโค้ดประมาณนี้นะครับ
Nestjs strcuture
  • main.ts เป็นจุดเริ่มต้นไฟล์หลักของแอพฯ
  • app.module.ts เป็น Root module ในการบิ้ว
  • app.controller.ts ทำหน้าที่ควบคุมการรับ Request และ Return response ให้ Clinets
  • app.service.ts ทำหน้าที่เป็นหนึ่งใน Provider จัดการ service ต่างๆ
  • app.controller.spec.ts เป็นไฟล์สำหรับเขียน testing

4. ทดสอบ รันแอพด้วยคำสั่ง npm run start:dev

http://localhost:3000

ต่อไปเราจะมาเริ่มต้นเรียนรู้ด้วยการเขียน api นะครับ

Tags:

admin

In the middle of difficulty lies opportunity.