مسیر ادامه، Best Practice و جمعبندی؛ از شاگرد به سازنده
الان دیگه فقط سینتکس بلد نیستی؛ باید درست تمرین کنی که کدزن واقعی بشی.
قانون اول: val تا وقتی مجبور نشدی var
هرجا امکان داره از `val` استفاده کن. تغییرپذیری کمتر یعنی باگ کمتر. کدت مثل آدم آروم میمونه، نه مثل گروه واتساپی فامیل هر دقیقه عوض بشه.
مثال را با چند مقدار دیگر هم امتحان کن؛ چون برنامهنویسی با نگاه کردن یاد گرفته نمیشود، با خراب کردن و درست کردن جا میافتد.
اسمگذاری درست
اسم تابع باید بگه چه کاری میکنه. `doThing` و `handleData` اسم نیستن؛ اعلامیه گمشدن منطقن. واضح بنویس: `calculateFinalPrice`، `validateEmail`، `loadUserProfile`.
مثال را با چند مقدار دیگر هم امتحان کن؛ چون برنامهنویسی با نگاه کردن یاد گرفته نمیشود، با خراب کردن و درست کردن جا میافتد.
کد کوتاه ولی نه مبهم
کاتلین اجازه میده خیلی کوتاه بنویسی؛ اما کوتاهنویسی قرار نیست مسابقه شعبدهبازی باشه. کدی خوبه که هم کم باشه هم فهمیدنی.
مثال را با چند مقدار دیگر هم امتحان کن؛ چون برنامهنویسی با نگاه کردن یاد گرفته نمیشود، با خراب کردن و درست کردن جا میافتد.
val activeUsers = users
.filter { it.isActive }
.map { it.name }
اگر users شامل چند کاربر فعال باشد، خروجی activeUsers فقط اسم همان فعالهاست؛ مثلاً [Mina, Reza].
برنامه تمرین ۳۰ روزه
۱۰ روز اول سینتکس و تمرینهای کوچیک. ۱۰ روز دوم پروژه Todo، ماشینحساب، مدیریت هزینه. ۱۰ روز سوم Android Compose یا Ktor API. هر روز کد بزن؛ دیدن ویدیو بدون کدنویسی مثل دیدن باشگاه رفتن بقیهست؛ عضله برای تو نمیسازه.
مثال را با چند مقدار دیگر هم امتحان کن؛ چون برنامهنویسی با نگاه کردن یاد گرفته نمیشود، با خراب کردن و درست کردن جا میافتد.
حالا چی یاد بگیرم؟
برای Android برو سراغ Compose، معماری MVVM، ViewModel و Room. برای بکاند برو سراغ Ktor، serialization، دیتابیس و تست. برای حرفهایتر شدن هم coroutines و Flow رو عمیقتر تمرین کن.
مثال را با چند مقدار دیگر هم امتحان کن؛ چون برنامهنویسی با نگاه کردن یاد گرفته نمیشود، با خراب کردن و درست کردن جا میافتد.
نتیجه این درس 🎯
الان از پایه تا مسیر پروژه واقعی را دیدهای. ادامه مسیر با تمرین روزانه، پروژه کوچک، خواندن کد دیگران و ساخت خروجی واقعی شکل میگیرد؛ نه با فقط دیدن آموزش.
تمرین! 🧠
یک چکلیست شخصی ۵ موردی برای ادامه یادگیری Kotlin بنویس.
fun main() {
val checklist = listOf(
"هر روز ۳۰ دقیقه Kotlin تمرین کنم",
"یک پروژه Todo کامل بسازم",
"Null Safety را در پروژه واقعی استفاده کنم",
"Coroutine و Flow را با مثال تمرین کنم",
"یک اپ Compose یا API با Ktor بسازم"
)
checklist.forEachIndexed { index, item ->
println("${index + 1}. $item")
}
}
1. هر روز ۳۰ دقیقه Kotlin تمرین کنم 2. یک پروژه Todo کامل بسازم 3. Null Safety را در پروژه واقعی استفاده کنم 4. Coroutine و Flow را با مثال تمرین کنم 5. یک اپ Compose یا API با Ktor بسازم