بعد از اینکه مقالات زیادی در زمینه برنامه نویسی اندروید در سایت منتشر کردیم مثل مقایسه محیط های برنامه نویسی اندروید، بهترین زبان برنامه نویسی اندروید و بهترین زبان برای شروع برنامه نویسی اندروید خیلی از کاربران پرسیدند جدیدترین زبان برنامه نویسی اندروید کدام زبان است که بشینیم و از آن شروع کنیم. در این باره مقاله دیگری رو نوشتیم اما واقعا جدیدترین زبان برنامه نویسی اندروید کدام زبان است و اصلا باید از آن شروع کنیم. در این مقاله میخواهیم ابتدا توضیحاتی در مورد این زبان برنامه نویسی ارائه دهیم و بگیم چه ویژگی هایی دارد و بعد چند زبان خوب برای یادگیری و آموزش برنامه نویسی اندروید معرفی نماییم.
جدیدترین زبان برنامه نویسی اندروید
اگر شما جمله the new programming language for Android (به معنی جدیدترین زبان برنامه نویسی اندروید) رو در گوگل سرچ کنید به صفحه ای شبیه صفحه زیر میرسید:
اکثر سایت های خارجی زبان برنامه نویسی Kotlin رو معرفی می کنند و در مورد این زبان برنامه نویسی مقاله و ویدئو تولید کرده اند. البته قبلا در این مورد مقالات زیادی نوشته ایم اما در این مقاله بیشتر به این زبان برنامه نویسی می پردازیم. پس ما میتوانیم کاتلین را به عنوان جدیدترین زبان برنامه نویسی اندروید معرفی کنیم.
زبان برنامه نویسی کاتلین (Kotlin)
پس تا این لحظه متوجه شدیم جدیدترین زبان برنامه نویسی اندروید، کاتلین نام دارد. اگر مقداری در مورد این زبان مطالعه داشته باشید در یک کلمه عاشق آن می شود. تقریبا می توان گفت کاتلین همان جاوا است اما بهترتر و بهینه تر، البته این رو متذکر شوم کاتلین هیچ وقت جای جاوا رو نمی گیرد. کاتلین، یک زبان برنامه نویسی ایستا (Statically typed) برای ماشین مجازی جاوا (JVM)، اندروید و مرورگر (Browser) است که از چند وقت پیش رسما از طرف گوگل برای برنامه نویسی اندروید معرفی شد. البته ساخت این زبان حدود سال ۲۰۱۱ شروع شد و اوایل دی/بهمن ماه سال ۱۳۹۵ نسخه اول آن از طرف JetBrains معرفی شد که با استقبال بی نظیر برنامه نویسان اندروید مواجه شد.
نکته مهم: کاتلین زبان برنامه نویسی شی گرا می باشد که توسط شرکت JetBrains معرفی شده است این شرکت سازنده نرم افزار IntelliJ IDE است که Android Studio هم بر پایهٔ آن ساخته شده است و نیاز به توضیح نیست که زبان کاتلین هم با IntelliJ IDE بسیار سازگار است.
در ژوئیه ۲۰۱۱، JetBrains از پروژه کاتلین پرده برداری کرد، زبانی جدید برای ماشین مجازی جاوا، که برای یک سال تحت توسعه و پیشرفت قرار داشت. سرپرست Dmitry Jemerov، JetBrains، اظهار داشت بیشتر زبانها، آن ویژگیهایی که دنبالش هستند را ندارند. با استثنای اسکالا. او به زمان کند کامپایل اسکالا به عنوان کمبودی واضح اشاره کرد. یکی از اهداف اصلی کاتلین این است که به همان سرعت زیاد جاوا کامپایل شود. در فوریه سال ۲۰۱۲، JetBrains منبع باز این پروژه را تحت مجوز Apache 2 ارائه کرد. Jetbrains امیدوار است که این زبان جدید IntelliJ IDEA را به پیش ببرد.
سرپرست توسعه، Andrey Breslav، بیان کرده کاتلین (زبان برنامه نویسی جدید گوگل برای اندروید) طراحی شده تا زبانی صنعتی-قدرتی و شی گرا بوده و زبانی بهتر از جاوا باشد. اما هنوز پر از سازگاریهایی با کد جاوا است که اجازه داده کمپانیها مهاجرتی تدریجی از جاوا به کاتلین داشته باشند.
همچنین از کاتلین در اندروید استودیو که بسته توسعه نرم افزاری (SKD) رسمی اندروید است پشتیبانی به عمل می آید. از آنجا که کاتلین نیز مانند جاوا با پلتفرم JVM (ماشین مجازی جاوا) کار می کند به راحتی میتوان از آن در ساخت اپلیکیشن های اندرویدی کمک گرفت.
در واقع، کمپانی JetBrains یسکری کانوِرتر (مبدل) جاوا به کاتلین ارائه کرده است که میتوانند خروجی سورسکدهای کاتلین را به زبانهای جاوا و یا جاوااسکریپت تبدیل کنند؛ به عبارت دیگر، کدی که توسط کاتلین نوشته میشود نسبت به معادل جاوای آن، با در نظر گرفتن لایبرریها و کلاسهای مشابه، به مراتب سادهتر خواهد بود و این در حالی است که سورسکد اپهای نوشته شده با زبان برنامهنویسی کاتلین راحتتر توسط دولوپرها خوانده میشوند که این کار هم به نوبهٔ خود موجب آسانتر شدن پروسهٔ توسعه، دیپلوی و دیباگینگ شده و این زبان را به انتخاب مناسبتری برای برنامهنویسی اندروید تبدیل میکند.
چرا زبان برنامه نویسی کاتلین
کاتلین بیشترین سازگاری را با جاوا دارد. این یعنی شما در هر پروژه ای که به زبان جاوا نوشته باشید می توانید از کدهای کاتلین هم استفاده کنید. لذا اخلالی در سرعت اجرای پروژه به دلیل ناسازگاری زبان ها بوجود نمی آید و کار شما با همان سرعت قبلی پیش خواهد رفت. از طرفی امکان تبدیل کدهای جاوا به کاتلین و بالعکس نیز وجود دارد. شما تا هر جای پروژه تان را که به زبان جاوا نوشته باشید می توانید به راحتی آن را تبدیل به کد کاتلین کنید و سپس از امکانات بیشتر این زبان برای توسعه پروژه تان بهره ببرید.
در کاتلین امکان برنامه نویسی end-to-end نیز وجود دارد که امکان استفاده از آن در بسیاری از پلتفرم ها را فراهم می آورد. همچنین کاتلین از برنامه نویسی دو سویه (Bi-directional Programming) نیز پشتیبانی می کند که به اختصار برنامه نویسی است که قابلیت عوض شدن جای دیتای ورودی و خروجی در آن وجود دارد. بر اساس آنچه در بخش پرسش و پاسخ وبسایت کاتلین آمده کدهایی که به زبان کاتلین نوشته می شوند تقریبا تا ۴۰ درصد کوتاهتر از کدهای جاوا هستند. این یعنی شما وقت کمتری برای کدنویسی با کاتلین صرف خواهید کرد. در زیر نمونه ای از کدهای نوشته شده به زبان جاوا و کاتلین را می بینید.
از طرفی یادگیری زبان کتلین نیز زیاد مشکل نیست. آن طور که در وبسایت کاتلین آمده در ساخت کاتلین از زبان های برنامه نویسی دیگری همچون جاوا اسکریپت، سی، جاوا، اسکالا و گرووی الهام گرفته شده است. لذا اگر یادگیری کاتلین از این زبان ها آسان تر نباشد از آنها نیز مشکل تر نیست. توسعه دهندگان کاتلین به موضوع یادگیری آسان این زبان توجه کافی داشته اند و اینکه شما بتوانید در صورت آشنایی با هر کدام از زبان های فوق کاتلین را در عرض چند روز یاد بگیرید. البته یادگیری کار با برخی از امکانات جدید کاتلین به زمان بیشتری احتیاج خواهد داشت. ولی روی هم رفته زبان کاتلین زبان مشکلی برای یادگیری نیست.
ضمنا به زودی قابلیت برنامه نویسی برای سیستم عامل iOS و macOS نیز به کاتلین اضافه خواهد شد. بنابراین از این زبان برنامه نویسی می توان برایساخت اپلیکیشن های آی او اس نیز استفاده کرد. همچنین زبان کاتلین از لحاظ ساختاری پیچیدگی کمتری نسبت به جاوا دارد لذا فهم برنامه هایی که به زبان کاتلین نوشته شده اند نیز آسان تر خواهد بود.
چگونه شروع به برنامه نویسی کاتلین کنیم؟
یادگیری برنامه نویسی کاتلین راحتر از جاوا است و می توان گفت خیلی راحتر می توانید کاتلین را فرا بگیرید. همیشه می توانید کدهایتان را از جاوا به کاتلین یا kotlin به جاوا تغییر دهید. به همین دلیل کاتلین جایگزین خوبی برای جاوا می باشد. به علاوه همه ی اینها کدهای کاتلین از تمام ابزارها و امکانات اندروید استودیو پشتیبانی می کند و با آن سازگار می باشد. فاصله ی شما و زبان کاتلین به اندازه ی یک کلیک است. برای انجام این کار کافیست در اندروید استودیو کاتلین ساپورت را فعال کنید.
میتوانید برای دانستن هر آنچه که لازم است به وبسایت رسمی زبان برنامهنویسی Kotlin مراجعه کنید؛ در ضمن، یک کامپایلر آنلاین هم برای تست کدهای Kotlin توسط کمپانی JetBrains عرضه شده که علاقمندان میتوانند به سادگی بااستفاده از آن شروع به یادگیری این زبان کنند. توصیه میکنم وبسایتی تحتعنوان Kotlin Link را از دست ندهید که حاوی اطلاعات گستردهای در مورد این زبان است. همچنین با مراجعه به سایت Hackr میتوانید لیستی از آموزشهای رایگان و غیررایگان کاتلین را از سراسر وب مشاهده نمایید.
آیا زبان برنامه نویسی کاتلین مختصر و مفید است؟
زبان برنامه نویسی جدید گوگل برای اندروید (زبان کاتلین) اساساً روی کاهش اندازه ی کدنویسی تمرکز دارد. به این ترتیب کار برنامه نویس و کاربران نهایی اپلیکیشن راحت تر می شود. در نهایت اپلیکیشنی که توسط کاتلین نوشته شده است حداکثر فایده را با اشغال کمترین فضای ممکن خواهد داشت. زبان کاتلین قابل فهم تر می باشد پس راحت تر می توان از آن استفاده نمود. زبان برنامه نویسی کاتلین به دلیل ساده بودن سینتکس، پیچیدگی کمتری دارد بنابراین انجام پروژه را برای توسعه دهنده ی نرم افزار راحت تر و سریعتر می کند. با توجه به اینکه اندازه ی کدها کمتر شده می توان گفت احتمال بروز خطاهایی همچون null pointer exception را کاهش می دهد.
آیا Kotlin قرار است Java را از رده خارج کند؟
در یک کلام، خیر چرا که در هر صورت جاوا هم همچون دیگر زبانهای برنامهنویسی مطرح دنیا روز به روز به بلوغ بیشتری رسیده و فیچرهای خوبی به آن افزوده میشود و همانطور که اشاره شد، بیس (پایه) جاوا و کاتلین بسیار مشابه و نزدیک به هم بوده و ساپورت کاتلین توسط اندروید ممکن است حتی منجر به رشد جاوا نیز گردد چرا که کماکان بسیاری از فناوریهایی جاوایی در حین کدنویسی با کاتلین مورد استفاده قرار میگیرند (البته با توجه به اختلافات اوراکل و گوگل، این موضوع که یک روز بالاخره جاوا برای توسعهٔ اپهای اندرویدی از رده خارج خواهد شد خیلی دور از انتظار نیست، اما مسلماً چنین روزی آنقدرها نزدیک نخواه بود)
نتیجه گیری پایانی در مورد جدیدترین زبان برنامه نویسی اندروید (کاتلین)
راسیتش این قد این زبان با حال و راحت است که نمی شود به راحتی قید آن را زد و به نظرم اگر می توانید حتما یه نگاهی بهش بندازید و بیشتر در مورد مطالعه کنید. البته در بخش پایین سعی کرده ایم چند ویدئو خوب از سراسر اینترنت پیدا کنیم و برای شما در پایین این مطلب قرار دهیم. درسته که کاتلین به عنوان جدیدترین زبان برنامه نویسی اندروید معرفی شده است اما به نظرم ارزش یادگیری را دارد.
پیشنهاد میکنم حتما ویدیوهای زیر در رابطه با جدیدترین زبان برنامه نویسی اندروید را ببینید.
ویدیو مهاجرت از جاوا به کاتلین – زبان اصلی
ویدیو همه چیز در مورد زبان برنامه نویسی کاتلین – زبان اصلی
ویدیو بهتر برنامه نویسی کردن در اندروید با استفاده از کاتلین – زبان اصلی
ویدیو با کاتلین بهتر میتوانید کار کنید – زبان اصلی
توجه: پیشنهاد میکنم حتما به سایت اصلی زبان برنامه نویسی کاتلین با نام kotlinlang مراجعه کنید البته در سایت خود اندروید هم بخش برای این زبان برنامه نویسی تدارم دیده اند که با عنوان Develop Android apps with Kotlin وجود دارد. پیشنهاد میکنم حتما به این سایت ها نگاهی بندازید مطالب خوبی در مورد برنامه نویسی کاتلین در آنها وجود دارد.