7 คะแนน โดย tsboard 2025-05-18 | 2 ความคิดเห็น | แชร์ทาง WhatsApp

ประมาณ 1 ปีก่อน ผมเคยแนะนำ TSBOARD ที่สร้างด้วย TypeScript เป็นครั้งแรกที่นี่บน GeekNews
ตอนนั้นผมแนะนำ TSBOARD ว่าเป็นทั้ง community builder และเว็บบอร์ด

โพสต์แนะนำ TSBOARD บน GeekNews

และเมื่อประมาณ 4 เดือนก่อน ผมก็เคยเล่าถึงเหตุผลที่ตัดสินใจเปลี่ยนแบ็กเอนด์ที่ทำงานได้ดีอยู่แล้ว โดยเขียนแบ็กเอนด์ของ TSBOARD ขึ้นใหม่ด้วยภาษา Go
โดยส่วนตัวผมยังไม่เคยเสียใจกับการเลือกภาษา Go และตอนนี้ก็คิดว่าเป็นการตัดสินใจที่ดีด้วยซ้ำ

โพสต์แนะนำแบ็กเอนด์ใหม่ของ TSBOARD

และโปรเจ็กต์ "Sensta" ที่จะมาแนะนำวันนี้ เป็นแอปเนทีฟบน Android
มันเชื่อมโยงกับโปรเจ็กต์ TSBOARD ที่ผมเคยแนะนำไว้ตั้งแต่แรกด้วย


ทำไมถึงสร้างแอป Android สำหรับ TSBOARD?

  • ระหว่างที่ผมสร้าง TSBOARD ผมมักจะคิดอยู่บ่อย ๆ ว่า ถ้าผมเป็นผู้ดูแลที่บริหารเว็บไซต์คอมมูนิตี้เอง ก็น่าจะอยากมอบแอปที่สร้างขึ้นเองให้สมาชิกได้ใช้
  • และเมื่อผมเริ่มเปิดเว็บไซต์ คอมมูนิตี้ภาพถ่ายขนาดเล็ก ที่สร้างบน TSBOARD ความคิดนี้ก็ยิ่งชัดเจนขึ้นเรื่อย ๆ
    • อ๋อ ฉันก็อยากสร้างแอปเฉพาะสำหรับเว็บไซต์คอมมูนิตี้ของตัวเองเหมือนกัน!
  • แล้วในช่วงนั้นเอง บังเอิญผมต้องใช้ภาษา Kotlin ในงานพอดี ดังนั้นในเมื่อกำลังจะเรียนรู้อยู่แล้ว ก็เลยคิดว่าลองทำแอป Android สำหรับ TSBOARD ไปเลยดีกว่า และโปรเจ็กต์นี้ก็ถือกำเนิดขึ้นแบบนั้น

จุดเด่นของแอป Android สำหรับ TSBOARD คืออะไร?

  • หากมีใครกำลังเปิดคอมมูนิตี้บน TSBOARD อยู่ คุณสามารถดาวน์โหลดซอร์สโค้ดจาก GitHub ตามลิงก์ แล้วปรับค่าใน Env.kt เล็กน้อย เปลี่ยนไอคอนแอปและปรับแต่งจิปาถะอีกนิดหน่อย ก็สามารถสร้าง/เผยแพร่แอป Android ที่พร้อมเปิดตัวได้ทันที
    • แน่นอนว่า ถ้ายังไม่เคยพัฒนาแอปมาก่อนเลย ก็อาจต้องเตรียมใจสำหรับการลองผิดลองถูกเล็กน้อย
  • การเชื่อมต่อพื้นฐานทั้งหมดกับแบ็กเอนด์ที่เขียนใหม่ด้วยภาษา Go ซึ่งผมเคยแนะนำไว้เมื่อ 4 เดือนก่อน ได้ถูกทำไว้ครบแล้ว ทำให้ไม่จำเป็นต้องเริ่มทุกอย่างจากศูนย์
    • อีกทั้งยังไม่จำเป็นต้องพึ่งพาแอปของ 3rd party พร้อมกับต้องทนปัญหาการครอว์ลข้อมูลที่มากเกินไปด้วย
  • สุดท้าย แอปนี้ถูกพัฒนาโดยโฟกัสให้เหมาะกับแกลเลอรีมากกว่าบอร์ดทั่วไปบน TSBOARD เป็นหลัก เพราะมันเริ่มต้นจากการเป็นแอปสำหรับคอมมูนิตี้ภาพถ่ายเล็ก ๆ ของผม
    • ดังนั้นถ้าเว็บไซต์ที่คุณดูแลบน TSBOARD มีแกลเลอรีอยู่แล้ว ก็คิดเสียว่าเป็นการสร้าง Instagram สำหรับคอมมูนิตี้ของคุณเองก็ไม่ผิดนัก

แอป Android สำหรับ TSBOARD ทำไมไม่ใช้ Flutter? ทำไมไม่ใช้ React Native (RN)?

  • ไม่ใช่ว่าผมไม่เคยคิดเรื่อง cross-platform เลย ตอนที่ผมเล่าไอเดียนี้ให้คนรู้จักฟังครั้งแรก แทบทุกคนต่างก็แนะนำว่าให้ใช้ RN ไม่ก็ Flutter!
    • โดยเฉพาะเมื่อ TSBOARD พัฒนาด้วย TypeScript อยู่แล้ว และตัวโปรเจ็กต์เว็บก็เป็นแกนหลัก จึงมีหลายคนแนะนำว่าเป็นโอกาสดีที่จะได้ลองใช้ RN
  • แต่ตอนที่เริ่มทำแอปนั้น ผมหลงเสน่ห์ของภาษาใหม่อย่าง Kotlin ไปแล้วจนแทบไม่ได้ยินคำแนะนำอื่น ๆ จะมองว่าเป็นแอปที่ผมสร้างขึ้นเพียงเพราะอยากใช้ Kotlin ก็ไม่ผิดนัก
    • อีกอย่าง ในเมื่อผมอยู่ในสถานการณ์ที่ต้องใช้ Kotlin อยู่แล้ว การต้องเรียนรู้อะไรใหม่อีกอย่างพร้อมกันเพื่อพัฒนาแอปก็เป็นภาระพอสมควรเช่นกัน
  • ผลลัพธ์คือการรองรับแพลตฟอร์ม iOS อาจจะยังห่างไกลไปสักหน่อย แต่ผมก็ได้สนิทกับภาษา Kotlin อย่างรวดเร็ว และคิดว่าได้ประสิทธิภาพที่สมกับความเป็นเนทีฟ

แผนการปรับปรุงในอนาคตคืออะไร?

  • เมื่อ TSBOARD อัปเดตต่อเนื่องและมีฟีเจอร์ใหม่ ๆ เพิ่มเข้ามา ผมวางแผนจะปรับปรุงให้สามารถนำฟีเจอร์เหล่านั้นมาใช้บนแอป Android ได้ทันทีเช่นกัน
  • ตอนนี้มีเพียงฟังก์ชันล็อกอินด้วยบัญชี Google ที่ฝังมาในแอป แต่จะทำให้รองรับการล็อกอินด้วย Naver และ Kakao ได้เหมือน TSBOARD เดิมด้วย
  • ผมยังอยากเพิ่มฟีเจอร์ที่น่าจะเป็นประโยชน์ในมุมมองของสมาชิกคอมมูนิตี้ โดยอ้างอิงจากคอมมูนิตี้อื่น ๆ ด้วย
    • ถ้ามีฟีเจอร์อะไรที่อยากเสนอ ก็เชิญบอกกันได้ทุกเมื่อเลยครับ!

สรุป: TSBOARD มีแอป Android ให้ด้วย!

  • ผมหวังว่าผ่าน TSBOARD จะมีเว็บไซต์คอมมูนิตี้มากขึ้นที่ได้ทั้งฟรอนต์เอนด์ที่ลื่นไหล แบ็กเอนด์ที่แข็งแกร่งยิ่งขึ้น และยังมีแอป Android เนทีฟสำหรับสมาชิกด้วย
  • และก็หวังเล็ก ๆ ว่า นอกจากผมแล้ว จะมีนักพัฒนาฝีมือดีคนอื่นมาช่วยสร้างแอป iOS บน TSBOARD ด้วย :D

ขอบคุณที่อ่านมาจนจบครับ!

2 ความคิดเห็น

 
sangcomz 2025-05-19

ถ้าใช้ Kotlin Multiplatform แล้วใช้ Compose Multiplatform ด้วย ก็สามารถทำแอป iOS ได้เหมือนกันครับ 555

 
tsboard 2025-05-19

ว้าว! Kotlin Multiplatform นี่สุดยอดจริง ๆ เลย 555 ไม่แน่ใจเหมือนกันว่าจะมีเวลาทำแอป iOS ด้วยหรือเปล่า 555