همونطور که میدونین، اخیراً توی کنفرانس Google I/O تیم اندروید اعلام کردن که
پشتیبانی رسمی از کاتلین خواهند داشت. این زبان که توسط شرکت
JetBrains (سازندهی IDEهای معروف و قدرتمندی نظیر PHPStorm و IntelliJ IDEA که اندروید استودیو هم برپایهی اون هست) تولید شده، دستور زبان ساده و درعینحال بسیار قدرتمندی داره.
از نسخهی 3 اندروید استودیو، زبان Kotlin همراه با IDE خواهد بود ولی در نسخههای قدیمیتر، توسط پلاگینی که برای این IDE تولید شده و از داخل خود محیط نرمافزار قابل نصب هست، میتونین ازش استفاده کنین.
توی این تاپیک قصد داریم قدم به قدم با این زبان قدرتمند و نوظهور آشنا بشیم. پس با ما همراه باشید.
استفاده از کاتلین برای توسعهی اندروید
کاتلین سازگاری بسیار مناسبی برای توسعهی برنامههای Android داره و تمامی مزایای یک زبان مدرن رو به بستر اندروید میاره بدون اینکه هیچ محدودیت جدیدی ایجاد کنه:
- سازگاری: کاتلین کاملاً با JDK6 سازگاره و این تضمین رو میده که برنامههای نوشتهشده با اون، بدون هیچ مشکلی، قابل اجرا روی دستگاههای قدیمی اندروید هستن. ابزارهای Kotlin کاملاً در اندروید استودیو پشتیبانی میشن و با سیستم ساخت برنامههای اندروید سازگار هستن.
- کارآیی: یه برنامهی نوشتهشده با کاتلین، بهلطف ساختار بایتکدهای بسیار مشابه با جاوا، با همون سرعت برنامهی معادلش در Java اجرا میشه. پشتیبانی کاتلین از توابع درونخطی، کدهایی که با استفاده از لامبدا نوشته میشن، در اغلب مواقع حتی سریعتر از معادلشون در جاوا اجرا خواهند شد.
- قابلیت همکاری: کاتلین 100% با جاوا امکان همکاری داره و به شما اجازه میده که از تمام کتابخانههای موجود اندروید توی یه برنامهی کاتلین استفاده کنید. این موضوع شامل پردازش حاشیهنویسیها هم میشه و درنتیجه اتصال دادهها و Dagger هم کار میکنن.
- رد پا: کاتلین کتابخانهی زمان اجرای بسیار کوچکی داره که میتونه حتی با استفاده از ProGuard کوچکتر هم بشه. توی یه برنامهی واقعی، مجری کاتلین فقط چندصد متد تعریف میکنه که باعث میشه کمتر از 100KB به سایز فایل APK اضافه بشه.
- زمان کامپایل: کاتلین از کامپایل افزایشی کارآمدی پشتیبانی میکنه که باعث میشه باوجود کمی سربار برای ساخت تمیز (Clean Build)، ساختهای بعدی معمولاً با همون سرعت جاوا یا حتی بیشتر انجام بشن.
- منحنی یادگیری: برای یه برنامهنویس جاوا، یادگیری کاتلین خیلی راحته. مبدل خودکار کاتلین به جاوا که داخل پلاگین Kotlin قرار گرفته، به شما در مراحل اولیه کمک میکنه. Koanهای کاتلین به شما راهنمای موردنیاز برای استفاده از قابلیتهای کلیدی زبان کاتلین رو همراه با مجموعهای از تمرینهای تعاملی ارائه میده.
نمونه کارهای انجامشده با کاتلین در اندروید:
کاتلین با موفقیت توسط شرکتهای بزرگی بهکار گرفته شده و برخی از اونها تجربیاتشون رو هم بهاشتراک گذاشتن:
- Pinterest با موفقیت کاتلین رو در برنامهی خودشون معرفی کردن که توسط 150 میلیون کاربر هر ماه داره مورد استفاده قرار میگیره.
- اپلیکیشن اندروید Basecamp صددرصد با کاتلین نوشته شده و تفاوت زیادی رو در خوشحالی برنامهنویسان و افزایش کیفیت و سرعت کار گزارش کردن.
- اپلیکیشن قفل برنامهی Keepsafe هم صددردصد به کاتلین تبدیل شده و این مسئله باعث کاهش 30درصدی در تعداد خطوط برنامه و 10درصدی در تعداد متدها شده.
ابزارهای توسعهی اندروید
تیم Kotlin مجموعهای از ابزارها برای توسعهی اندروید معرفی کردن که فراتر از قابلیتهای استاندارد زبان هست:
- افزونههای اندروید کاتلین یه افزونهی کامپایلر هست که به شما اجازه میده از شر findViewById() خلاص بشین و اونها رو با خصوصیات معنادار تولیدشده توسط کامپایلر جایگزین کنید.
- Anko یه کتابخانه است که مجموعهای از دربرگیرندههای (Wrapper) کاتلین رو در اطراف APIهای اندروید ارائه میده، همراهبا یک DSL که به شما اجازهی جایگزینکردن فایلهای .xml با کدهای کاتلین میده.
قدمهای بعدی