بستهها و اکوسیستم جولیا
مدیریت بسته با Pkg، Project.toml و معرفی بستههای مهم جولیا
اکوسیستم بستههای جولیا
جولیا بیش از ۱۰,۰۰۰ بسته ثبتشده دارد که همه در General Registry جمعاند — رایگان و متنباز!
Pkg — مدیر بسته جولیا
سه راه استفاده از Pkg:
۱. حالت Pkg در REPL (با ] )
julia> ] # وارد حالت Pkg شوید
pkg> add Plots # نصب بسته
pkg> status # لیست بستهها
pkg> update # بهروزرسانی
pkg> remove Plots # حذف
۲. در کد جولیا
using Pkg
Pkg.add("Plots")
Pkg.status()
۳. در اسکریپت
# در ابتدای فایل:
using Pkg
Pkg.activate("myproject") # فعالسازی محیط
Pkg.add("CSV")
using و import بستهها
using Plots # توابع اصلی مستقیم
using CSV # تابع csv مستقیم
import Plots # با نام ماژول
Plots.plot(...)
محیطهای پروژه (Environments)
هر پروژه جولیا محیط خودش را دارد:
myproject/
├── Project.toml # بستهها و وابستگیها
└── Manifest.toml # نسخههای دقیق (خودکار)
# ساخت محیط جدید
pkg> activate myproject
# افزودن بسته (در Project.toml ثبت میشود)
(myproject) pkg> add DataFrames
محیطهای جدا = پروژههای تمیز! هر پروژه نسخههای خودش را دارد — مثل virtualenv پایتون اما داخلی!
بستههای مهم جولیا
| حوزه | بسته | کار |
|---|---|---|
| داده | DataFrames.jl | جدول داده (مثل pandas) |
| نمودار | Plots.jl, Makie.jl | رسم نمودار |
| ML | Flux.jl, MLJ.jl | یادگیری ماشین |
| وب | Genie.jl, HTTP.jl | فریمورک وب |
| علمی | DifferentialEquations.jl | معادلات دیفرانسیل |
| بهینهسازی | JuMP.jl | برنامهریزی ریاضی |
| گراف | Graphs.jl | نظریه گراف |
| فایل | CSV.jl, JSON.jl | خواندن/نوشتن |
جستجوی بسته
- juliahub.com — جستجو و مستندات همه بستهها
- juliapackages.com — مرور بستهها
در ویرایشگر آنلاین نمیتوان بسته نصب کرد (مرورگر است!) اما همه بستههای استاندارد مثل LinearAlgebra، Dates و Random موجودند.
این مبحث بخشی از دوره آموزش کامل جولیا است.