Yarn là một package manager mới với tốc độ và hiệu năng cao hơn npm truyền thống.

"QUẢN LÝ TỐT, ĐÁNG TIN CẬY, VÀ ĐẢM BẢO"

Đó là những gì yarn đem lại cho chúng ta.

Từ bower đến npm, công cụ quản lý các thư viện cho các nhà phát triển web đã đi một chặng đường dài.

Phải nhớ lại rằng, cách đây vài năm, nếu muốn tích hợp một thư viện vào web bạn phải tìm thư viện đó, tải bản zip, giải nén và link nó và webpage. Nếu chúng ta muốn website nhanh hơn thì dùng đến CDN như cdnjs, copy một link và thêm vào web.

Từ đó, công cụ như bower ra đời. Khi mà các gói thư viện đa số đều open-source, và Github, bower trở thành một công cụ để tải và nâng cấp các thư viện đi kèm trong quá trình phát triển,...

Bower cũng thể hiện những thiếu sót của nó, nhưng trong thế giới javascript, một vấn đề không thể tồn tại lâu. Một giải pháp quản lý thư viện tốt hơn bower được gọi là npm đã xuất hiện. npm là công cụ quản lý gói mặc định của Node.js, nó nhanh chóng được đánh giá là công cụ quản lý tôts hơn bower (IMHO).

Vấn đề của npm

npm thì tốt, nhưng nó cũng có điểm thiếu sót. Và đây là các vấn đề:

  • Nested dependenciesnpm phiên bản 2 thì các thư viện lệ thuộc thường bị lặp lại, và như người dùng windows, đường dẫn file quá dài dẫn đến windows có vấn đề khi thử xóa chúng. Để sửa vấn đề này, ta có thể sử dụng npm phiên bản 3.
  • Queued install: khi npm tải thư viện từ repository của nó, nó cài từng gói từng gói một đến khi nào kết thúc nên tốn rất nhiều thời gian.
  • Single registry: nếu một thư viện không nằm trên NpmJS, thì thôi rồi.
  • No offine installation.

​Giới thiệu về Yarn

Ông trùm công nghệ như Facebook và Google quyết định lập một team và làm tốt hơn công cụ quản lý thư viện, họ gọi nó là Yarn.

Công cụ này sẽ lấy thư viện từ NpmJS hoặc Bower, nó cũng chạy cài đặt package song song.

Nếu bạn đã cài đặt thư viện trước đó, yarn tạo 1 phiên bản cached dùng để cài đặt nếu không có mạng.

Ngoài ra, yarn khuyến khích cấu trúc thư viện phẳng so với npm là cấu trúc lồng.

Nhìn chung, yarn có luồng làm việc tốt hơn npm.

Cài đặt Yarn

Hiện tại có 2 cách để cài yarn

Thứ nhất là cài thông qua npm

npm install -g yarn

Thứ hai là cài thông qua bộ cài đặt được tải từ https://yarnpkg.com/en/docs/install

Chú ý: Cả hai cách trên đều yêu cầu bạn phải cài nodejs và npm trước

Yarn làm việc như thế nào?

Yarn không phải thay thế npm mà là cải thiện hiệu năng của nó. Yarn cũng sử dụng file package.json và lưu thư viện vào thư mục node_modules/ 

Để test yarn ta sử dụng cấu trúc file package.json như sau

{
  "private": true,
  "dependencies": {
    "body-parser": "~1.13.2",
    "cookie-parser": "~1.3.5",
    "debug": "~2.2.0",
    "express": "~4.13.1",
    "morgan": "~1.6.1",
    "nunjucks": "^2.5.2",
    "serve-favicon": "~2.3.0",
    "vue": "^2.0.1",
    "vue-router": "^2.0.0",
    "vue-server-renderer": "^2.0.1"
  },
  "devDependencies": {
    "babel-preset-es2015": "^6.16.0",
    "babelify": "^7.3.0",
    "browserify": "^13.1.0",
    "gulp": "^3.9.1",
    "gulp-autoprefixer": "^3.1.1",
    "gulp-cssnano": "^2.1.2",
    "gulp-if": "^2.0.1",
    "gulp-plumber": "^1.1.0",
    "gulp-rename": "^1.2.2",
    "gulp-rev": "^7.1.2",
    "gulp-sass": "^2.3.2",
    "gulp-uglify": "^2.0.0",
    "gulp-util": "^3.0.7",
    "rev-del": "^1.0.5",
    "vinyl-buffer": "^1.0.0",
    "vinyl-source-stream": "^1.1.0"
  }
}

Để cài đặt ta dùng lệnh yarn hoặc yarn install.

Một vài câu lệnh yarn

yarn init

- Sử dụng để khởi tạo dự án

yarn add [package-name]

yarn add [package]@[version-or-tag]

yarn add  [package] --dev

- Thêm thư viện mới

yarn upgrade [package]

- Nâng cấp một thư viện

yarn remove [package]

- Gỡ bỏ một thư viện

Tham khảo


Leave a Comment

Fields with * are required.