آموزش جامع کار با Package Managers و NPM


🎯 اهداف یادگیری

  • درک مفهوم Package Manager و اهمیت آن
  • آشنایی با NPM و کاربردهای آن
  • نصب و مدیریت پکیج‌ها با NPM
  • کار با فایل package.json
  • آشنایی با دستورات مهم NPM

📌 Package Manager چیست؟

Package Manager ابزاری است که به شما کمک می‌کند پکیج‌های نرم‌افزاری را نصب، به‌روزرسانی و مدیریت کنید:

bash
# مثال‌هایی از Package Managerهای مختلف
npm install lodash # برای جاوااسکریپت (NPM)
pip install requests # برای پایتون (PIP)
composer require laravel/framework # برای PHP (Composer)

مزایای استفاده از Package Manager:

  • مدیریت وابستگی‌ها: نصب خودکار کتابخانه‌های مورد نیاز یک پکیج
  • کنترل نسخه: امکان استفاده از نسخه‌های خاصی از یک پکیج
  • اشتراک‌گذاری آسان: توزیع و استفاده از کدهای دیگران به سادگی

📌 NPM چیست؟

NPM (Node Package Manager) پیش‌فرض ترین Package Manager برای جاوااسکریپت و اکوسیستم Node.js است:

bash
# بررسی نسخه‌های نصب شده
node -v # نسخه Node.js
npm -v # نسخه NPM

ویژگی‌های کلیدی NPM:

  • بزرگترین ریپازیتوری پکیج‌ها: بیش از 1.3 میلیون پکیج رایگان
  • مدیریت وابستگی‌های پروژه: از طریق فایل package.json
  • اجرای اسکریپت‌ها: امکان تعریف و اجرای اسکریپت‌های سفارشی

📌 نصب و راه‌اندازی NPM

برای شروع کار با NPM ابتدا باید Node.js را نصب کنید:

bash
# دانلود و نصب Node.js (شامل NPM می‌شود)
# از سایت رسمی: https://nodejs.org
# پس از نصب، پروژه جدید ایجاد کنید:
mkdir my-project
cd my-project
npm init -y # ایجاد فایل package.json با مقادیر پیش‌فرض

ساختار فایل package.json:

json
{
"name": "my-project",
"version": "1.0.0",
"description": "",
"main": "index.js",
"scripts": {
"test": "echo \"Error: no test specified\" && exit 1"
},
"keywords": [],
"author": "",
"license": "ISC"
}

📌 نصب پکیج‌ها با NPM

دو نوع نصب وجود دارد: محلی (برای پروژه فعلی) و سراسری (برای تمام سیستم)

bash
# نصب محلی یک پکیج (در دایرکتوری node_modules پروژه)
npm install lodash
# نصب سراسری یک پکیج (دسترسی از همه جا)
npm install -g nodemon
# نصب یک پکیج به عنوان وابستگی توسعه (devDependencies)
npm install --save-dev jest

مدیریت نسخه‌های پکیج:

  • ^1.2.3: به‌روزرسانی خودکار برای نسخه‌های جزئی و اصلاحی
  • ~1.2.3: فقط به‌روزرسانی برای نسخه‌های اصلاحی
  • 1.2.3: استفاده دقیق از این نسخه
  • latest: همیشه آخرین نسخه

📌 دستورات مهم NPM

دستور توضیح
npm init ایجاد فایل package.json جدید
npm install نصب تمام وابستگی‌های پروژه
npm install [package] نصب یک پکیج خاص
npm update به‌روزرسانی پکیج‌ها
npm uninstall [package] حذف یک پکیج
npm run [script] اجرای یک اسکریپت از package.json

📌 تمرین عملی

پروژه جدیدی ایجاد کنید و این مراحل را انجام دهید:

  1. پروژه جدید با نام "my-npm-project" ایجاد کنید
  2. پکیج lodash را به عنوان وابستگی اصلی نصب کنید
  3. پکیج nodemon را به عنوان وابستگی توسعه نصب کنید
  4. یک اسکریپت start در package.json تعریف کنید که فایل index.js را اجرا کند

📌 قدم بعدی

در درس بعدی با TypeScript آشنا خواهیم شد!