12/08/2018, 14:20

Kotlin for Android (II): How to create a new project

Nào, bây giờ chúng ta hãy cùng tiếp tục bài tiếp theo trong chuỗi bài viết về Kotlin nhé, nếu ai chưa xem qua bài introduce về Kotlin thì có thể click tôi đi Trong phạm vi của bài viết ngày hôm nay, mình sẽ giới thiệu cách để import Kotlin vào Android Studio và cách để create một dự án Kotlin nhé! ...

Nào, bây giờ chúng ta hãy cùng tiếp tục bài tiếp theo trong chuỗi bài viết về Kotlin nhé, nếu ai chưa xem qua bài introduce về Kotlin thì có thể click tôi đi Trong phạm vi của bài viết ngày hôm nay, mình sẽ giới thiệu cách để import Kotlin vào Android Studio và cách để create một dự án Kotlin nhé!

Lets go!

Điều đầu tiên chúng ta cần phải download Kotlin plugin, mở Android Studio preferences và tìm kiếm plugin. Okie, xong chúng ta chỉ việc install và restart lại Android Studio.

a.png

Thêm vào root Gradle

buildscript {
    repositories {
        jcenter()
    }
    dependencies {
        classpath "com.android.tools.build:gradle:1.5.0"
        classpath "org.jetbrains.kotlin:kotlin-gradle-plugin:1.0.1"
    }
}

và vào module Gradle

apply plugin: 'com.android.application'
apply plugin: 'kotlin-android'
dependencies {
    compile fileTree(dir: 'libs', include: ['*.jar'])
    compile 'org.jetbrains.kotlin:kotlin-stdlib:1.0.1'
}

xong, sync lại và ta có thể bắt đầu với Kotlin!

Có một điều thú vị là chúng ta có thể sử dụng chung giữa file java và file Kotlin, điều này có nghĩa là sau khi thêm Kotlin vào thì ta có thể sử dụng chúng trong cùng một thư mục với các file java . Tuy nhiên, tốt hơn hết chúng ta nên tạo ra một thư mục có tên là Kotlin và ném tất cả các file Kotlin vào trong đó.

b.png

Convert file java -> kotlin

Rất hay đúng không? thực tế là Kotlin có một công cụ để convert một file java sang file kotlin chỉ cần một cú click chuột .. wow

c.png

Chúng ta sẽ cùng check qua một class của Kotlin xem có gì đặc biệt nhé, mình sẽ ví dụ với một activty:

class MainActivity : ActionBarActivity() {
    override fun onCreate(savedInstanceState: Bundle?) {
        super.onCreate(savedInstanceState)
        setContentView(R.layout.activity_main)
    }
    override fun onCreateOptionsMenu(menu: Menu): Boolean {
        // Inflate the menu; this adds items to the action bar if it is present.
        getMenuInflater().inflate(R.menu.menu_main, menu)
        return true
    }
    override fun onOptionsItemSelected(item: MenuItem): Boolean {
        // Handle action bar item clicks here. The action bar will
        // automatically handle clicks on the Home/Up button, so long
        // as you specify a parent activity in AndroidManifest.xml.
        val id = item.getItemId()
        //noinspection SimplifiableIfStatement
        if (id == R.id.action_settings) {
            return true
        }
        return super.onOptionsItemSelected(item)
    }
}

Rất clear đúng không ? mọi thứ quá gọn gàng !

Đầu tiên, chúng ta có một kí hiệu : thay cho từ khóa extends

Override rõ ràng hơn, chúng ta không cần một anotation như java nữa thay vào đó ta sẽ sử dụng luôn từ khóa override

Tương tự như một số ngôn ngữ hiện đại khác, Kotlin dùng từ khóa fun để đại diện hàm

Và bạn thấy không, chúng ta không còn kí tự ; đáng ghét nữa

Một số toán tử mới xuất hiện, như ? trong đoạn code trên, tuy nhiên chúng ta sẽ tìm hiểu chúng ở phần sau

Việc tiếp cận một ngôn ngữ mới không phải là một chuyện dễ dàng, nhưng bạn thấy đấy, Kotlin đã rất cố gắng trong việc tiếp cận với cộng đồng developer android, và hy vọng sau bài viết này, bạn sẽ create được một project sử dụng Kotlin để đặt cục gạch đầu tiên trong hành trình chinh phục ngôn ngữ này, hẹn gặp lại ở bài sau của chuỗi bài về Kotlin for android nhé !

0