گوگل در کنفرانس I/O سال ۲۰۱۷ زبان برنامه نویسی کاتلین را بعنوان زبان رسمی توسعه ی اندروید معرفی کرد که توسط تیم جت برینز ( یک تیم برنامه نویس در روسیه ) ساخته شده است.

از قدرت های زبان کاتلین که باعث شد گوگل آنرا بعنوان زبان رسمی معرفی بکند سازگاری این زبان با جاوا و پشتیبانی در محیط اندروید استودیو است. بعد از معرفی رسمی کاتلین توسط گوگل ، این زبان خود را در لیست برترین زبان‌های برنامه نویسی سال 2018 پیدا کرد.

بین سال‌های 2017 تا اواسط 2018 ، محبوبیت این زبان افزایش چشم گیری داشته است که دلیلش معرفی شدن این زبان در کنفرانس گوگل است. گزارش آماری در حوزه های مختلف توسعه دهندگان اپلیکیشن های موبایل در سطح جهان نشان میدهد که پس از سال ۲۰۱۷ و در عرض یکسال ۲۰٪ از اپلیکیشن های اندرویدی که با جاوا بودند به کاتلین مهاجرت کردند. این جنبش باعث افزایش تقاضای برنامه نویس کاتلین در بازار کار برنامه نویسان نیز شده است.

در این مقاله به ۱۵ شرکت اشاره خواهیم کرد که قبلاً از زبان جاوا استفاده میکردند ولی الان به زبان کاتلین مهاجرت کرده‌اند و شما هم میتوانید از آن‌ها ایده بگیرید تا اگر کاتلین مناسب شما بود آنرا یاد بگیرید و با آن کار کنید.

اما قبل از بررسی ۱۵ شرکت بهتر است مزایای کاتلین را کمی بررسی کنیم تا با دید بهترین ادامه ی مقاله را بخوانید و از آن لذت ببرید.

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

مزایای تجاری انتخاب Kotlin (زبان رسمی توسعه ی اندروید ) چیست ؟

۱ - بهبود قابلیت نهگداشت پذیری کدها به عبارتی دیگر توسعه ی سریعتر از نظر زمانی

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

برخی از ویژگی‌ها با زبان کاتلین ارائه شده که باعث سادگی و کمتر شدن کدها شده است مثل Smart Casts, Data Classes, Properties و Type Interface

 

۲ − موارد کمتر crash اپلیکیشن های تولید شده

اپلیکیشن های متن باز اندروید که با زبان kotlin نوشته شده‌اند امنیت بهترین نسبت به برنامه‌های کدشده ی جاوا دارند،دلیل این اتفاق جلوگیری از خطاها و اشتباهات رایج در طول برنامه نویسی توسط کاتلین است که منجر به تولید برنامه‌هایی با باگ ها و کرش های کمتر میشود.

همچنین کاتلین روی یک سیستم fail-fast کار میکند که تمام مشکلات کدنویسی که منجر به خراب شدن اپلیکیشن شود را فوراً گزارش میدهد.

سیستم fail-fast کاتلین به دنبال باگ ها میگردد و از وقوع مجدد آن‌ها جلوگیری میکند.

 

۳ - کدهای کمتر = نگهداشت پذیری راحت تر

اپلیکیشن های نوشته شده به زبان kotlin نسبت به اپلیکیشن های نوشته شده به java خطوط کدهای بسیار کمتری دارد. این ویژگی علاوه بر اینکه توسعه ی اپلیکیشن ها را راحت‌تر کرده بلکه نگهداشت پذیری پروژه های کاتلینی را نیز راحت کرده است.

جدای از مزیت‌های تجاری ، مزایای متعدد دیگری نیز برای توسعه ی اپ های android با کاتلین وجود دارد.

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

 

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

 

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

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

۱ پذیرش جمعی

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

 

۲ - مختصر بودن

اپلیکیشن های موبایل که با کاتلین توسعه داده می‌شوند بسیار از نظر کدها بسیار مختصر هستند و همین مورد باعث توسعه سریعتر و باگ کمتر میشود.

 

۳ - تجربه ی کاربری بهتر

زبان برنامه نویسی کاتلین با حذف باگ ها و احتمال کرش های اپ در آینده باعث شده است که اپ با کیفیت تری تولید شود که اولاً پایدار هست و ثانیا باعث تجربه ی لذت بخش استفاده کنندگان میشود.

 

۴ طراحی شده برای Fail-Fast

این بار گوگل تغییری را روی زبان برنامه نویسی جدید خود اعمال کرده است ، آن‌ها کاتلین را fail-fast کرده اند.

یک سیستم fail-fast فوراً ایرادات کدنویسی که باعث خطاهای آینده می‌شود را گزارش میکند. زمانی که یک مشکل بوجود می‌آید سیستم fail-fast فوراً از خطا میدهد و بنابراین توسعه دهندگان کاتلین نمیتوانند کدنویسی را ادامه دهند.

 

در زیر آیکون ۱۴ اپلیکیشن را مشاهده میکنید که برای ساختن اپ اندرویدی خود از kotlin استفاده کرده اند : 

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

1. Pinterest

یکی از اپلیکیشن های محبوب اشتراک گذاری تصاویر است. پینترست یکی از بزرگترین اپلیکیشن هایی هست که از زبان kotlin استفاده کرده است. این برند بطور رسمی از جاوا به کاتلین مهاجرت کرده و مزایای این حرکت را در Droidcon NYC 2016 اعلام کرده اند.

2. Postmates

این اپلیکیشن یک اپلیکیشن سفارش غذا و تحویل غذاست که جدیدا برای اپلیکیشن اندرویدی خود از زبان kotlin استفاده کرده است.یکی از دلایل این کوچ از زبان جاوا به کاتلین مقیاس پذیری بالای کاتلین و استفاده از سیستم fail-fast اعلام شده است.

3. Evernote

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

4. Corda

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

5. Coursera

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

6. Uber

اپلیکیشن اوبر یکی از بزرگترین برند ها و اپلیکیشن های جهان است و این شرکت برای بخش های مختلف درونی از کاتلین استفاده کرده است مثلا برای بخش های پردازش های annotation و پلاگین های Gradle

7. Spring

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

8. Atlassian | Trello

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

9. Basecamp 3

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

10. Twidere for Twitter

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

11. Shadowsocks

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

12. Simple Calendar

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

13. Kickstarter

این اپلیکیشن به ایده ها کمک میکند افرادی مانند موسیقی دان ها ، هنرمندان ، طراحان ،‌مهندسین ، فیلم سازان و ... نمونه کار خود را ارائه میدهند و به دنبال کمک بلاعوض یا اسپانسر میگردند تا بتوانند ایده خود را عملی کنند. این اپ بالای یک میلیون نصب داره و با کاتلین توسعه داده شده.

14. Square

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

15. Gradle

گردل یک سیستم بیلد هست که با مدیریت وابستگی ها و با منطق build اختصاصی منجر به تولید اپلیکیشن های اندرویدی (فایل های APK)  میشه.اخیرا گردل برای نوشتن اسکریپت build زبان کاتلین را معرفی کرده . از انجایی که زبان کاتلین در محیط IDEA و Eclipse هم پشتیبانی میشود زبان برنامه نویسی جدید اندروید به کاربران گردل این اجازه رو میده که یک محیط کامل داشته باشند.

 

سخن پایانی

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

مهاجرت کردن از یک زبان برنامه نویسی به زبان برنامه نویسی دیگر نیاز به یادگیری های جدیدی دارد بنابراین قبل از اینکه پروژه ی جاوا ی خود را به کاتلین ببرید ابتدا مطمئن شوید : 

  1. اگر خودتان برنامه نویس هستید اشتیاق کافی برای یادگیری کاتلین دارید و حاضرید با زبان جدید کدنویسی کنید ؟‌
  2. اگر یک تیم یا گروهی با شما همکاری میکنند با آنها صحبت کنید و ببینید که آیا آنها تجربه ی کار با کاتلین را دارند یا اگر تجربه ای در زمینه ی کاتلین ندارند میتوانند آنرا یاد بگیرند ؟‌

زمانی که شما زبان برنامه نویسی اپلیکیشن یا هر پروژه ی دیگر خود را عوض میکنید باید در نظر داشته باشید قرار است بعضی چیزها حذف شوند ، بعضی چیزها تغییر پیدا کنند و یا برخی چیزهای جدیدی خلق شوند که همه ی اینها ممکن است پروژه ی شما را به مرحله ی بهم ریختگی بکشاند. هرچقدر بخش های مختلف پروژه ی شما به هم دیگر وابسته تر باشند تغییر سخت تر خواهد شد.

اگر با نکات بالا راحت هستید و مشکلی پیش نخواهد آمد چه بهتر است که از زبان جاوا به سمت زبان جدید و قوی کاتلین مهاجرت کنید همانطور که ۱۵ اپلکیشن بالا مهاجرت کرده اند و راضی هستند.

 

لینک کوتاه این مقاله : https://avasam.ir/post/352
این سیستم برپایه ی علاقه مندی شما یک دوره ی مناسب به شما پیشنهاد میدهد
مرا بسوی بهترین دوره ی آموزشی که برای من مناسب است هدایت کن 🤖
برای استفاده ی دیگران و حمایت از ما در جامعه های زیر به اشتراک بگذارید

.:: نظرهای کاربران ::.
محمد / 2 سال پیش

خیلی جالب بود

mostafa heydari / 3 سال پیش

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

دوره ی آموزش پروژه محور ساخت کافه بازار دوره ی آموزش پروژه محور ساخت فروشگاه دیجیکالا آموزش لاراول دوره ی آموزش ویو جی اس