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

                                     

ⓘ کاتلین

کاتلین یک زبان برنامه‌نویسی عمومی، مستقل از سکو از نوع ایستا است که بر روی ماشین مجازی جاوا اجرا می‌شود. همچنین می‌تواند به سورس کد جاوا اسکریپت یا کد ماشین نیز کامپایل شود. اولین توسعهٔ آن توسط تیم برنامه‌نویسان JetBrains واقع در سن پترزبورگ روسیه انجام شد. کاتلین در ژانویهٔ سال ۲۰۱۲ به عنوان زبان ماه انتخاب شد. با وجود آنکه کاتلین از نظر syntax با جاوا سازگار نیست، این زبان طراحی شده تا با کد جاوا همکاری داشته باشد و قابلیت تبدیل به کد های جاوا یا برعکس در آن وجود دارد کتابخانه‌های استاندارد نسخه جاوای آن، متکی بر کتابخانه‌های کلاس جاوا است.

                                     

1. تاریخچه

در ژوئیه ۲۰۱۱، JetBrains از پروژهٔ کاتلین پرده برداری کرد، زبانی جدید برای ماشین مجازی جاوا، که برای یک سال تحت توسعه و پیشرفت قرار داشت. سرپرست Dmitry Jemerov، JetBrains، اظهار داشت بیشتر زبان‌های برنامه‌نویسی، آن ویژگی‌هایی که دنبالش هستند را ندارند. به استثناء اسکالا. او به زمان کند کامپایل اسکالا به عنوان کمبودی واضح اشاره کرد. یکی از اهداف اصلی کاتلین این است که به همان سرعت زیاد جاوا کامپایل شود. در فوریهٔ سال ۲۰۱۲، JetBrains منبع باز این پروژه را تحت مجوز Apache 2 ارائه کرد. Jetbrains امیدوار است که این زبان جدید IntelliJ IDEA را به پیش ببرد.

                                     

2. فلسفه

سرپرست توسعه، Andrey Breslav، بیان کرده کاتلین طراحی شده تا زبانی صنعتی-قدرتی و شی گرا بوده و زبانی بهتر از جاوا باشد. اما هنوز پر از سازگاری‌هایی با کد جاوا است که اجازه داده کمپانی‌ها مهاجرتی تدریجی از جاوا به کاتلین داشته باشند.

                                     

3. نحوه

مشابه با Pascal, Haxe, PL/SQL, F#, Go و اسکالا ، اعلامات متغیر کاتلین و پارامتر لیست‌ها دارای نوع هستند که بعد از نام متغیر می‌آید با جدا کنندهٔ کالن. مانند دیگر زبان‌های مدرن مانند اسکالا و Groovy، سمی کالن‌ها به عنوان عبارت خاتمه دهنده اختیاری هستند. در بیشتر اوقات یک خط جدید برای کامپایلر کافی است تا بتواند استنباط کند که عبارت به پایان رسیده است.

                                     

4. معنی Semantics

کاتلین علاوه بر پشتیبانی کلاس‌ها و متدهای که در کاتلین به آن‌ها توابع عضو member functions می‌گوییم) برنامه‌نویسی شی گرا، برنامه‌نویسی رویه‌ای procedural programming را نیز با استفاده از توابع پشتیبانی می‌کند. همانند C و ++C، نقطهٔ شروع به برنامهٔ کاتلین تابعی به نام main است که آرایه‌ای شامل خطوط دستور را منتقل می‌کند. پوستهٔ script-style و الحاق رشته‌ای Perl و Unix/Linux نیز پشتیبانی می‌شود. همچنین استنتاج نوع هم پشتیبانی شده است.

مثال: Hello, world!

کاتلین بین نوع‌هایی که مقدار null می‌پذیرند و آنهایی که نمی‌پذیرند تفاوت قائل می‌شود. تمام شی‌هایی که null پذیر هستند باید به با یک پسوند "? بعد از اسم نوع تعریف شوند. عملیات روی شی‌های null پذیر نیاز به توجه خاص توسعه دهندگان دارد. عمل چک کردن null باید قبل از استفاده از مقدار انجام شده باشد. کاتلین عملگرهای null-safe را برای کمک به توسعه دهندگان فراهم آورده ست.

  • :? عملگر یگانی null اغلب ارجاع می‌دهد مانند عملگر Elvis
  • .? عملگر ناوبری امن برای دسترسی امن به یک متد یا ویژگی یک شی که ممکن است null باشد، می‌تواند مورد استفاده قرار گیرد. اگر شی null باشد، متد فراخوانی نمی‌شود و عبارت برابر null قرار می‌گیرد.

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

                                     

5. ابزارها

  • پلاگین Gradle
  • پلاگین آپاچی ماون
  • Apache Ant task.
  • IntelliJ IDEA پشتیبانی پلاگین برای کاتلین را دارد. IntelliJ IDEA 15 اولین ورژنی است که بستهٔ نرم‌افزاری پلاگین کاتلین را در IntelliJ Installer آورده است و پشتیبانی ان را فراهم آورده است.
  • همچنین JetBrains دارای یک Eclipse plug-in است.
                                     

6. زبان‌های مشابه

زبان‌های دیگری نیز در نظر گرفته شده‌اند تا زبانی بهتر از جاوا برای ماشین مجازی جاوا باشند.

  • گوسو زبان برنامه‌نویسی
  • کلوژر
  • سیلان برنامه‌نویسی
  • اسکالا
  • فانتوم زبان برنامه‌نویسی

موضوعات مرتبط سربارگزاری عملگرها

                                     
  • کاتلین سبیلیوس به انگلیسی: Kathleen Sebelius سیاست مدار از حزب دموکرات و وزیر کنونی وزارت بهداشت و خدمات انسانی ایالات متحده آمریکا است. او از سال
  • بایگانی شده از اصلی در فوریه دریافت شده در اوت کاتلین کندی در بانک اطلاعات اینترنتی فیلم ها فهرست آثار کاتلین کندی در موزیک برینز ن ب و
  • بایگانی شده از اصلی در فوریه دریافت شده در مارس کاتلین ترنر در بانک اطلاعات اینترنتی فیلم ها فهرست آثار کاتلین ترنر در موزیک برینز ن ب و
  • کاتلین بیکر انگلیسی: Kathleen Baker زاده فوریه یک شناگر اهل ایالات متحده آمریکا است. از افتخارات وی میتوان به کسب مدال نقره شنا متر کرال
  • نوامبر دریافت شده در اوت وبگاه رسمی کاتلین ویلهویت در بانک اطلاعات اینترنتی فیلم ها فهرست آثار کاتلین ویلهویت در موزیک برینز ن ب و
  • کاتلین پارتریج انگلیسی: Kathleen Partridge زاده دسامبر بازیکن هاکی روی چمن اهل استرالیا بود. کاتلین پارتریج در Sports - Reference.com انگلیسی
  • کاتلین به انگلیسی: Kathleen یک منطقه مسکونی در ایالات متحده آمریکا است که در شهرستان پولک فلوریدا واقع شده است. کاتلین کیلومتر مربع مساحت و
  • Robertson بایگانی شده از اصلی در نوامبر دریافت شده در اوت کاتلین رابرتسون در بانک اطلاعات اینترنتی فیلم ها کاتلین رابرتسون در توئیتر ن ب و
  • کاتلین و می به انگلیسی: Kathleen and May یک کشتی است که طول آن فوت متر می باشد. این کشتی در سال ساخته شد. مشارکت کنندگان ویکی پدیا.