کاتلین یا جاوا – کاتلین فرزند خلف یا ناخلف اندروید؟!

کاتلین یا جاوا – کاتلین فرزند خلف یا ناخلف اندروید؟!

تاریخچه کاتلین

در  ژانویه ۲۰۱۱ ، JetBrainsپروژه جدید خود به نام کاتلین را با هدف خوانایی و سرعت بیشتر در اندروید نویسی منتشر کرد  در حقیقت کاتلین یک زبان برنامه نویسی برای اندروید است

نام کاتلین برگرفته از جزیره ای به همین نام در اطراف سن پتزربوگ گرفته شده است

در سال ۲۰۱۷ این زبان برنامه نویسی به طور رسمی توسط گوگل حمایت شد و از ورژن ۳٫۰ اندروید استودیو به طور کامل وارد این نرم افزار شد

دوره آموزش اندرویدKotlin VS JAVA – کاتلین یا جاوا

۱-صرفه جویی در وقت و انرژی

همانطور که میدانیم در جاوا همواره با مشکلی به نام boiler code مواجه هستیم که در عمل نیازی به تکرار چند باره اون ها نداریم و با کاتلین میتونیم اون ها رو کاملا نادیده بگیریم

به طور مثال onClick رو در نظر بگیرین! یکی از کابوس های اندروید نویس هاست! که همیشه بهش نیاز داریم ولی میشه ساده تر ازش استفاده کرد به طور مثال دو کد رشته زیر رو مقایسه کنیم

View.OnClickListener() {
            @Override
            public void onClick(View v) {
               showMessage("Message");
            }
        }


view.setOnClickListener { v -> showMessage("Message") }

در حقیقت تونستیم ۶ خط رو به یک خط تبدیل کنیم! و این یعنی صرفه جویی در وقت که برای ما خیلی مهمه (شاید در برنامه های کوچک این تقلیل کد زیاد به چشم نیاد اما در پروژه های بزرگ واقعا معجزست!)

۲-هر چی که تو بخوای!
یکی دیگه از مزایای کاتلین به جاوا قدرت اختیاری هست که بهت میده! یعنی هم میتونی از ساختار شی گرا و هم تابع گرا استفاده کنی! چی بهتر از این؟!

۳-خداحافظی با semi-colons
دیگه نیازی به استفاده از semi-colons برای پایان دادن به خط ها نیست! البته اگه بهش عادت کردین هنوزم میتونین ازش استفاده کنین !!
۴- محدودیتی وجود نداره!
با وجود این همه کاهش در کد نویسی نه برنامه ما کند اجرا میشه نه این که حجمش تغییر میکنه پس محدودیت ها رو کنار بذار!
۵-تازگی و مشکل عدم پشتیبانی!
گوگل و عدم پشتیبانی؟! ابدا نگران عدم پشتیبانی نباشید کاتلین به طور رسمی در سال ۲۰۱۷ توسط گوگل به رسمیت شناخته شده و نصب اون در Android Studio به سادگی امکان پذیره

کاتلین یا جاوا

همونطور که در این تصویر میبینم در ورژن ۳ اندروید استودیو با یک کلیک ساده میتونیم از این همه مزیت کاتلین بهره مند شیم
پس فرصتو از دست نده همین الان دست به کار شو
۶- یادگیری
طبیعتا به خاطر ساختار ساده تر این زبان نسبت به جاوا یادگیری آن هم برای افراد مبتدی آسان تر است
۷- null آره یا نه ؟!
یکی از مواردی که توی برنامه نویسی اندروید خیلی از ما انرژی میبره چک کردن null بودن یا نبودنه!
اما کاتلین پیرو زبان های جدید null safe هست به این معنی که اگر objectـی بخواد بتونه null باشه باید صراحتا اعلام کنیم وگرنه object بطور پیش‌فرض نمیتونه null باشه.
یک object نمیتونه به طور پیش‌فرض null باشه پس خط زیر compile error میده:

var myObject : MyClass = null

اگه بخوایم یک object رو null بذاریم باید صراحتا و با ? مشخص کنیم:

var myObject2 : MyClass? = null

حالا دو خط کد زیر رو نگاه کنید:

myObject2.doSth()
 
myObject2?.doSth()

خط اول متد doSth کامپایل نمیشه چرا که myObject2 ممکنه null باشه. خط دوم هم فقط زمانی اجرا میشه که myObject2 مقدار null نباشه.
یک زمانی هم هست مطمئن هستیم متغیر ما null نخواهد بود و میخوایم اجرا کنه متد رو. میتونیم از !! استفاده کنیم:

۱	myObject2!!.doSth()

در این صورت اگه null باشه هم کد اجرا میشه و NullPointerException میده. همچنین میتونیم مثل جاوا چک کنیم که اگر objectمون null نبود کد اجرا شه و در اون صورت ? هم نیاز نیست. اما خب لزومی نداره این کارو کنیم.

کاتلین یا جاوا

نتیجه گیری :

به نظر میرسد در آینده ای نزدیک کاتلین به طور کامل جایگزین جاوا در اندروید نویسی خواهد شد
چرا که مورد حمایت رسمی گوگل است و روز به روز بر کتابخانه های آن افزوده میشود و سرعت کد نویسی به طور عجیبی افزایش میدهد
در حال حاضر بهترین منبع برای آموزش کاتلین علی الخصوص برای مبتدیان استفاده از رفرنس ها در سایت اندروید استودیو و کتاب Kotlin for Android Developers است

دانلود مقاله کاتلین یا جاوا

نویسنده مقاله : مهدی خشنود

دانلود مقاله

لینک های مرتبط با

دوره آموزش اندروید

ورکشاپ رایگان دوره های تخصصی برنامه نویسی

شما این فرصت را دارید، با تکمیل فرم زیر، قبل از انتخاب دوره آموزشی مناسب خود، در ورکشاپ رایگان دوره های تخصصی برنامه نویسی شرکت کنید
  • این فیلد برای اعتبار سنجی است و باید بدون تغییر باقی بماند .

درباره‌ی برنامه نویسان

همچنین ببینید

گزارش دوره اندروید

گزارش دوره آموزش اندروید – جلسه هشتم

جسله هشتم از دوره آموزش اندروید برگزار گردید . مهندس آذرنیوا مدرس دوره به معرفی …

دیدگاهتان را بنویسید

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *