ایجاد اولین پروژه با Kotlin

ایجاد اولین پروژه با Kotlin

ایجاد اولین پروژه با Kotlin


گوگل رسما Kotlin را به عنوان یک زبان درجه اول برای توسعه اندروید در گوگل I / O 2017 اعلام کرد. از Android Studio 3.0، Kotlin در پشتیبانی از Android Studio گنجانده شده است. در این پست، ما Kotlin را برای توسعه یک برنامه Android در Android Studio مورد بررسی قرار خواهیم داد. اما قبل از هرچیزی ابتدا یک دید کلی باید نسبت به کاتلین داشته باشید. بنابراین ابتدا این مطلب را بخوانید:

زبان برنامه نویسی کاتلین

ایجاد اولین پروژه با کاتلین


گوگل رسما Kotlin را به عنوان یک زبان درجه اول برای توسعه اندروید در گوگل I / O 2017 اعلام کرد. از Android Studio 3.0، Kotlin در پشتیبانی از Android Studio گنجانده شده است. در این پست، ما Kotlin را برای توسعه یک برنامه Android در Android Studio مورد بررسی قرار خواهیم داد. اما قبل از هرچیزی ابتدا یک دید کلی باید نسبت به کاتلین داشته باشید. بنابراین ابتدا این مطلب را بخوانید:


برای شروع، شما باید Android Studio 3.0 را دانلود کنید یا افزونه Kotlin را در Android Studio خود اضافه کنید.


نصب پلاگین کاتلین در اندروید استودیو 

  • نصب پلاگین کاتلین در اندروید استودیو نسخه 3 به پایین

در نسخه های بالاتر از Android Studio ما به سادگی یک پروژه جدید در Android Studio ایجاد می کنیم و پشتیبانی از Kotlin را بررسی می کنیم و به طور معمول شروع می کنیم. اما برای آندروید استودیو با یک نسخه کمتر از 3.0، ما باید پلاگین Kotlin را به صورت دستی از منوی Plugins نصب کنیم.


می توانید از مسیر File >> Settings >> Plugins این پلاگین را نصب کنید. سپس بر روی دکمه Browse Repositories کلیک کنید و Kotlin Plugin را سرچ و سپس نصب کنید.

 

ایجاد پروژه کاتلین


ایجاد پروژه اندروید با Kotlin

به طور پیش فرض، Android Studio 3.0 گزینه پشتیبانی Kotlin برای برنامه Android شما را نشان می دهد. یک پروژه جدید در Android Studio ایجاد کنید، پشتیبانی Kotlin را بررسی کنید و به طور معمول با Android Studio 3.0 شروع شده است.

ایجاد اولین پروژه kotlin


برای رفتن از پروژه اندروید جاوا به پروژه آندروید Kotlin، شما می توانید روند زیر را دنبال کنید:


پیکربندی Kotlin


Kotlin را می توان با انتخاب Tools >> Kotlin >> Configure Kotlin پیکربندی کرد. سپس روی «Sync Now» کلیک کنید. این مرحله برای نسخه اندروید استودیو پیش از نسخه 3.0 قابل اجرا است. بهترین راه این است که Android Studio را به روز کنید.


در اندروید استودیو 3.0، به طور پیش فرض، شما Kotlin Activity را دارید. برای آندروید استودیو با نسخه های کمتر از 3.0، شما می توانید Java Activity خود را به Kotlin Activity تبدیل کنید. 


"Quick Search" را باز کنید یا Ctrl + Shift + A (برای کاربران ویندوز) را فشار دهید و "Search" کنید. "Convert Java to Kotlin" یا به سادگی با Ctrl + Shift + Alt + K را انتخاب کنید.


کد شما به صورت زیر خواهد بود:

package com.androidmads.kotlinsample_helloworld  
import android.support.v7.app.AppCompatActivity  
import android.os.Bundle  
import android.widget.TextView  
import android.widget.Toast  
class MainActivity: AppCompatActivity() {  
    // Declaration  
    var helloTextView: TextView ? = null  
    override fun onCreate(savedInstanceState: Bundle ? ) {  
        super.onCreate(savedInstanceState)  
        setContentView(R.layout.activity_main)  
        // Initialization  
        helloTextView = findViewById(R.id.helloTxtView) as TextView  
        // Assigning data to TextView in runtime  
        helloTextView!!.text = "Hello Kotlin!";  
        // Click Listener in Kotlin  
        helloTextView!!.setOnClickListener({  
            Toast.makeText(applicationContext, "Hello TextView Clicked", Toast.LENGTH_LONG).show();  
        })  
    }  
}  


نحوه استفاده از متد Extensions در Kotlin


در این قسمت از آموزش فارسی کاتلین ما نحوه ایجاد و استفاده از افزونه ها برای توسعه اندروید با استفاده از Kotlin را یاد می گیریم.


افزونه ها در Kotlin


Kotlin، شبیه به #C و Gosu، توانایی گسترش کلاس را با قابلیت های جدید بدون نیاز به ارث بردن از کلاس و یا استفاده از هر نوع الگوی طراحی مانند Decorator فراهم می کند. این کار از طریق اعلامیه های خاص به نام extensions انجام می شود.


قسمت کدنویسی


در اینجا ما به صورت زیر پیش خواهیم رفت:

 

  • ایجاد یک پروژه جدید با کاتلین
  • ایجاد افزونه ها در کاتلین
  • پیاده سازی افزونه ها در کاتلین

گام اول: 
Creating a new project with Kotlin

 

  • Android Studio را باز کنید و Create new project را انتخاب کنید
  • نام پروژه را مشخص کنید
  • سپس نوع Activity خود را مثلا Navigation Drawer Activity, Empty Activity و غیره را انتخاب کنید.

 

افزونه ها در کاتلین

 

  • و در آخر Finish را بزنید.

گام دوم:
Creating Extensions in Kotlin


در این قسمت از آموزش Kotlin ما خواهیم فهمید که چگونه یک افزونه برای کاتلین ایجاد کنیم.
برای اعلام یک تابع extension، ما باید نام خود را با یک نوع گیرنده، یعنی نوع توسعه یافته، پیشوند کنیم. کدزیر یک تابع swap را به <MutableList <Int اضافه می کند.

 

fun MutableList<Int>.swap(index1: Int, index2: Int) {  
    val tmp = this[index1] // 'this' corresponds to the list  
    this[index1] = this[index2]  
    this[index2] = tmp  
}  

مثال زیر برای نشان دادن Toast است:
 

()Toast.makeText(this, message, Toast.LENGTH_SHORT).show

یک فایل کاتلین به نام Extensions.kt ایجاد کنید و کدهای زیر را در آن وارد کنید:

 

fun Context.showShortToast(message: CharSequence) {  
    Toast.makeText(this, message, Toast.LENGTH_SHORT).show()  
}

 

در اینجا، نوع پایه یا گیرنده توست "Context" است. بنابراین، ما یک تابع prefixed با "context" ایجاد کرده ایم.
به همین ترتیب، یک فرمت ایجاد کرده ایم که « Toastبا طولانی مدت» و «گفتگوی هشدار با یک گزینه» را نشان می دهد. به صورت زیر:

package com.androidmad.ktextensions  
  
import android.content.Context  
import android.support.v7.app.AlertDialog  
import android.support.v7.app.AppCompatActivity  
import android.view.View  
import android.widget.Toast  
  
fun Context.showShortToast(message: CharSequence) {  
    Toast.makeText(this, message, Toast.LENGTH_SHORT).show()  
}  
  
fun Context.showLongToast(message: CharSequence) {  
    Toast.makeText(this, message, Toast.LENGTH_LONG).show()  
}  
  
fun AppCompatActivity.showAlert(title: CharSequence, message: CharSequence) {  
    val builder = AlertDialog.Builder(this)  
            .setTitle(title)  
            .setMessage(message)  
            .setPositiveButton("Ok", { dialog, which ->  
            })  
  
    val dialog: AlertDialog = builder.create()  
    dialog.show()  
}  

گام سوم:
Implementation of Extension in Kotlin


در این بخش از آموزش فارسی کاتلین، ما خواهیم دید که چگونه متد  Extension فوق را در آندروید صدا بزنیم.


یک فایل layout به نام activity_main.xml ایجاد کنید و کدهای زیر را وارد کنید:

<?xml version="1.0" encoding="utf-8"?>  
<android.support.constraint.ConstraintLayout xmlns:android="http://schemas.android.com/apk/res/android"  
    xmlns:app="http://schemas.android.com/apk/res-auto"  
    xmlns:tools="http://schemas.android.com/tools"  
    android:layout_width="match_parent"  
    android:layout_height="match_parent"  
    tools:context="com.androidmad.ktextensions.MainActivity"  
    tools:layout_editor_absoluteY="81dp">  
  
    <Button  
        android:id="@+id/btn_short"  
        android:layout_width="wrap_content"  
        android:layout_height="wrap_content"  
        android:layout_marginTop="128dp"  
        android:text="Show Short Toast"  
        app:layout_constraintEnd_toEndOf="parent"  
        app:layout_constraintStart_toStartOf="parent"  
        app:layout_constraintTop_toTopOf="parent" />  
  
    <Button  
        android:id="@+id/btn_long"  
        android:layout_width="wrap_content"  
        android:layout_height="wrap_content"  
        android:layout_marginBottom="208dp"  
        android:text="Show Long Toast"  
        app:layout_constraintBottom_toBottomOf="parent"  
        app:layout_constraintEnd_toEndOf="parent"  
        app:layout_constraintStart_toStartOf="parent" />  
  
    <Button  
        android:id="@+id/btn_alert"  
        android:layout_width="wrap_content"  
        android:layout_height="wrap_content"  
        android:layout_marginBottom="92dp"  
        android:text="Show Alert Dialog"  
        app:layout_constraintBottom_toBottomOf="parent"  
        app:layout_constraintEnd_toEndOf="parent"  
        app:layout_constraintStart_toStartOf="parent" />  
  
</android.support.constraint.ConstraintLayout>  

خروجی به صورت زیر خواهد بود:

extensions in kotlin


ما سه دکمه در صفحه ما داریم تا Toast با مدت زمان کوتاه، مدت زمان طولانی و گفتگوی هشدار با یک گزینه را نشان می دهد. MainActivity.kt را باز کنید و کدهای زیر را برای این Buttonها اضافه کنید:

 


// Toast with Short Duration  
showShortToast("Show Short Toast using extensions method")  
// Toast with Long Duration  
showLongToast("Show Long Toast using extensions method")  
// Alert Dialog with Single Option  
showAlert("Android Extensions method", "Show Alert Dialog")  

کد کامل:

package com.androidmad.ktextensions  
  
import android.support.v7.app.AppCompatActivity  
import android.os.Bundle  
import kotlinx.android.synthetic.main.activity_main.*  
  
class MainActivity : AppCompatActivity() {  
  
    override fun onCreate(savedInstanceState: Bundle?) {  
        super.onCreate(savedInstanceState)  
        setContentView(R.layout.activity_main)  
  
        btn_short.setOnClickListener({  
            showShortToast("Show Short Toast using extensions method")  
        })  
  
        btn_long.setOnClickListener({  
            showLongToast("Show Long Toast using extensions method")  
        })  
  
        btn_alert.setOnClickListener({  
            showAlert("Android Extensions method", "Show Alert Dialog")  
        })  
    }  
}  


Kotlin یک زبان برنامه نویسی جدید برای توسعه اندروید است. اگر چه Kotlin به عنوان یک زبان کلاس اول برای آندروید معرفی می شود، جاوا از توسعه اندروید محروم نخواهد شد. لطفا دیدگاه های خود را در مورد آینده جاوا در توسعه اندرویدی را نیز با ما در میان بگذارید.

منبع: sharpcorner

نظرات یا سوالات خودرا با ما درمیان بگذارید

0912 097 5516 :شماره تماس
0713 625 1757 :شماره تماس