فهرست
1 - مقدمه
2 - مبانی کاتلین
3 - کد نویسی مقدماتی کاتلین
3.4 ) عبارت های شرطی در کاتلین
3.5 ) اضافه کردن پگیج ها در کاتلین و خلاصه بخض سوم
4 - توابع
4.2 ) تابع با پارامترهای پیشفرض و نامیده شده
4.3 ) تابع با پرامترهای نامحدود و خلاصه بخش چهارم
5 - کلاس ها
5.3 ) visibility modifier ها در کاتلین
5.6 ) Object ها در کاتلین و خلاصه بخش پنج
6 - ارث بری
6.2 ) کارکردن با کلاس های abstract در کاتلین
6.3 ) کلاس های interface در کاتلین
6.4 ) نگاه کوتاه به generic ها و خلاصه بخش شش
7 - کارکردن با Null ها
7.1 ) null safety و خلاصه بخش هفت
8 - نکات اضافه
8.4 ) کار کردن با exception ها
8.6 ) annotation ها در کاتلین و خلاصه بخش هشت
9 - نگاه functionalای
9.2 ) عبارت های لاندا در کاتلین
9.4 ) عبارت های الحاقی در کاتلین و خلاصه بخش نهم
10 - قابلیت همکاری و Interoperability
10.2 ) صحبت کردن با جاوا از کاتلین
10.3 ) کار کردن با null ها از جاوا
10.4 ) صحبت کردن با کاتلین از جاوا
10.5 ) توابع و خصیصه های درجه اول
10.6 ) توابع الحاقی کاتلین از جاوا
10.7 ) همکاری با جاوا 7 و 8 و خلاصه بخش دهم
11 - کتابخانه استاندارد
11.1 ) کتابخانه استاندارد کاتلین و کارکردن با کالکشن ها در کاتلین
11.2 ) مرور کوتاه بر روی filtering و mapping و flatmapping در کاتلین
constant ها
مبحث بعدی که میخوام دربارش صحبت کنم Constant هاست. ما خیلی درمورد constant ها صحبت نکردیم تنها جایی که اشاره ای بهش شد زمانی بود که میخواستیم یک object بسازیم. خب حالا چجوری میتونیم Constant ها رو بسازیم، در واقع ما نحوه ساخت اون ها رو قبلا دیدیم
object Copyright {
val author = "Sina Darvishi"
}
یک object ساختیم و یک خصیصه بهش دادیم. همین. در واقع فرقی با ساختن یک object که قبلا دیدیم نداره. ما درواقع از همین به عنوان constant استفاده میکنیم.
و من میتونم توی هرجایی ازش استفاده کنم
object Copyright {
val author = "Sina Darvishi"
}
fun main(args: Array<String>) {
Copyright.author
}
و درواقع من هر موقع پکیجش رو اضافه کنم میتونم از این استفاده کنم.
همچنین ما میتونیم Constant ها رو به عنوان Top-Level معرفی کنیم
val CopyrightAuthor = "Sina Darvishi"
object Copyright {
val author = "Sina Darvishi"
}
fun main(args: Array<String>) {
Copyright.author
CopyrightAuthor
}
خب درواقع این سوال پیش میاد که آیا من باید Constant ها رو توی جاهای رندوم قرارشون بدم و هر موقع خواستم صداشون بزنم؟
درواقع این به معماری برنامتون بستگی داره، به نظر من این خیلی بهتره که Constant ها رو توی یک Object دسته بندی کنین تا این که همه رو در هرجای برنامه استفاده کنیم.
مثلا وقتی میخوایم تنظیمات یک Camera رو به صورت Constant نگه داری کنیم، یک object به عنوان CameraSettings درست کنیم و constant هارو توی اون نگه داریم.