เมื่อวานเจอ code ที่น่าสนใจใน Slack ของ Kotlinlang
แต่สิ่งที่สำคัญและน่าสนใจกว่าคือ ความสามารถใน code ของภาษา Kotlin นั่นเอง
มันมีหลายสิ่งที่ควรค่าต่อการหยุดดูและศึกษา
ดังนั้นมาลองดู code กันขำๆ กันหน่อย

ที่สำคัญ code ชุดนี้ทำงานได้ด้วยนะ
ซึ่งสามารถทดสอบ run ด้วยคำสั่ง

$kotlinc tip.kt -include-runtime -d tip.jar
$java -jar tip.jar

ได้ผลคือ โยน exception ออกมาดังนี้

Exception in thread "main" ┻━┻
at ┻━┻.<clinit>(tip.kt:1)
at TipKt.main(tip.kt:11)

เริ่มจากชื่อ class และ object อันนี้ปกติ

แต่การตั้งชื่อแบบนี้ก็เล่นเอาฮาน้ำตาเล็ด
แต่ในการทำงานจริง ๆ คงไม่มีใครอยากเจอหรอกนะ !!

ต่อมาคือเรื่องของ object declaration

จะเห็นว่ามีการใช้ keyword ชื่อว่า object
เป็นการใช้งานตาม Singleton pattern นั่นเอง
จะเรียกว่าเป็น static class ก็ว่าได้ ซึ่งมี instance เดียวเท่านั้น

อีก keyword คือ companion object

ทำการประกาศ object declaration ใน class ด้วย keyword ชื่อว่า companion
โดยที่ class หลักสามารถเรียกใช้ method ใน object ได้โดยตรง

จาก code ตัวอย่างนั้นมีการใช้ infix notation ด้วย

ทำให้เราสามารถเรียกใช้งาน method แบบสวย ๆ ได้
แน่นอนว่าทำให้ code อ่านง่ายและเข้าใจได้ง่าย
เนื่องจากมันอธิบายตัวมันเอง
ที่สำคัญเป็น pure function ดังนั้นจึงไม่มี side effect ใด ๆ เลย
ยกตัวอย่างเช่น

อีกอย่างคือ Nothing

เป็น class ชนิดหนึ่งที่ไม่มี instance
ในกรณีนี้ใส่เป็น return Type ของmethod/function
หมายความว่า method/function ไม่มีทางที่จะ return อะไรออกมา
ยกเว้นโยน exception ออกไปเท่านั้น

จะเห็นได้ว่า code ในภาษา Kotlin สั้น ๆ เพียงเท่านี้
กลับมารายละเอียดที่เยอะเอาเรื่องเหมือนกันนะ
วันนี้เราศึกษาภาษา Kotlin กันหรือยัง ?

ขอให้สนุกกับการ coding ครับ

Tags: