อ่านบทความเรื่องการพัฒนา
Android app ของ Basecamp
ซึ่งมีความน่าสนใจตรงที่ทำการพัฒนาด้วยภาษา Kotlin ทั้งหมด
ทางทีมพัฒนาได้เล่าและสรุปประสบการณ์ในการพัฒนา
ตั้งแต่เริ่มจน publish app ออกมาให้ทุกคนได้ใช้
รวมระยะเวลากว่า 1 ปี
ดังนั้นจึงนำมาแปลและสรุปในสิ่งที่น่าสนใจไว้นิดหน่อย
เริ่มต้นในการเลือกใช้ภาษา Kotlin ในการพัฒนานั้น
ทีมพัฒนาเชื่อว่า
1. ทำให้นักพัฒนามีความสุขในการพัฒนา
2. ช่วยปรับปรุงคุณภาพและความเร็วในการพัฒนา
ซึ่งผลที่ออกมามันก็ใช้ได้เลย
โดยทีมพัฒนาทำการแบ่งปันประสบการณ์และคำแนะนำในการพัฒนาระบบ
ว่าการเปลี่ยนจากภาษา Java มาเป็นภาษา Kotlin ทั้งหมดเป็นอย่างไร ?
เริ่มต้นอย่างไร ?
ควรจะต้องดูและใส่ใจอะไรบ้าง ?
แนะนำการเรียนรู้ภาษา Kotlin ว่าทำอย่างไร ?
พื้นฐานสำคัญที่สุด
เนื่องจากภาษา Kotlin เป็นภาษาใหม่สำหรับทีมพัฒนา
ดังนั้นต้องให้เวลากับการเรียนรู้
ที่สำคัญเอกสารของภาษา Kotlin ก็เยอะด้วย
ดังนั้นทีมพัฒนาจึงแนะนำเอกสารการเรียนรู้ดังนี้
การเริ่มต้นพัฒนาด้วยภาษา Kotlin จะช้า แต่ให้เขียนบน product code เลย
แน่นอนว่าการเริ่มต้นมันยากเสมอ แถมใช้เวลามากด้วย
ยังมีแรงกดดันต่าง ๆ อีกมากมาย
บางคนบอกให้เริ่มด้วย test
บางคนบอกให้เริ่มด้วย Gradle plugin
บ่อยครั้งมันทำให้สับสน ไม่ไปไหนสักที
ดังนั้นทีมพัฒนาจึงบอกว่า ให้เริ่มที่ production code ไปเลย
เนื่องจากมันทำให้เราเห็นเลยว่า
สิ่งที่เราพัฒนามัน work นะ
เนื่องจากมันทำให้ทีมพัฒนาสนุกเมื่อเห็นความสำเร็จเล็ก ๆ
เป็นการสร้างความเชื่อมันให้ทีม
ในการเริ่มต้นอย่าทำการ convert จาก class ที่มีขนาดใหญ่
แต่ให้เริ่มจาก class เล็ก ๆ เช่น Utility, Helper เป็นต้น
หลัก ๆ คือเสริมสร้างความมั่นใจล้วน ๆ
ทำการพัฒนาและเรียนรู้แบบค่อยเป็นค่อยไป
อย่าเรียนรู้ feature ทั้งหมดของภาษา Kotlin ในครั้งเดียว
เนื่องจากภาษา Kotlin มี feature ที่น่าสนใจมากมาย
การเรียนรู้ทั้งหมดเลย ไม่น่าจะเป็นแนวทางที่ถูกมากนัก
แนะนำให้ศึกษาเท่าที่จะใช้งานก่อน
เมื่อเข้าใจแล้วก็อย่าอยุดเรียนรู้นะ
ให้เรียนรู้ต่อไป ให้กว้างกว่าเดิม
เริ่มแบบเล็ก ๆ ช่วยคุณได้เยอะ
เรียนรู้จาก Auto convert
เนื่องจาก Kotlin plugin นั้นสามารถช่วย convert code จาก Java เป็น Kotlin ได้
เพื่อเรียนรู้ว่ามันทำงานอย่างไร
เพื่อเรียนรู้โครงสร้างของภาษาว่าเป็นอย่างไร
อย่าเอาแนวทางที่แย่ ๆ ของภาษา Java มาใช้นะ !!
เช่นการใช้ if-else แนะนำให้ใช้ when แทน
เช่นการตรวจสอบค่า null แนะนำให้ใช้ object?.let{} แทน
การเขียนภาษา Kotlin ก็ต้องเขียนด้วยแนวทางของภาษานั้น ๆ ด้วย (
Kotlin way)
ที่สำคัญต้องค่อย ๆ ปรับปรุง ค่อย ๆ แก้ไขให้ดีขึ้น
นั่นคือ code ต้องดีขึ้นกว่าเดิมเสมอ
เรื่องนี้มันคือ mindset ของทีม
ดังนั้นอย่าขี้เกียจนะครับ
อีกข้อที่สำคัญคือ ใช้ feature ของภาษาในแนวทางที่ถูกต้องด้วย
เช่นการใช้ when มากจนเกินไปก็ไม่ได้
เช่นการสนใจจำนวนบรรทัดน้อย ๆ จนมากเกินไปก็ไม่ดี
เช่นการเขียน extension function มากจนเกินไปก็ไม่ดี
มันส่งผลให้ code ที่ออกมาดูแลต่อไปยากมาก
สิ่งที่สำคัญมาก ๆ คือ ลูกค้า ดังนั้นอย่าลืม !!
ไม่ว่าภาษา Kotlin มันจะดีเพียงใด
ไม่ว่าภาษา Kotlin มันจะทำให้ทีมพัฒนามีความสุขมากเพียงใด
ให้จำไว้ว่า ลูกค้าไม่ได้สนใจมันเลย
ดังนั้นคุณภาพของระบบที่พัฒนาออกมาจึงสำคัญสุด ๆ ห้ามลืม
แน่นอนว่า ถ้าทีมพัฒนามีความสุขแล้ว จะส่งผลให้ code ดี
นั่นคือส่งผลดีต่อระบบที่พัฒนา
ซึ่งก็สำคัญเช่นกัน
ดังนั้นให้รักษาสมดุลไว้ด้วย (win-win)
สุดท้ายอย่าเดินไปคนเดียว !!
ลองคิดดูสิ ถ้าเริ่มเขียน Kotlin เพียงคนเดียว
มันไม่น่าจะรอดอย่างแน่นอน
ดังนั้นหาเพื่อนซะ
เพื่อแบ่งปันกัน
เพื่อแนะนำกัน
เพื่อจะเดินไปอย่างสนุกสนาน