Tạo Một Ứng Dụng Android Viết Bằng Kotlin

Google đã tuyên bố răng ngoài Java và C ++, ngôn ngữ lập trình Kotlin cũng sẽ chính thức được Android hỗ trợ tại hội nghị các nhà phát triển Google I/O 2017 diễn ra vào ngày 17/5/2017

Kotlin được phát triển bởi JetBrains, Inc. - cũng chính là công ty đã tạo ra IntelliJ. Và chắc bạn cũng biết Android Studio được xây dựng dựa trên IntelliJ IDEA Java IDE. Java và Kotlin là 2 ngôn ngữ có thể tương tác hoàn toàn với nhau. Do đó, thông báo rằng ngôn ngữ lập trình Kotlin của JetBrains sẽ được Android hỗ trợ ngay lập tức nhận được tràn pháo tay chúc mừng từ các nhà phát triển đang có mặt tại sự kiện. Google mô tả Kotlin (một dự án nguồn mở theo giấy phép Apache 2.0) là "ngôn ngữ được thiết kế tốt và mạnh mẽ mà chúng tôi tin rằng nó sẽ làm cho Android phát triển nhanh hơn và thú vị hơn". Google cũng lưu ý rằng một số nhà phát triển đã sử dụng ngôn ngữ này trong quy trình sản xuất ứng dụng của họ bao gồm Expedia, Flipboard, Pinterest và Square.

Ngoài việc Kotlin sẽ giúp cho việc viết ứng dụng Android trở nên dễ dàng hơn. Các nhà phát triển sẽ còn vui mừng hơn khi biết rằng trình biên dịch của Kotlin có thể tạo ra byte-code của Java: Kotlin có thể gọi Java, và Java có thể gọi Kotlin. Thật vậy, "sự tương tác dễ dàng giữa hai ngôn ngữ" là một trong những phần hấp dẫn của Kotlin đối với đội ngũ Android.

Điều này có nghĩa là bạn có thể đưa Kotlin vào mã nguồn hiện tại của bạn nếu như bạn muốn, bất kể là ít hay nhiều và bạn có thể thoãi mái sử dụng 2 ngôn ngữ trong cùng một dự án.

Ưu và nhược điểm của Kotlin

Ưu điểm

Có thể thay thế cho Java

Một trong những thế mạnh lớn nhất của Kotlin như là một ứng viên để thay thế cho Java là khả năng tương tác rất tốt giữa Java và Kotlin—bạn có thể thậm chí có code Java và Kotlin tồn tại song song trong cùng dự án, và tất cả mọi thứ vẫn sẽ được biên dịch một cách hoàn hảo. Dưới đây, bạn có thể thấy một ví dụ về một dự án bao gồm một Activity Java và một Actitivy Kotlin.

Trong thực tế, một khi dự án kết hợp Kotlin và Java được biên dịch, người dùng sẽ không thể biết những phần nào của dự án của bạn được viết bằng Java, và những phần nào được viết bằng Kotlin. Bởi vì các lớp Kotlin và Java có thể tồn tại song song trong cùng một dự án, nên có thể bắt đầu sử dụng Kotlin mà không cần phải làm bất cứ điều gì to tát cả giống như chuyển đổi toàn bộ dự án sang Kotlin hoặc bắt đầu một dự án mới để bạn có thể thử Kotlin. Vì Kotlin là hoàn toàn tương thích với Java, nên cũng có thể sử dụng phần lớn các thư viện Java và các framework trong dự án Kotlin của bạn—thậm chí nâng cao các framework dựa vào chú thích xử lý.

Dễ học

Kotlin nhằm mục đích là nâng cao hơn so vớiJava, chứ không phải hoàn toàn viết lại, rất nhiều các kỹ năng đã có trong việc code Java của bạn vẫn được áp dụng đối với dự án Kotlin. Kotlin cũng được thiết kế để có thể dễ học cho các nhà phát triển Java. Những nhà phát triển Java sẽ cảm thấy rằng hầu hết cú pháp của Kotlin đều quen thuộc Kotlin cũng được thiết kế trực quan và dễ đọc, do đó, ngay cả khi bạn gặp một số code khác biệt, thì bạn vẫn có thể để biết được ý nghĩa về những gì code này làm. Được hỗ trợ bởi Android Studio

Kotlin được phát triển bởi JetBrains, công ty đứng sau IntelliJ—IDE mà Android Studio dựa trên nó. Không có gì bất ngờ, rằng Android Studio hỗ trợ tốt cho Kotlin

Nhược điểm

Thêm thời gian chạy Runtime Thư viện tiêu chuẩn của Kotlin và runtime sẽ làm tăng kích thước tập tin .apk của bạn. Mặc dù nó chỉ tương đương với khoảng 800KB, nhưng nếu ứng dụng của bạn đã lớn sẵn rồi thì 800KB phụ có thể làm nó phình to và khiến người dùng nghĩ lại trước khi tải về ứng dụng của bạn.

Không hẳn là code dễ đọc đối với beginer

Mặc dù cú pháp ngắn gọn của Kotlin là một trong những thế mạnh lớn nhất của ngôn ngữ, nhưng bạn có thể thấy một số khó khăn ban đầu, đơn giản bởi vì có rất nhiều thứ đang được thực hiện trong một số lượng nhỏ code đó. Java có thể dài dòng hơn, nhưng ngược lại tất cả mọi thứ đều rõ ràng, có nghĩa là những người không quen code Java có xu hướng dễ dàng hơn để hiểu so Kotlin.

Ngoài ra, nếu sử dụng không hợp lý, quá tải toán tử của Kotlin có thể dẫn đến số code đó có thể khó khăn để đọc.

Cộng đồng nhỏ hơn và ít có sẵn trợ giúp Vì Kotlin là một ngôn ngữ tương đối mới, nên cộng đồng Kotlin vẫn còn khá nhỏ, đặc biệt là so với cộng đồng của ngôn ngữ khác như Java. Nếu bạn chuyển đổi sang Kotlin, thì bạn có thể không có được truy cập vào cùng một số hướng dẫn, bài đăng trên blog, và tài liệu hướng dẫn sử dụng, và có thể gặp ít hỗ trợ từ cộng đồng về những nơi như các diễn đàn và Stack Overflow. Tại thời điểm bài viết, tìm kiếm cho Kotlin trong Stack Overflow trả về các bài viết chỉ hơn 4.600 được dán nhãn Kotlin—so với hơn 1.000.000 bài viết có chứa các từ khóa Java.

Hướng dẫn cài đặt Kotlin trên Android

Bước 1 Vào File -> Setting -> Flugins Bước 2 Trong Browse Repositories , Search với từ khóa "Kotlin" sau đó cài đặt flugin Bước 3 Chờ cho đến khi Android Studio cài đặt xong flugin, sau khi hoàn tất, ta khởi động lại Android Studio. Sau đó vào Tools -> Kotlin -> Configure Kotlin in Project Bước 4 Ở trên màn hình xuất hiện việc chọn configutor, ta chọn Android with Gradle Bước 5 Lúc này Android Studio sẽ hiển thị cửa sổ để chọn Version Kotlin. Mặc định ta thấy là 1.0.7, ta bấm vào để chọn 1.1.1 Bước 6 Vào build.gradle (Project level) ta chèn đoạn mã sau ở mục dependencies

classpath "org.jetbrains.kotlin:kotlin-android-extensions:$kotlinversion"

Bước 7 Vào buil.gradle (Module level) ta chèn đoạn mã sau:

apply plugin: 'kotlin-android-extensions' Sau đó chọn Sync Now

Bước 8 Ta sẽ chuyển MainActivity (coding java) thành MainActivity (coding kotlin ) bằng cách vào menu Code/ chọn Convert Java file to Kotlin File. Sau khi bấm Convert Java File to Kotlin File, ta chờ 1 chút để chương trình chuyển đổi java class thành kotlin class: Bây giờ các bạn có thể viết những ứng dung mình thích bằng ngôn ngữ kotlin. Ở đây tôi cũng tạo 1 project sample nhỏ. các bạn có thể tham khảo tại đây