Documentation
กลับไปหมวดหมู่

Bun.js พื้นฐาน

เวลาอ่านโดยประมาณ: ~15 นาที

Bun.js พื้นฐาน

Bun เป็น JavaScript runtime ที่ออกแบบมาเพื่อความเร็วสูง ทำงานได้รวดเร็วกว่า Node.js และเข้ากันได้กับโค้ด JavaScript/TypeScript ที่มีอยู่ พัฒนาโดยใช้ Zig และใช้ JavaScriptCore เป็นเอนจิน

ทำไมเราถึงเลือก Bun แทน Node.js

"เราเริ่มจากคำถามง่ายๆ: 'มี runtime ที่เร็วกว่า และ setup ง่ายกว่า Node ไหม?' คำตอบคือ Bun"

การตัดสินใจ

เราถามตัวเองว่า: "มี runtime ที่เร็วกว่า และ setup ง่ายกว่า Node.js ไหม?"

คำตอบคือ Bun

ทำไม Bun?

  • เร็วกว่า Node.js
  • ติดตั้งง่าย
  • Dev experience ดีกว่า

พอเลือก Bun แล้ว เราก็ไปเจอ Elysia — API framework ที่สร้างมาโดยเฉพาะสำหรับ Bun

ทำไมเลือก Bun แทน Node.js

ด้านBunNode.js
ความเร็วเร็วกว่ามากมาตรฐาน
Package ManagerBuilt-in (เร็ว)npm/yarn/pnpm (แยกต่างหาก)
TypeScriptรองรับ nativeต้อง transpile
Test RunnerBuilt-inต้อง setup
BundlerBuilt-inต้องใช้ Webpack/Vite
Startup Time~30ms~300ms

ข้อดี-ข้อเสีย

ข้อดีข้อเสีย
เร็วกว่า Node.js 3-4 เท่าใหม่กว่า ยังทดสอบน้อยกว่า
All-in-one toolkitบาง npm packages อาจไม่ทำงาน
TypeScript nativeCommunity เล็กกว่า
Drop-in Node.js replacementWindows support ยังใหม่
ติดตั้ง package เร็วมี edge cases บางอย่าง
DX ดีมากDocumentation ยังเติบโตอยู่

คุณสมบัติหลัก

  • เร็วกว่า เร็วขึ้นถึง 3-4 เท่าจาก Node.js ในการทดสอบ benchmark
  • All-in-one มาพร้อมกับ package manager, test runner, และ bundler
  • Drop-in replacement ใช้งานได้ทันทีกับโปรเจกต์ Node.js ที่มีอยู่
  • Native TypeScript รัน TypeScript ได้โดยตรงโดยไม่ต้อง compile

การติดตั้ง

การใช้งานพื้นฐาน

ตัวอย่างโค้ด

ตัวอย่างแบบโต้ตอบ

ลองแก้ไขโค้ดด้านล่างและกดรันเพื่อดูผลลัพธ์ได้เลย!

การเปรียบเทียบกับ Node.js

FeatureBunNode.js
Runtime EngineJavaScriptCoreV8
Written InZigC++
Package ManagerBuilt-innpm/yarn/pnpm
TypeScriptNativeRequires transpilation
Startup Time~30ms~300ms

ข้อดีของ Bun

  1. ความเร็วสูง เริ่มต้นและทำงานเร็วกว่า Node.js อย่างเห็นได้ชัด
  2. All-in-one Toolkit มีทุกอย่างในตัวเดียว - runtime, package manager, bundler, test runner
  3. ความเข้ากันได้ ใช้งานได้กับโปรเจกต์ Node.js ส่วนใหญ่
  4. Native TypeScript รัน TS ได้โดยตรงไม่ต้อง compile

แหล่งข้อมูลเพิ่มเติม

เอกสารอย่างเป็นทางการ

  • Bun Documentation - เอกสารและคู่มือการใช้งานอย่างเป็นทางการ
  • Bun GitHub Repository - ซอร์สโค้ดและติดตามปัญหา
  • Bun Discord Community - การสนับสนุนและพูดคุยจากชุมชน

แนะนำสำหรับการเรียนรู้เพิ่มเติม

  • Bun Examples - ตัวอย่างโค้ดอย่างเป็นทางการ
  • Awesome Bun - รวบรวมแหล่งข้อมูล Bun ที่น่าสนใจ
  • Bun Blog - อัปเดตล่าสุดและประกาศฟีเจอร์ใหม่