Duolingo แอพสอนภาษาต่างประเทศชื่อดัง เล่าประสบการณ์การย้ายแอพเวอร์ชัน Android จากที่เขียนด้วยภาษา Java มาเป็น Kotlin เสร็จสมบูรณ์แล้ว 100%
Duolingo ระบุว่าใช้เวลาย้ายจาก Java เป็น Kotlin ทั้งหมด 2 ปี (เริ่มทำช่วงต้นปี 2018) เหตุผลที่ย้ายเป็นเพราะ Kotlin เขียนง่ายกว่า ดูแลโค้ดง่ายกว่า ตัดข้อกังวลเรื่องปัญหาแครช (Duolingo บอกว่าข้อความ commit ยอดฮิตช่วงก่อนหน้านี้คือ Fix NullPointerException crash ซึ่งตอนนี้ไม่มีอีกแล้ว)
กูเกิลเปิดตัว gRPC ซึ่งเป็นระบบ remote procedure call (RPC) สำหรับเรียกสั่งงานข้ามเครื่องมาตั้งแต่ปี 2015 และได้รับความนิยมมากขึ้นเรื่อยๆ โดยเฉพาะในสายงานพัฒนาแบบ microservice
gRPC รองรับการใช้งานกับภาษาโปรแกรมยอดนิยมหลายตัว เช่น C#, C++, Java, PHP, Python และล่าสุดกูเกิลก็เปิดตัว gRPC Kotlin/JVM สำหรับภาษา Kotlin ที่กูเกิลกำลังดันสุดตัวเช่นกัน
และในเมื่อกูเกิลทำเองทั้งที ก็ต้องมาแบบครบๆ กูเกิลยังประกาศว่าเราสามารถใช้ gRPC Kotlin กับ Google Cloud Run บริการคลาวด์ serverless ของ Google Cloud Platform ได้ด้วย
Snyk บริษัทด้านค้นหาช่องโหว่ของซอร์สโค้ด ออกรายงานสำรวจข้อมูลของนักพัฒนาซอฟต์แวร์สาย Java จำนวนประมาณ 2,000 คน ประจำปี 2020 มีประเด็นที่น่าสนใจดังนี้
ภาษา Kotlin ได้รับความนิยมสูงขึ้นมาก ถึงแม้นักพัฒนา 86.9% ยังเขียนภาษา Java เป็นหลัก แต่ Kotlin ก็เติบโตจาก 2.4% เมื่อปีก่อนมาเป็น 5.5% และกลายเป็นภาษายอดนิยมอันดับสอง เหนือกว่า Clojure หรือ Scala แล้ว - อ้างอิง
กูเกิลประกาศในงาน Android Dev Summit ช่วงปลายเดือนตุลาคม ว่าความนิยมของภาษา Kotlin เพิ่มขึ้นมาก จนตอนนี้ถ้าดูเฉพาะแอพ 1,000 อันดับแรกใน Play Store มีสัดส่วนแอพที่ใช้ Kotlin แตะ 60% แล้ว และถ้าหากนับนักพัฒนา Android มืออาชีพ สัดส่วนจะเป็น 53% คือเกินครึ่งหนึ่งของนักพัฒนาทั้งหมด
เมื่อครั้งงาน Google I/O 2019 กูเกิลก็เคยประกาศแล้วว่า Android เป็น Kotlin-First ฟีเจอร์ใหม่ๆ จะมาในภาษา Kotlin ก่อน Java
กูเกิลยังให้ข้อมูลของนักพัฒนาที่เรียกใช้ชุดเครื่องมือ Android Jetpack คิดเป็น 84% ของแอพยอดนิยม 10,000 อันดับแรก
ปี 2016 กูเกิลประกาศว่า Android ยังไม่มีแผนรองรับภาษาอื่นนอกจาก Java ส่วน ปี 2017 กูเกิลประกาศรองรับภาษา Kotlin โดยมีศักดิ์ฐานะเท่ากับ Java
ปี 2019 กูเกิลประกาศว่าจากนี้ไป แพลตฟอร์ม Android จะเป็น Kotlin-First โดยฟีเจอร์ใหม่ๆ ของชุดเครื่องมือ Android Jetpack จะถูกพัฒนาเป็นภาษา Kotlin ก่อน ส่วนภาษาอื่นๆ จะตามมาช้ากว่า
คำแนะนำของกูเกิลตอนนี้คือ ถ้าจะเริ่มโครงการพัฒนาใหม่ ควรเริ่มเป็น Kotlin ได้แล้ว เพราะเขียนโค้ดง่ายกว่า ทดสอบง่ายกว่า ดูแลรักษาโค้ดง่ายกว่า
JetBrains ประกาศออกแพลตฟอร์มการพัฒนาด้วยภาษา Kotlin เวอร์ชัน 1.3 มีของใหม่ดังนี้
การผลักดันภาษา Kotlin กับแพลตฟอร์ม Android ดูจะจุดกระแสติดและสร้างความนิยมให้กับ Kotlin เพิ่มจากเดิมมาก (สถิติของกูเกิลคือ 27% ของแอพ Android ยอดนิยม 1,000 อันดับแรกใช้ Kotlin)
ล่าสุดกูเกิลจึงจับมือกับ JetBrains ผู้ประดิษฐ์ภาษา Kotlin ตั้งมูลนิธิ Kotlin Foundation ขึ้นมาเป็นองค์กรกลางในการพัฒนาแล้ว
Kotlin Foundation มีหน้าที่หลัก 3 อย่างคือ
กูเกิลส่งผู้เชี่ยวชาญของตัวเองทำวิชา Kotlin Bootcamp ติวเข้มการเขียนโปรแกรมภาษา Kotlin ที่กำลังเป็นภาษาสำหรับแอนดรอยด์เต็มรูปแบบเท่ากับจาวา โดยการติวเข้มจะทำให้วิชารวมสั้นเพียงประมาณ 8 ชั่วโมงเท่านั้น ครอบคลุมเนื้อหาหลักๆ 5 ส่วน ได้แก่
กูเกิลเปิดตัว Android KTX รวมส่วนขยายสำหรับการเขียนแอพบน Android ด้วยภาษา Kotlin อย่างสะดวกมากขึ้น
Android KTX เป็นชุด API ที่สร้างบนเฟรมเวิร์ค Android และ Support Library ช่วยให้การเขียนโค้ดด้วยภาษา Kotlin สั้นลง ใช้โค้ดน้อยลง และไม่ต้องเขียนโค้ดพื้นฐานบางส่วนซ้ำๆ ใหม่ เพราะ KTX เตรียมมาให้แล้ว การเรียกใช้งานก็เพียงแค่อ้างถึง KTX ในไฟล์ build.gradle เท่านั้น
ตอนนี้ Android KTX ยังมีสถานะเป็นรุ่นพรีวิว โดยกูเกิลระบุว่าจะรับฟังความเห็นจากผู้ใช้ ก่อนปรับ API ให้เข้าสู่รุ่นเสถียรต่อไป และเตรียมผนวกมันเข้าเป็นส่วนหนึ่งของ Android Support Library ในระยะยาว ตัวมันเองเป็นโอเพนซอร์สและดูโค้ดได้จาก GitHub
การแข่งขันเขียนโปรแกรมแก้โจทย์ปัญหาระดับอุดมศึกษา ACM-ICPC รองรับการส่งคำตอบด้วยภาษาโปรแกรม Python และ Kotlin สำหรับรอบการแข่งขันรอบชิงแชมป์โลก 2018 แล้ว
การรองรับภาษา Python นั้นเริ่มตั้งแต่ปีที่ผ่านมา โดยผู้เข้าแข่งขันสามารถเลือกได้ว่าจะใช้ Python 3.5 พร้อม interpreter จากผู้พัฒนาภาษาเพื่อความสามารถใหม่ๆ หรือจะถอยไปใช้ Python 2.7 ที่รันบน PyPy อีกที เพื่อเร่งความเร็วในการคำนวณก็ย่อมได้
ส่วนภาษา Kotlin 1.1 ที่เพิ่งเพิ่มเข้ามาในปีนี้ ก็ทำให้การแข่งขันดังกล่าวรองรับการส่งคำตอบมากถึง 5 ภาษา ซึ่งภาษาอื่นๆ ได้แก่ C, C++ และ Java ที่อยู่คู่การแข่งขันมาอย่างยาวนานนั่นเอง
ภาษา Kotlin ได้รับความสนใจอย่างมากในปีนี้ หลังจาก Android ประกาศซัพพอร์ตเป็นภาษาที่สองถัดจาก Java
Kotlin เป็นภาษาที่สร้างโดยบริษัท JetBrains โดยเริ่มแรกมันถูกออกแบบมาเป็นภาษาที่ทำงานบน Java Platform (JVM) และถัดมาคือการทำงานบน Android เป็นแพลตฟอร์มที่สอง ทั้งสองแพลตฟอร์มยังเป็นการคอมไพล์แบบไบต์โค้ดที่รันบน virtual machine อีกทีหนึ่ง
ล่าสุด JetBrains เปิดตัว Kotlin/Native ที่สามารถคอมไพล์ Kotlin เป็นไบนารีโดยตรง โดยยังมีสถานะเป็นรุ่นพรีวิว
หลังจากที่กูเกิลเปิดตัว Android Studio 3.0 ในงาน I/O 2017 เมื่อกลางปีและเปิดให้นักพัฒนาใช้งานเวอร์ชัน beta และ canary มาสักพักใหญ่ ตอนนี้ก็ได้เปิดตัวเวอร์ชัน stable อย่างเป็นทางการแล้ว
จุดเด่นของ Android Studio 3.0 คือรองรับภาษา Kotlin, ภาษา Java 8, layout editor ลากวางวัตถุดีขึ้น, มีตัวช่วยสร้าง Adaptive icon, เพิ่มฟอนท์ที่ใช้งานแบบ XML ลงไปในโปรเจค, รองรับการเขียน Android Things และอัพเดต IntelliJ 2017.1
ข่าวสำคัญของโลกโปรแกรมมิ่งวันนี้คือ Android รองรับภาษา Kotlin อย่างเป็นทางการ และถือเป็นภาษาที่สองถัดจาก Java
หลายคนอาจเพิ่งเคยได้ยินชื่อภาษา Kotlin เป็นครั้งแรก บทความนี้จะพามาแนะนำตัวให้รู้จักกันครับ
กูเกิลเปิดตัว Instant Apps ตั้งแต่งาน I/O 2016 และเริ่มปล่อยใช้งานกับผู้ใช้จริงเมื่อต้นปีที่ผ่านมา วันนี้กูเกิลก็ประกาศให้นักพัฒนาทุกคนเข้าถึง Instant Apps ได้แล้ว
Instant Apps ต้องแยกแอปเป็นส่วนๆ เพื่อให้ตัวแอปโหลดได้เร็ว กูเกิลระบุว่านักพัฒนาชุดแรกที่ทำงานกับกูเกิลสามารถแก้แอปเป็น Instant Apps ได้ภายใน 4-6 สัปดาห์ โดยนักพัฒนาต้องใช้ Android Studio 3.0 และโหลด Android Instant Apps SDK ตัว Play Console จะมีช่องให้อัพโหลด APK แยกกันระหว่างแอปแบบติดตั้งปกติและ Instant Apps
ในกระทู้ที่ ทีมงาน Android ไปตอบคำถามบน Reddit มีข้อมูลที่น่าสนใจหลายอย่าง อีกประเด็นที่คนถามกันเยอะคือ Android มีแผนจะรองรับภาษาโปรแกรมอื่นนอกจาก Java หรือไม่
คำตอบคือ Android ยังไม่มีแผนย้ายไปใช้ภาษาอื่นเลย ตอนนี้ Android Nougat ยังรองรับฟีเจอร์ของ Java 8 เพียงบางส่วนเท่านั้น และจะรองรับเพิ่มเติมในรุ่นถัดๆ ไป
ในกระทู้ยังมีคนถามถึงภาษา Kotlin ที่พัฒนาโดย JetBrain และเข้ากันได้ 100% กับ Java คำตอบที่ได้คือทีม Android มองว่าตัวภาษา Kotlin เป็นภาษาที่ดี แต่ก็ยังไม่มีแผนใดๆ ในการย้ายไปใช้เช่นกัน
ภาษา Kotlin ที่พัฒนาโดย JetBrains ผู้สร้าง IntelliJ IDEA ประกาศเวอร์ชั่น 1.0 พร้อมสำหรับการใช้งานจริงแล้ว โดยภาษานี้ออกแบบมาให้ใช้งานได้จริง และโค้ดส่วนอื่นๆ ที่ไม่เกี่ยวข้องกับฟังก์ชั่นงานน้อยลง โดยคงความเข้ากันได้กับจาวา, JVM, ไลบรารี, แอนดรอยด์, และเครื่องมืออื่นๆ
ตัวโค้ด Kotlin เป็นสัญญาอนุญาตแบบ Apache 2.0 ซอฟต์แวร์ของ JetBrains เองหลายตัวก็ใช้งาน Kotlin อยู่แล้ว และตอนนี้มีพนักงานของบริษัททำงานเต็มเวลาในโครงการนี้กว่า 20 คน