کاتلین فارسی

فهرست

1 - مقدمه

1.1 ) به دوره خوش آمدید

1.2 ) چرا کاتلین؟

2 - مبانی کاتلین

2.1 ) آشنایی با JVM

2.2 ) نصب کردن ابزارآلات

2.3 ) کاتلین REPL

2.4 ) ساختار یک برنامه کاتلین

2.5 ) کاتلین با IntelliJ IDEA

2.6 ) خلاصه بخش دوم

3 - کد نویسی مقدماتی کاتلین

3.1 ) تعریف متغیر در کاتلین

3.2 ) کار با Type های پایه ای

3.3 ) حلقه ها در کاتلین

3.4 ) عبارت های شرطی در کاتلین

3.5 ) اضافه کردن پگیج ها در کاتلین و خلاصه بخض سوم

4 - توابع

4.1 ) توابع در کاتلین

4.2 ) تابع با پارامترهای پیشفرض و نامیده شده

4.3 ) تابع با پرامترهای نامحدود و خلاصه بخش چهارم

5 - کلاس ها

5.1 ) کلاس ها در کاتلین

5.2 ) توابعِ عضو در کاتلین

5.3 ) visibility modifier ها در کاتلین

5.4 ) کلاس های دیتا در کاتلین

5.5 ) کلاس های enum در کاتلین

5.6 ) Object ها در کاتلین و خلاصه بخش پنج

6 - ارث بری

6.1 ) ارث بری در کاتلین

6.2 ) کارکردن با کلاس های abstract در کاتلین

6.3 ) کلاس های interface در کاتلین

6.4 ) نگاه کوتاه به generic ها و خلاصه بخش شش

7 - کارکردن با Null ها

7.1 ) null safety و خلاصه بخش هفت

8 - نکات اضافه

8.1 ) type casting در کاتلین

8.2 ) چندتایی ها (Tuples)

8.3 ) deconstructing values

8.4 ) کار کردن با exception ها

8.5 ) constant ها

8.6 ) annotation ها در کاتلین و خلاصه بخش هشت

9 - نگاه functionalای

9.1 ) توابع Higher-Order

9.2 ) عبارت های لاندا در کاتلین

9.3 ) closure ها در کاتلین

9.4 ) عبارت های الحاقی در کاتلین و خلاصه بخش نهم

10 - قابلیت همکاری و Interoperability

10.1 ) همکاری با جاوا

10.2 ) صحبت کردن با جاوا از کاتلین

10.3 ) کار کردن با null ها از جاوا

10.4 ) صحبت کردن با کاتلین از جاوا

10.5 ) توابع و خصیصه های درجه اول

10.6 ) توابع الحاقی کاتلین از جاوا

10.7 ) همکاری با جاوا 7 و 8 و خلاصه بخش دهم

11 - کتابخانه استاندارد

11.1 ) کتابخانه استاندارد کاتلین و کارکردن با کالکشن ها در کاتلین

11.2 ) مرور کوتاه بر روی filtering و mapping و flatmapping در کاتلین

کاتلین با IntelliJ IDEA

ویرایش

خب تا اینجا یادگرفتیم چگونه با استفاده از Command line و یک Text Editor برناممون رو بنویسیم و اجرا کنیم. ولی خب ما بیشتر این دوره رو از IntelliJ IDEA استفاده میکنیم و فرقی نمیکنه که شما از نسخه رایگان یا پولی این محصول استفاده میکنید، در هر دو صورت میتونید همراه ما باشید. البته IDE های دیگری هم هستند که کاتلین رو ساپروت میکنند به مانند Eclipse,Vim,VSCode و به مانند این ها چندین IDE دیگری هستند که کاتلین رو ساپورت میکنند.

IntelliJ رو باز کنید و روی Create New Project کلیک کنید.

بعد از اون با صفحه ای مواجه میشید، از سمت چپ گزینه کاتلین را پیدا کرده و بر روی ان کلیک میکنیم، سپس از صفحه ای که سمت راست برامون ظاهر میشه Kotlin (JVM) رو انتخاب میکنیم.

ما بعدا گزینه های maven و gradle رو هم برای ساخت برنامه های کاتلین بررسی میکنیم ولی فعلا از ورژن ساده IntelliJ استفاده میکنیم. برروی گزنه Next کلیک میکنیم.

خب اسم پروژه و محل قرارگیری پروژه رو مینویسیم. من اینجا از JDK 1.8 استفاده میکنم و قسمت پایینی هم همونیه که دربارش صحبت کردیم، رانتایم کاتلین. اگه روی Create کلیک کنیم:

میبینم که اینجا دو گزینه دارم یا از لایبری پلاگین شده در IntelliJ استفاده کنم و یا این که از ورژن Include شده در برنامم که بسته به نوع برنامه ای که میخواید توسعه بدید اون رو انتخاب کنید. نکته ای که هست اینکه من اینجا همینطور که میبینید از ورژن 1.1.3-2 استفاده میکنم، ترجیحا اگر نسخه جدید آن را آپدیت کنید و همراه ما باشید.

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

ظاهر برنامم اینجوریه که میبینید، حالا شاید به خاطر ورژن های متفاوت کاتلین و یا آپدیت های IntelliJ با ظاهری دقیقا به این شکل مواجه نشید ولی در حالت کلی به این صورت هست که میبینید.

برروی فولدر src راست کلیک میکنم مسیر New>Kotlin File/Class میرم و فایل Main رو میسازم.

و میبینم که فایل Main.kt در زیرشاخه src ساخته شده

اگر دقت کنیم میبینیم که هیچ ساختار پکیجی اینحا مشاهده نمیکنیم، چرا که ما پکیجی برای این فایل درست نکردیم.

خب اینجا من تنها کلمه main رو مینویسم و دکمه Tab رو فشار میدم و کاری که IntelliJ اینجا برامون انجام میده اینه که یک تابع Main رو برام درست میکنه. دقیقا مثل جاوا که ما اگه کلمه psvm رو مینوشتیم تابع استایک Main رو برامون درست میکرد، اینم دقیقا همون کارو برای کاتلین انجام میده.

حالا اگه من کد زیر رو بنویسم:

fun main(args: Array<String>) {
    val message = "Hello From IDEA!"
    println(message)
}

حالا میتونیم پروژه رو ران کنیم و نتیجه رو ببینیم.

من همچنین میتونم دیباگ کنم.روی یک خط از برنامه با کلیک کردن روی نوار کناری علامت میذارم و دوباره روی شکلک کاتلین کلیک میکنم و این دفعه گزینه دیباگ رو میزنم.

بنابراین استفاده از IntelliJ این امکان رو میده که ما بتونیم برناممون رو کامپایل،اجرا دیباگ و خیلی کار های دیگه روش انجام بدین. ضمنا یادتون نره که Kotlin توسط همین شرکتی که IntelliJ رو ساخته درست شده و مطمئن باشید اگه قرار باشه ویژگی خاصی رو در کاتلین ببنین اولین بار با استفاده از IntelliJ اونو خواهید دید.