อยากลองโค้ด Kotlin ที่เราเขียน Regular Expression ว่าเขียนถูกไหม

แต่ไม่อยากบิ้วแอพ Android เพื่อเทสเลย ทำยังไงดีนะ?

ก่อนหน้านี้เราอาจจะใช้ Kotlin REPL ใน Android Studio แต่ตอนนี้เหมือนจะใช้ไม่ได้แล้ว

บางทีก็ใช้ Kotlin Playground บน web browser แต่บางทีก็ไม่สะดวก เพราะบางอย่างเราต้องใส่ import เอง แล้วโปรเจกต์ใหญ่ ๆ ก็มี function ที่ทุกคนใช้ร่วมกันด้วย อาจจะต้องใช้ context ในนั้นก็อาจจะไม่สะดวกอีก

เรามีวิธีที่ง่ายกว่านั้น คือ การลองรันผ่าน Kotlin scratch file นั่นเอง

แล้ว scratch file คืออะไรล่ะ? เป็น temporary file ที่เอาไว้จด note แล้วที่สำคัญ มันไม่เกี่ยวกับโปรเจกต์ด้วย เพราะมันเก็บที่ folder ของ Android Studio

.

🟢 วิธีสร้าง Scratch File

1. ไปที่เมนู File → New → Scratch File หรือชาว macbook สามารถใช้คีย์ลัด `Cmd` + `Shift` + `N`

2. มันจะขึ้นหน้าต่าง New Scratch File เลือกภาษาเป็น Kotlin

3. ใช้งานได้เลย

.

🟢 วิธีการใช้งาน Kotlin Scratch File

ลองพิมพ์โค้ดเข้าไป แล้วกดปุ่ม Run Scratch File ที่เป็นปุ่ม play สีเขียว ๆ อ่ะ มันจะ compile ให้ แล้วผลลัพธ์อยู่ด้านขวามือ

ถ้าเอาสะดวก ไม่ต้องกดปุ่มเอง ให้ติ๊กที่ Interactive Mode เมื่อเราพิมพ์เสร็จ มันจะรันโค้ดของเราให้อัตโนมัติให้เราเลย

ถ้าเราอยากใช้ function ที่มีอยู่แล้วใน project ให้เลือก module ที่ต้องการตรง Use classpath of module: โดยปกติมันจะ default ที่ ****`` เราสามารถเลือก module ที่เราต้องการ ในการใช้งาน function ต่าง ๆ ที่มีอยู่แล้วได้เลย

ข้อดีของมันคือ เร็วมาก เพราะไม่ต้องรอบิ้วทั้งโปรเจกต์, เข้าถึงโค้ดในโปรเจกต์ของเรา และเป็นการลอง syntax ในการเขียนอะไรใหม่ ๆ ก่อนเขียนบนงานจริงได้อีกด้วย ซึ่งเหมาะกับการเขียน business logic สุด ๆ

แต่ไม่สามารถใช้เขียน Android UI นะ

.

🟢 ตัวอย่างการใช้งาน?

สมมุติว่าเราจะ check email validation ว่าตรง format ไหม ซึ่งเราใช้ RegEx อ่ะเนอะ

ทริคหลัก ๆ สร้างตัวแปรเพื่อดูแต่ละเคสที่เราต้องการได้เลยแบบนี้

```kotlin

val emailRegex = """^[A-Za-z0-9+_.-]+@[A-Za-z0-9.-]+$""".toRegex()

val isMatch = emailRegex.matches("dev@android.com")

val isNotMatch = emailRegex.matches("@nodomain.com")

```

.

🟢 ถ้าเขียนแล้วอยากกลับมาดูอีก มันอยู่ตรงไหนนะ?

เปิด Project แล้วเลื่อนลงไปล่างสุด จะเจอ Scratches and Console เราจะเห็นว่าที่เราสร้างไว้จะอยู่ใน folder Scratches ไม่ว่าจะเปิดโปรเจกต์ไหนก็จะเจอไฟล์ Scratches ที่เราสร้างไว้เสมอ

และเมื่อเปิด Finder ดู พบว่าจะอยู่ที่ folder scratches ที่อยู่ใน AndroidStudio version ที่เราใช้อยู่อีกทีนึง

แล้วตัว Scratch File ไม่ได้มีแค่ Kotlin เท่านั้น ยังมีไฟล์ชนิดอื่น ๆ ให้เราจด note อีกด้วยนะ

เพื่อน ๆ ใช้ทำอะไร มาบอกใน comment ได้เลย 👇 #siamstr

Reply to this note

Please Login to reply.

Discussion

No replies yet.