Skip to content

Node Package Manager

Node Package Manager เป็นเครื่องมือสำหรับการจัดการแพ็คเกจและการพึ่งพา (dependencies) ในโปรเจกต์ Node.js ช่วยให้นักพัฒนาสามารถติดตั้ง อัปเดต และจัดการไลบรารีต่างๆ ได้อย่างมีประสิทธิภาพ

Feature/Aspectwww.npmjs.com faviconnpmpnpm.io faviconpnpmyarnpkg.com faviconYarnbun.sh faviconBun
Speedช้ากว่าเนื่องจากการแคชมีประสิทธิภาพน้อยกว่าเร็วกว่าเพราะใช้การ hard link และ shared content storeเร็วกว่า npm โดยเฉพาะเมื่อใช้การแคชเร็วที่สุด เพราะใช้ Zig และมีการปรับแต่งประสิทธิภาพสูง
Disk Usageใช้พื้นที่มากเพราะแต่ละโปรเจกต์มี node_modules ของตัวเองใช้พื้นที่น้อยเพราะมี content-addressable store และ symlinksปานกลาง ดีกว่า npm เล็กน้อยปานกลาง ใช้โครงสร้างแบบ npm แต่มีการปรับแต่งให้เร็วกว่า
Workspacesรองรับ (ในตัวตั้งแต่ v7 เป็นต้นไป)รองรับ พร้อมประสิทธิภาพที่ดีกว่ารองรับ (มีความสามารถที่ดีมาก)รองรับ
Installation Methodมาพร้อมกับ Node.jsต้องติดตั้ง (npm install -g pnpm)ต้องติดตั้ง (npm install -g yarn)ต้องติดตั้ง (ดาวน์โหลดจากเว็บไซต์หรือใช้ curl)
Node Modules Layoutโครงสร้างแบน (node_modules)โครงสร้าง symlink เพื่อหลีกเลี่ยงการซ้ำซ้อนโครงสร้างแบน (node_modules)โครงสร้างแบน (node_modules)

เปรียบเทียบ Package Manager CLI

คำสั่งnpmpnpmyarnbun
ติดตั้ง dependenciesnpm installpnpm installyarnbun install
ติดตั้ง packagenpm install <package>pnpm add <package>yarn add <package>bun add <package>
ติดตั้ง dev dependenciesnpm i -D <package>pnpm add -D <package>yarn add -D <package>bun add -d <package>
ลบ packagenpm uninstall <package>pnpm remove <package>yarn remove <package>bun remove <package>
รัน scriptnpm run <script>pnpm run <script>yarn <script>bun run <script>
อัปเดท packagenpm update <package>pnpm update <package>yarn upgrade <package>bun update <package>