مسعود سرداری
مسعود سرداری
خواندن ۶ دقیقه·۵ سال پیش

آموزش زبان برنامه نویسی کاتلین ( Kotlin ) به راحتی آب خوردن

در این پست میخام درباره ی کاتلین بنویسم و اینکه چطور و چرا باید زبان کاتلین را یاد بگیرید !

اول بذارید به مفاهیم اصلی این زبان برنامه نویسی جدید بپردازیم

زبان برنامه نویسی کاتلین ( kotlin ) چیست ؟

زبان برنامه نویسی کاتلین ( kotlin ) چیست ؟
زبان برنامه نویسی کاتلین ( kotlin ) چیست ؟


کاتلین یک زبان برنامه نویسی ،‌شی گرا ، کراس پلتفرم ( عدم وابسته به سیستم عامل خاص ) ، عمومی و ایستا است که برای اولین بار در سال 2011 توسط شرکت معروف در زمینه ی برنامه نویسی به نام جت برینز منتشر شد .

این زبان برنامه نویسی روی ماشین مجازی جاوا یا JVM اجرا میشود و دلیل بوجود آمدن این زبان پوشش دادن اشکالات دیگر زبان های برنامه نویسی مثل اسکالا بود .

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

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

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

شرکت جت برینز در سال 2012 این پروژه را ( کاتلین ) بصورت اوپن سورس تحت مجوز آپاچی 2 منتشر کرد و همین مسئله به خودی خود باعث جذب برنامه نویسان زیادی اطراف این زبان شد .

از آنجایی که این زبان برنامه نویسی سرعت و کارایی خوبی نشان داد برنامه نویسان اندرویدی به فکر این افتادند که بجای جاوا از این زبان استفاده کنند .

زبان کاتلین در برنامه نویسی اندروید بخوبی درخشید چون نواقصی در جاوا بود که پوشش داده میشد و همچنین سرعت بسیار بالا بود .

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

سالها بعد یعنی در سال 2017 بود که در مراسم همیشگی گوگل به نام Google IO این شرکت برای اولین بار از یک زبان جدید برای اندروید نام برد و ‌آن هم کاتلین بود .

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

تا این سال ، افراد زیادی در سرتاسر دنیا از کاتلین استفاده کرده بودند و گویا فیدبک های مثبتی را به تیم توسعه ی اندروید ارسال کرده بودند .

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

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

بعد از این معرفی برنامه نویسان قدیمی اندروید که با جاوا کار میکردند به شدت به سمت این زبان جدید رفتند تا ببینند چه چیز قویتری نسبت به جاوا وجود داشته که گوگل این زبان را بعنوان زبان رسمی معرفی کرده است .

و بعد از کار با کاتلین اولین چیزی که به احتمال زیاد نظر برنامه نویسان را جلب میکرد موارد زیر بود :‌

  • کرش نکردن اپ های تولید شده
  • سرعت بالای اپ های تولید شده
  • حجم کمتر اپ های نهایی
  • کدنویسی کمتر و سریعتر
  • وجود سیستم Null Safety برای محافظت از کدها در برابر باگ های معروف جاوایی مثل NullPointerException
  • و ...

مستندات کاتلین برای برنامه نویسی اندروید بسیار بهتر از جاوا است

مستندات زبان برنامه نویسی کاتلین
مستندات زبان برنامه نویسی کاتلین


مستندات یکی از کلیدی ترین مسائل زبان های برنامه نویسی است یعنی در حقیقت زبان های خیلی زیادی در طول تاریخ رشد کرده اند که شاید خیلی هم قوی بوده اند ولی چون مستندات نداشتند نابود شده اند و الان اثری از انها نیست که حتی برای شما معرفی کنیم .

دلیل این اتفاق این است که برای مثال یک برنامه نویس که با پی اچ پی کار میکند اگر قصد مهاجرت به یک زبان جدید را داشته باشد باید مستندات خوبی در زبان جدید برایش وجود داشته باشد .

اگر مستندات خوب نباشد تمرین تکرار هم بیهوده خواهد بود چون دانش زبان برنامه نویسی قبلی با دانش زبان جدید ذهنیت درهم و برهمی برای شما بوجود خواهد آورد و این مسئله برای زبانی مثل کاتلین که از قواعد دستوری جدیدی بهره میگیرد بسیار مهم است .

برای مطالعه ی مستندات رسمی زبان برنامه نویسی کاتلین به اینجا سر بزنید .

مستندات کاتلین منسجم است و به دلیل گستردگی جاوا مستندات خوبی و منظمی برای این زبان متاسفانه وجود ندارد و این یک مزیت برای کاتلین حساب میشود .

مستندات نوشته شده در این قسمت برای افرادی که زبان انگلیسی در حد قابل قبولی دارند و همچنین حداقل تجربه ی کار با یک زبان برنامه نویسی دیگر را دارند توصیه میشود اما برای تازه کارها کمی سخت خواهد بود

من پیشنهاد میکنم اگر زبانتون زیاد خوب نیست از یه دوره ی فارسی شروع کنید .

دوره ی کاتلین استاد نیک زاد عالی است و از اینجا میتونید تهیه کنید .

سرعت کدنویسی و کدنویسی مختصر در زبان برنامه نویسی کاتلین

مقایسه زبان برنامه نویسی کاتلین با زبان جاوا
مقایسه زبان برنامه نویسی کاتلین با زبان جاوا


میزان زمانی که برای توسعه ی یک اپلیکیشن در یک شرکت یا توسط یک فرد خاص صرف میشود بسیار اهمیت دارد . چون هر چه زمان بیشتری وجود داشته باشد امکانات و کیفیت محصول تولید شده بالاتر میرود .

زبان کاتلین به خودی خود کدنویسی خلاصه دارد یعنی تعداد خطوطی که برای انجام یک کاری در جاوا مینویسید بسیار بیشتر از تعداد خطوطی است که برای کاتلین مورد نیاز است .

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

میزان کدهای جاوا و زبان برنامه نویسی کاتلین
میزان کدهای جاوا و زبان برنامه نویسی کاتلین

زبان برنامه نویسی کاتلین با جاوا دوست است

سازگاری زبان برنامه نویسی کاتلین با زبان جاوا
سازگاری زبان برنامه نویسی کاتلین با زبان جاوا


هر چند که زبان کاتلین در برخی قسمت ها مزیت های زیادی نسبت به جاوا دارد ولی کاتلین نمیتواند جاوا را بصورت کامل حذف کند و خودش را جای جاوا بگذارد به همین خاطر سازندگان کاتلین به این فکر هم بودند که افرادی که قبلا با جاوا کار کرده اند یا پروژه هایی که جاوایی هست با کاتلین سازگار باشد و هیچ مخالفتی برای استفاده از جاوا در کنار کاتلین نباشد .

به همین خاطر کاتلین با جاوا 100٪‌ دوست است :)

سازگاری جاوا با کاتلین این اجازه را به برنامه نویسان میدهد تا کوچ آرام و سالمی از زبان جاوا به کاتلین داشته باشند .

اگر پروژه های قبلی آنها با جاوا است پروژه های آنها خراب نشود و نیاز به تعمیرات خاصی نداشته باشد.

اگر تخصص افراد در جاوا است طبیعتا یادگیری سینتکس کاتلین کمی زمان میبرد و این اجازه را میدهد جاهایی که با کاتلین بلد نیستند با جاوا بنویسند .


مقایسه سرعت برنامه هایی که با زبان برنامه نویسی کاتلین تولید میشوند با اپ هایی که با جاوا تولید شده است

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


یادگیری زبان کاتلین بسیار راحت است اما ...

کاتلین یکی از راحت ترین زبان های دنیاست که من در سریعترین زمان ممکن یاد گرفتم ولی یک نکته ی کلیدی است که اگر این نکته را در نظر نگیرید یادگیری شما کند خواهد بود و چه بسا بعد از ماه ها ببینید هنوز هم به کاتلین تسلط ندارید .

این نکته قواعد و سینتکس متفاوت و جدید کاتلین است بطوری که گاهی مفاهیم کلا عوض شده است و شما نمیتوانید با دانش زبان هایی مثل جاوا و ... به سمت کاتلین بیایید .

ممکن است آرایه در زبان جاوا مفهومی متفاوت تر از کاتلین داشته باشد در کل این یک مثال بود برای این که شما درک کنید باید کاتلین را خوب و از ابتدا یاد بگیرید در این صورت در عرض کمتر از یک ماه به این زبان بصورت کامل مسلط میشوید البته با تمرین و تکرار زیاد و دیدن آموزش های مرغوب مثل این آموزش برای کاتلین .

آموزش زبان برنامه نویسی کاتلین ( kotlin )
آموزش زبان برنامه نویسی کاتلین ( kotlin )

امیدوارم بتونید اپلیکیشن های توپ بسازید و پولدار بشید :)))

پایان

برنامه نویسیکاتلینآموزش کاتلینآموزش زبان کاتلینآموزش kotlin
برنامه نویس / دانشجوی رشته ی مهندسی کامپیوتر - نرم افزار دانشگاه اصفهان
شاید از این پست‌ها خوشتان بیاید