متغیرها، val و var؛ دعوای ثبات و شیطنت
اینجا یاد میگیری چی ثابت بمونه و چی اجازه داره هی رنگ عوض کنه.
val یعنی سنگین و رنگین
وقتی مقدار قرار نیست عوض بشه از `val` استفاده کن. کاتلین خوشش میاد کدت قابل پیشبینی باشه؛ هرچی کمتر بیخودی تغییر بدی، باگ کمتر مثل جن از دیوار میاد تو.
مثال را با چند مقدار دیگر هم امتحان کن؛ چون برنامهنویسی با نگاه کردن یاد گرفته نمیشود، با خراب کردن و درست کردن جا میافتد.
fun main() {
val language = "Kotlin"
val year = 2026
println("داریم $language یاد میگیریم؛ نسخه ذهنی: $year")
}
داریم Kotlin یاد میگیریم؛ نسخه ذهنی: 2026
var یعنی قابل تغییر
اگر مقدار واقعاً باید عوض بشه، `var` بگذار. ولی بیخودی همهچی رو var نکن؛ کد شلخته میشه مثل کشوی کابلهای قدیمی.
مثال را با چند مقدار دیگر هم امتحان کن؛ چون برنامهنویسی با نگاه کردن یاد گرفته نمیشود، با خراب کردن و درست کردن جا میافتد.
fun main() {
var score = 10
score += 5
println("امتیاز جدید: $score")
}
امتیاز جدید: 15
نوع دادهها
کاتلین معمولاً نوع رو حدس میزنه، ولی میتونی واضح هم بنویسی. انواع مهم: `String`, `Int`, `Double`, `Boolean`, `Char`. اگر تیمی کار میکنی، واضحنویسی بعضی جاها نونت رو آجر نمیکنه؛ برعکس، نجاتت میده.
مثال را با چند مقدار دیگر هم امتحان کن؛ چون برنامهنویسی با نگاه کردن یاد گرفته نمیشود، با خراب کردن و درست کردن جا میافتد.
val name: String = "Nika"
val age: Int = 22
val price = 149.99
val isActive = true
این قطعه فقط مقدارها را تعریف میکند؛ اگر چاپشان کنی، name=Nika، age=22، price=149.99 و isActive=true میبینی.
نتیجه این درس 🎯
فرق val و var را اگر همین اول درست بفهمی، نصف شلختگیهای آینده را نمیسازی. قاعده مردونهاش: پیشفرض val، فقط وقتی واقعاً لازم شد var.
تمرین! 🧠
سه متغیر برای نام محصول، قیمت و موجود بودن تعریف کن و جملهای با string template چاپ کن.
fun main() {
val product = "کیبورد مکانیکال"
val price = 3200000
val inStock = true
println("محصول $product با قیمت $price تومان موجوده؟ $inStock")
}
محصول کیبورد مکانیکال با قیمت 3200000 تومان موجوده؟ true