Computer >> Hướng Dẫn Máy Tính >  >> Lập Trình >> JavaScript

Khác biệt giữa Bower và npm trong JavaScript


  npm

npm thường dùng quản lý module Node.js và cây phụ thuộc lồng nhau (nested dependency tree). Cũng dùng cho front-end và công cụ dev như Grunt, CoffeeScript.

Không dùng nested dependencies khó tránh xung đột phụ thuộc. Vì vậy npm đã chứng minh hiệu quả.

Bạn thêm gì vào Node đều cấu trúc như module. Dùng NPM cho phụ thuộc browser-side, code sẽ cấu trúc như Node.

Cấu trúc phụ thuộc:

project root [node_modules] -> dependency P -> dependency Q [node_modules] -> dependency P -> dependency R [node_modules] -> dependency Q [node_modules] -> dependency P -> dependency S

Bower

Bower yêu cầu cây phụ thuộc phẳng (flat) và dùng cho front-end. Hữu ích cho gói front-end.

Nạp file JS thuần như thêm trong .

Tối ưu cho front-end, dùng flat dependency tree, chỉ cần một phiên bản mỗi gói. Giảm tải trang tối thiểu.

Lưu ý: Bower hiện đã deprecated.

Cấu trúc phụ thuộc:

project root [bower_components] -> dependency P -> dependency Q // wants P -> dependency R // wants Q and R -> dependency S