زبان برنامه نویسی کاتلین برای اندروید
زبان برنامه نویسی کاتلین برای اندروید – آموزش برنامه نویسی kotlin
1398-04-04
سورس کد سایت سیستم هوشمند ارائه دهنده خدمات سلامت با php
سورس کد سایت سیستم ارائه دهنده خدمات سلامت با php
1398-04-14
ساخت اولین پروژه کاتلین

ساخت اولین پروژه کاتلین

اولین پروژه با کاتلین – آموزش برنامه نویسی kotlin ، ما در پست های قبل مربوط به آموزش برنامه نویسی kotlin بطور کامل با کاتلین و توانایی هایی که گوگل برای اون مشخص کرده آشنا شدیم و اینکه چرا باید از جاوا به kotlin منتقل بشیم با دلایل قانع کننده !! اما در این پست و در ادامه پست های آموزش برنامه نویسی kotlin میخواهیم اولین پروژه با kotlin ( پروژه Hello World با کاتلین ) ایجاد کنیم.

برای ساخت پروژه کاتلین ما میتونیم از IDE(integrated development environment) های زیر استفاده کنیم

NetBeans
Eclipse
Intellij

خب هرکدام از محیط های برنامه نویسی فوق به اندازه خود قدرتمند و کارا هستند اما ما از Android Studio که از خانواده های Intellij هست استفاده میکنیم که یکی از قدرتمندترین های برنامه نویسی برای اندروید است.درحال حاضر آخرین نسخه اندروید استودیو 3.4.1 هستش که بصورت کامل از کاتلین پشتیبانی میکند.در نسخه های قبل از 3 اندروید استودیو در کانفیگ داخلی خود قابلیت پشتیبانی از kotlin را نداشت و میباست بصورت دستی کانفیگ های مورد نیاز کاتلین رو به پروژه اضافه میکردیم.
اگر اندروید استودیو رو نصب ندارید با مراجعه به این لینک از سایت اصلی اندروید میتونید اندروید استودیو رو برای هر سه سیستم عامل مک , لینوکس و ویندوز دانلود و نصب کنید.

نکته:
نکته قابل توجه اینکه دیگر نیازی به نصب جداگانه JDK (Java Development Kit) و SDK (software development kit) ندارید چراکه از نسخه 3 به بعد تمامی پکیج های پیش نیاز اندروید استودیو درون خود فایل نصبی اندروید استودیو قرار گرفتند و با نصب اندوروید استودیو بقیه پیش نیاز هایش هم نصب خواهند شد.

ساخت اولین پروژه با کاتلین

پس از نصب اندروید استودیو و اجرا کردن آن با کلیک کردن بر روی گزینه زیر یک پروژه جدید ایجاد کنید

Start a new Android Studio project

ساخت اولین پروژه کاتلین
ساخت اولین پروژه کاتلین

در صفحه بعد گزینه Empty Project رو انتخاب کنید و به صفحه آخر مطابق تصویر زیر میرسیم

پروژه Hello World با کاتلین
پروژه Hello World با کاتلین

همونطور که در بخش Language میبینید به ما امکان انتخاب زبان Kotlin رو هم میده ( منظور همان پشتیبانی داخلی اندروید استودیو از kotlin ) که با انتخاب این زبان میتونیم خیلی راحت کلاس های کاتلین رو در کنار کلاس های جاوا (بسته به نیاز) ایجاد کنیم و به راحتی با هم تعامل دارند.

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

This project will support instant apps

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

User androidx.* artifacts

که امکان استفاده از androidx بجای support library رو به شما میدهد

خب حالا پروژه رو با کلیک کردن بر روی دکمه Finish ایجاد میکنیم

پس از build کامل پروژه میتونیم نگاهی به ساختار پروژه کاتلین و تفاوت های آن با جاوا بیندازیم.حتی آیکن کلاس های کاتلین هم متفاوت با جاواست و همچنین پسوند فایل های kotlin که .kt ست

خب حالا برای اینکه ببینیم چه کانفیگ های مخصوص کاتلینی به پروژه اضافه شده کافیست فایل

build.gradle(Project:kotlinprac)

رو باز کنید و خواهید دید که علاوه بر کتابخانه های همیشگی یک کتابخانه کاتلین هم به این فایل اضافه شده

buildscript {
    ext.kotlin_version = '1.3.31'
    repositories {
        google()
        jcenter()
        
    }
    dependencies {
        classpath 'com.android.tools.build:gradle:3.4.1'
        classpath "org.jetbrains.kotlin:kotlin-gradle-plugin:$kotlin_version"
    }
} 

و همچنین در فایل

build.gradle(Module:app)

میبینید که ابتدای فایل دو پلاگین کاتلین اضافه شده

 apply plugin: 'com.android.application'
apply plugin: 'kotlin-android'
apply plugin: 'kotlin-android-extensions'

و در ادامه در بخش وابستگی ها یا dependency ها هم وابستگی کاتلین اضافه شده

dependencies {
…
implementation"org.jetbrains.kotlin:kotlin-stdlib-jdk7:$kotlin_version"
…
}

خب درصورتی که پروژه ما به طور اتوماتیک از kotlin پشتیبانی نکند با اضافه کردن این دستورات میتونیم پروژه را کاتلین کنیم و این بدین معنی نیست که فایل های جاوا پاک یا خراب می شوند بلکه تنها یک آپشن به آپشن های پروژه اضافه خواهد شد.
حالا داخل فایل MainActivity.kt خواهیم دید که چنین دستوراتی داریم

 package com.tejariapp.kotlinprac
import android.support.v7.app.AppCompatActivity
import android.os.Bundle
class MainActivity : AppCompatActivity() {
override fun onCreate(savedInstanceState: Bundle?) {
    super.onCreate(savedInstanceState)
    setContentView(R.layout.activity_main)
}
}

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

 package com.tejariapp.kotlinprac;
import android.support.v7.app.AppCompatActivity;
import android.os.Bundle;
public class Main2Activity extends AppCompatActivity {
@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_main2);
}
}

با یک مقایسه کلی به این دستورات میتونیم چند نکته کلیدی از کاتلین رو متوجه بشیم برای مثال

  • کاتلین نیازی به نقطه ویرگول ; (Semicolon) ندارد
  • ارث بری در کاتلین بجای extend از “:” استفاده میشه
  • کلاس ها بصورت اتوماتیک public هستند و دیگر نیازی به نوشتن کلمه کلیدی public نیست
  • متدهایی که override میشن دیگه نیازی به نوشتن انوتیشین @Override ندارند و فقط بصورت کلمه کلیدی اول متد نوشته میشه
  • متد ها همه با کلمه کلیدی fun شروع میشن

فعلا درک همین تفاوت ها کافیست در پست های بعدی عمیق تر به دستورات kotlin میپردازیم

حالا داخل اکتیوتی کاتلین چنین کدی مینویسیم

Toast.makeText(this,"Hello world",Toast.LENGTH_LONG).show()
Log.d("first prc","Hello world")

خب میشه گفت بین دستورات toast ، log در کاتلین و جاوا هیچ تفاوتی جز نبود Semicolon نیست.
حالا پروژه رو اجرا میکنیم و خواهیم دید هم در لاگ کت و هم بصورت پیغام toast ما Hello world رو میبینم.خب این هم از اولین پروژه اندروید با کاتلین که خیلی هم سخت نبود !

در پست بعدی درباره نحوه تعریف متغیر ها و انواع انها در کاتلین میپردازیم پس با ما همراه باشید

پاسخی بگذارید

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *