เมื่อวันที่ 28 พฤศจิกายนที่ผ่านมา Kotlin 1.2 ถูกปล่อยออกมา
เป็นอีกก้าวที่สำคัญของ Kotlin
คือการ reuse code ระหว่าง JVM และ JavaScript
โดยที่ Kotlin 1.1 เน้นในเรื่องของ JavaScript เป็นหลัก
ดังนั้นทำให้นักพัฒนาสามารถเขียน business logic ด้วยภาษา Kotlin
ส่วนการทำงานอื่น ๆ เช่น frontend, backend และ Android app
สามารถใช้ code เหล่านี้ได้เลย
โดยที่ Kotlin 1.2 นั้นถูกเพิ่มเข้ามาใน IntelliJ IDEA 2017.3
ซึ่งจะถูกปล่อยออกมาในสัปดาห์นี้ แต่ถ้าใช้งาน Android Studio หรือ IntelliJ IDEA เก่า ๆ ต้องทำการติดตั้งเอง โดยเข้าไปที่เมนู Tools -> Kotlins -> Configure Kotlin Plugin ใน Kotlin 1.2 นั้นมีความสามารถมากมายที่มาจาก contributor ภายนอก ทำให้เห็นว่าชุมชนของ Kotlin โตขึ้นเป็นอย่างมาก มาดูความสามารถที่น่าสนใจกันMultiplatform Projects
สามารถทำการสร้างระบบงานต่าง ๆ ทั้ง Backend, Frontend และ Android app จาก code ชุดเดียวกันได้ ซึ่งในแต่ละ project ประกอบไปด้วย- Common module สำหรับ code ที่ใช้ในทุก ๆ platform
- Platform module สำหรับ code ของแต่ละ platform เช่น JVM และ JavaScript โดยสามารถเรียกใช้งาน code จาก common module ได้
- kotlin.test สำหรับการทดสอบ
- kotlinx.html สำหรับ Isomorphic rendering หรือ render HTML
- kotlinx.serialization สำหรับการ marshal พวก Kotlin object ทีส่งไปมาระหว่าง platform ซึ่งสนับสนุนพวก JSON และ PhrotoBuf
Compilation Performance
ใน Kotlin 1.2 นั้นทำการปรับปรุงเวลาในการ compile ให้รวดเร็วขึ้น โดยเร็วกว่า Kotlin 1.1 ประมาณ 25% และจะทำการปรับปรุงให้เร็วขึ้นใน minor release ต่อ ๆ ไปอีกด้วย รูปแสดงความเร็วในการ compile ของ Kotlin ในระบบงานใหญ่ ๆ ของ Jetbrainsการปรับปรุงความสามารถของภาษาและ library ต่าง ๆ
มีการปรับปรุงบ้างเล็กน้อย ประกอบไปด้วย- ปรับปรุง syntax สำหรับการส่ง multiple argument ผ่าน annotaiton
- สามารถใช้ lateinit สำหรับ property และ local variable ได้แล้ว
- เรื่องของ Smart cast และ Type inference
- เพิ่ม package kotlin.math เข้ามาใน standard library
- เพิ่ม function ใหม่ ๆ สำหรับการทำงานกับ sequence และ collections
มาดูความเคลื่อนไหวของ Kotlin
หลังจากที่ในเดือนมีนาคมได้ปล่อย Kotlin 1.1 ออกมา มีการนำไปใช้งานจำนวนสูงขึ้นอย่างมาก มีงาน Kotlin Conference ครั้งแรก ซึ่งมีคนมาร่วมงานประมาณ 1,200 คนจากทั่วโลก สามารถตามไปดู VDO ต่าง ๆ ได้เลยที่สำคัญภาษา Kotlin นั้นเป็นอีกภาษาหนึ่งที่ใช้พัฒนา Android app ได้
เป็น Official language สำหรับการพัฒนา Android app โดยใน Android Studio 3.0 นั้นสนับสนุนภาษา Kotlin เลย โดยไม่ต้องทำการติดตั้งอะไรเพิ่มเติม สามารถอ่านเอกสารจากทาง Android ได้อีกคือ ตัวอย่าง code และ Style guideข้อมูลที่น่าสนใจจาก Android Studio 3.0 คือ
มี project ที่สร้างด้วยภาษา Kotlin ถึง 17% กันเลยทีเดียวในฝั่ง Server side ก็ไม่น้อยหน้า
Spring Framework 5.0 ก็สนับสนุนความสามารถต่าง ๆ ของภาษา Kotlin รวมทั้ง vert.x 3.4.0 ก็สนับสนุนเช่นกัน ฝั่ง Gradle ก็สามารถเขียน Kotlin DSL ได้อีกเช่นกันมาดูข้อมูลจาก Github พบว่าจำนวนบรรทัดของ code
ที่เขียนด้วยภาษา Kotlin มีมากกว่า 25 ล้านบรรทัดแล้ว รวมทั้งข้อมูลจาก StackOverflow ก็สูงขึ้นมาเช่นกันยังไม่พอนะ community ก็มีมากกว่า 100 กลุ่มทั่วโลก
สำหรับผู้เริ่มต้นศึกษาสามารถเรียนรู้ได้จากหนังสือต่าง ๆ เช่น
- Kotlin in Action
- Kotlin for Android Developers
- Modern Web Development with Kotlin
ถ้าต้องการ upgrade Kotlin สามารถทำได้ดังนี้
เริ่มด้วยการศึกษาผ่าน online คือ Try Kotlin ส่วนช่องทางอื่น ๆ เป็นดังนี้- สำหรับ Apache Maven, Gradle และ npm ให้ทำการระบุ version 1.2.0 สามารถอ่านเพิ่มเติมได้
- สำหรับ IntelliJ IDEA 2017.3 จะมี Kotlin 1.2 มาด้วยอยู่แล้ว ส่วน version ก่อนหน้าต้องทำการ update Kotlin plugin 1.2 เอง
- สำหรับ Android Studio ให้ทำการติดตั้งและ update ผ่าน Plugin Manager
- สำหรับ Eclipse IDE ให้เข้าไปยัง Marketplace
- สำหรับ command-line compiler ให้ทำการ download จาก Github