متغیرها در جولیا

تعریف متغیر، قوانین نام‌گذاری، قراردادها و ثابت‌ها با const

متغیر چیست؟

متغیر (Variable) نامی است که به یک مقدار وصل می‌شود:

name = "علی"     # متغیر name با مقدار "علی"
age = 25          # متغیر age با مقدار 25

println(name)     # علی
println(age)      # 25

تعریف متغیر در جولیا

در جولیا نوع تعریف نمی‌کنید — جولیا خودش از روی مقدار تشخیص می‌دهد:

count = 10        # Int64
price = 99.5      # Float64
title = "جولیا"   # String
isActive = true   # Bool
letter = 'A'      # Char (کاراکتر واحد)

نوع متغیر قابل تغییر است

برخلاف زبان‌های استاتیک، می‌توانید نوع متغیر را عوض کنید:

x = 10          # Int64
println(typeof(x))

x = "سلام"      # حالا String!
println(typeof(x))

قوانین نام‌گذاری

ناموضعیت
name✅ صحیح
user_name✅ صحیح
x2✅ صحیح
2name❌ شروع با عدد
user-name❌ خط تیره (به‌عنوان تفریق خوانده می‌شود!)
function❌ کلمه رزرو شده
δ, σ, x²✅ یونیکد مجاز است!

قرارداد نام‌گذاری

تخصیص چندگانه

x, y = 10, 20
println(x, " ", y)   # 10 20

# جابجایی (swap) بدون متغیر کمکی!
x, y = y, x
println(x, " ", y)   # 20 10

# مقداردهی هم‌زمان
a = b = c = 0

ثابت‌ها با const

برای مقادیری که نباید تغییر کنند:

const GRAVITY = 9.81
const MAX_USERS = 1000

println(GRAVITY)
استفاده از const به کامپایلر جولیا کمک می‌کند کد سریع‌تری تولید کند — برای مقادیر ثابت واقعی همیشه از آن استفاده کنید.

نام‌های علمی و یونیکد

جولیا برای کد علمی طراحی شده و از نام‌های یونیکد پشتیبانی کامل دارد:

α = 0.05          # سطح معناداری آماری
π = 3.14159       # البته جولیا خودش pi دارد!
println(π)

# در REPL: \alpha + Tab = α

دامنه متغیر (Scope) — مقدمه

x = 10   # سراسری

function test()
    y = 20   # محلی — فقط داخل تابع
    println("داخل: x = $x, y = $y")
end

test()
println("بیرون: x = $x")
-- println(y)   -- ❌ y اینجا وجود ندارد!
در جولیا متغیرهای تعریف‌شده داخل حلقه‌ها و توابع محلی هستند. برای تغییر متغیر سراسری داخل تابع باید از global استفاده کنید — اما بهتر است از این کار پرهیز کنید!

این مبحث بخشی از دوره آموزش کامل جولیا است.

ابزارهای مرتبط