زبان برنامه نویسی کاتلین چیست
کاتلین چیست
به طور کلی زبانهای برنامهنویسی، بلوکهای ساختاری هر نرم افزاری هستند. برای تهیه یک نرمافزار یا یک برنامه، باید با زبانهای مختلفی از جمله: جاوا، پایتون، PHP و …کاملا آشنا باشید. یکی از این زبانهای برنامهنویسی محبوب و پرکاربرد (Kotlin Programming Language) است. در ادامه با مبحث زبان برنامه نویسی زبان برنامه نویسی کاتلین چیست با ما همراه باشید.
از زمانی که گوگل زبان برنامهنویسی کاتلین را به رسمیت شناخته است، کاتلین به یکی از محبوبترین زبانهای برنامهنویسی برای توسعه اندروید تبدیل شده است.
در حالی که زبان برنامهنویسی کاتلین یک زبان جدید و تازه وارد است اما به دلیل کارایی زیاد و مفید، منجر به آن شده است که زبان برنامهنویسی جاوا را پشت سر بگذارد و خود به عنوان یک زبان برنامهنویسی، در جایگاه بهترین زبانهای برنامهنویسی قرار بگیرد.
کاتلین یک زبان برنامهنویسی است که هدفی استاتیکی دارد و دارای استنباط عمومی است. این جمله بدان معناست که کاتلین به صورت کاملا گسترده برای توسعه سیستم عامل اندروید طراحی و برنامهریزی شده است. کاتلین به گونهای طراحی و برنامهریزی شده است که کاملا با زبان برنامهنویسی جاوا همکاری کند، تا بتواند نسخه JVM را بسازد و هدف اصلی و مشخص کاتلین عمدتا JVM است.
کاتلین Kotlin یک زبان برنامهنویسی منبع باز (open-source) است. کاتلین در سال 2011 توسط یک شرکت نرمافزاری بسیار معروف به نام (JetBrains که قبلا با عنوان IntelliJ Software شناخته میشد) معرفی شد و زبان جدیدی برای JVM بود.
مهمترین ویژگیهای زبان برنامهنویسی کاتلین چیست
دلیل محبوبیت زبان برنامهنویسی کاتلین، داشتن ویژگیهای منحصر به فرد است که در این بخش میخواهیم تک تک جزئیات ویژگیهای کاتلین را مورد بررسی قرار دهیم تا متوجه شویم که دلیل محبوبیت کاتلین چیست.
مختصر است
کاتلین مختصرتر از جاوا است و در مقایسه با جاوا، لازم است که تقریبا 40٪ از کدنویسی را در برنامه اجرا کنید.
قابلیت همکاری با زبان برنامه نویسی جاوا
زبان برنامهنویسی کاتلین (Kotlin) با جاوا تعامل زیادی دارد. شما هرگز با استفاده از کاتلین (Kotlin) در یک پروژه جاوا با مشکلی روبرو نخواهید شد.
دارای ویژگیهای برجسته
کاتلین چندین ویژگی پیشرفته از جمله بارگذاری بیش از حد اپراتور، عبارات لامبدا (Lambda expressions) و قالبهای رشته را ارائه میدهد.
یادگیری آسان
زبان برنامهنویسی کاتلین جزء زبانهای برنامهنویسی است که به راحتی، میتوان آن را آموخت. اگر پیش زمینهای از زبان برنامهنویسی جاوا داشته باشید، یادگیری کاتلین برایتان مانند آب خوردن میشود.
داشتن خطای بسیار اندک
کاتلین (Kotlin) یک زبان برنامهنویسی با نوع استاتیک است که باعث میشود هنگام کامپایل شدن (compile-time) هر مورد خطایی را پیدا کند. زبانهای برنامهنویسی با استاتیک تایپ (Statically typed) در زمان کامپایل شدن هر مورد خطایی که وجود داشته باشد را چک میکنند.
بنابراین مواردی که اشاره کردیم برخی از ویژگیهایی است، که به محبوبیت زبان برنامهنویسی کاتلین (Kotlin) میافزاید.
چرا باید زبان برنامه نویسی کاتلین را بیاموزیم؟
نوشتن 10 الی15 خط کد در جاوا را در نظر بگیرید و همین تعداد کد را فقط در 3 الی4 خط در Kotlin بنویسید. کدام یک را ترجیح میدهید؟ جاوا یا کاتلین؟ قطعا کاتلین درست است؟ بله جوابتان حتما مثبت است و دلیل این عمل این است که کاتلین تعداد کدهای بویلر (boilerplate codes) موجود در جاوا را کاهش میدهد به همین دلیل راحتتر میتوانید کدنویسی را انجام دهید.
کاتلین قابل تعامل است. این بدان معنی است که کد جاوا موجود را میتوان از طریق کد کاتلین (Kotlin code) به روشی طبیعی بازخوانی کرد همچنین برای بدست آوردن کد کاتلین میتوان از جاوا هموار (Java smoothly) استفاده کرد.
چه شرکتهایی از زبان برنامه نویسی کاتلین استفاده میکنند؟
کاتلین از زمان آغاز به کار، محبوبیت خود را افزایش داده است که با تأیید گوگل، شناخت گستردهتری پیدا کرد. 66٪ از توسعهدهندگان میگویند که از کاتلین (Kotlin) برای توسعه اندروید استفاده میکنند.
زبان برنامهنویسی کاتلین به طور کلی سود بسیار زیاد و قابل توجهی را برای شرکتهایی که از آن (زبان برنامهنویسی کاتلین) استفاده میکنند، دارد.
اگر به شرکتهایی که کاتلین را به عنوان یک زبان برنامهنویسی با پتانسیل زیاد به رسمیت میشناسند نگاه کنیم، میتوانیم نامهای شناخته شدهای را در سراسر جهان مانند:
- Atlassian
- Kickstarter
- Uber
- Netflix و بسیاری دیگر را ببینیم.
شکی نیست که در سالهای بعد شرکتهای بیشتری میخواهند کاتلین را برای پروژههای خود انتخاب کنند.
کاتلین یک زبان با هدف کلی است به این معنی که میتواند در حوزههای مختلفی به کار رود. معمولا کاتلین برای توسعه سطح متقابل موبایل، اندروید، JavaScript و سرور استفاده میشود.
اصول زبان برنامه نویسی کاتلین چیست
زبان برنامهنویسی کاتلین اصولی دارد که میخواهیم در این بخش به آنان اشاره کنیم که عبارتاند از:
اصول کاتلین
در یک زبان برنامهنویسی شیگرا (object-oriented) اولین کاری که باید بکنید این است که چگونه یک کلاس و یک شی (class and an object) ایجاد کنید. بنابراین بیایید ببینیم چگونه میتوان یک کلاس و یک شی را با زبان برنامهنویسی کاتلین (Kotlin) ایجاد کرد.
کلاس ها و اشیاء (Classes and Objects)
کاتلین از برنامهنویسی شیگرا (OOP) و همچنین برنامهنویسی کاربردی پشتیبانی میکند. برنامهنویسی شیگرا مبتنی بر اشیاء و کلاسهای، زمان واقعی (real-time) است. کاتلین همچنین از ستونهای زبان OOP مانند کپسوله کردن (encapsulation) ، وراثت (inheritance) و چندشکلی پشتیبانی میکند.
کلاس های کاتلین
کلاس کاتلین مشابه کلاس جاوا است. کلاسهای Kotlin با استفاده از کلمه کلیدی اعلام میشوند. کلاس Kotlin دارای یک هدر کلاس (class header) است که پارامترهای هدر کلاس (class header)، سازندهی بدن کلاس (class body) میباشد.
مانند:
class className{ // Class Header // Prooerty // Member function }
کاتلین شی (Kotlin Object)
یک شیء به عنوان یک موجود در زمان واقعی یا یک موجود منطقی در نظر گرفته میشود که حالت و رفتار دارد. مانند: اینکه دولت بیانگر ارزش یک شی است و رفتارش نشاندهنده عملکرد یک شی است.
از یک شیء برای دسترسی به خصوصیات و عملکرد اعضای یک کلاس استفاده میشود. کاتلین اجازه میدهد تا چندین شیء از یک کلاس ایجاد شوند.
اعلام متغیرها (Variables declaration)
پس از فهمیدن نحوه ایجاد یک کلاس و یک شی، چیز اصلی دیگری که باید بدانید نحوه اعلام یک متغیر در کاتلین است. متغیر در واقع به مکان حافظه مرتبط میشود که برای ذخیره دادهها، استفاده میشود.
اکنون، خواهیم دید که چگونه یک متغیر را در کاتلین اعلام کنیم. متغیر کاتلین با استفاده از کلید واژه var و val اعلام شده است.
مانند:
var xyz ="Edureka"
val abc = 20
ممکن است این سوال را داشته باشید که چرا باید از متغیر var و val استفاده کرد؟! بگذارید برای جواب دادن به این سوال مثالی بیاوریم مانند: در اینجا متغیر xyz از نوع String و متغیر abc از نوع Int است. کامپایلر کاتلین (Kotlin compiler) این را با بیان اولیه میداند.
به این عمل استنباط نوع در برنامهنویسی، گفته میشود. همچنین میتوانید به نوعی صریح اینگونه بیان کنید:
var xyz : String ="Edureka"
val abc : Int = 20
اینگونه است که شما یک متغیر را در زبان برنامهنویسی کاتلین اعلام میکنید.
منظور از توابع زبان برنامه نویسی کاتلین چیست
همانطور که زبانهای برنامهنویسی دیگر توابع دارند. زبان کاتلین نیز دارای توابع مشخصی است که در این بخش به آنان اشاره میکنیم.
توابع کاتلین
توابع کاتلین اساسا به گروهی از کدهای مربوط که همبستگی مختلفی باهم دارند تا یک کار خاص را انجام دهند، گفته میشود. در کاتلین، توابع با استفاده از کلمه کلیدی سرگرمکننده اعلام میشوند.
مانند:
fun (x: Int): Int {
return 2 * x
}
اینگونه است که شما یک عملکرد را در کاتلین اعلام میکنید.
توابع لامبدا (Lambda functions)
توابع لامبدا کلاس اول (first-class) گفته میشود، به این معنی که آنها را میتوان در متغیرها و ساختار دادهها ذخیره کرد. توابع لامبدا (Lambda functions) تابعی است که بدون نام مشخص میشود.
مانند:
fun main(args: Array<String>)
{
val myLambda : (Int) -> Unit ={ p :Int -> println(p)}
addNumber(3,6,myLambda)
}
fun addNumber(a:Int, b:Int, myLambda: (Int) -> Unit)
{
val add = a+b
myLambda(add)
}