ขอมาแชร์สกอร์บอร์ดสำหรับการแข่งขันบราซิลเลียนยิวยิตสูที่สร้างด้วย Flutter ซึ่งเป็นเฟรมเวิร์กพัฒนาข้ามแพลตฟอร์ม :)
-
มีเวอร์ชันเว็บที่ใช้งานได้บน GitHub Pages
-
เนื่องจากสร้างด้วย Flutter จึงสามารถบิลด์เป็นเวอร์ชันที่ทำงานได้ในสภาพแวดล้อมต่าง ๆ (PC, Android, iOS)
รายการฟังก์ชันที่ใช้งานได้มีดังนี้
-
ตัวจับเวลา: เริ่ม/หยุดชั่วคราว/เปลี่ยนเวลา/ย้อนกลับไปที่ 6 นาที
-
เสียง: ส่งเสียงปี๊บ~! ตอนเริ่มตัวจับเวลา ตอนจบ และตอนเริ่มใหม่หลังรีเซ็ต
-
ป้อนชื่อนักกีฬา
-
เพิ่ม/ลดคะแนนหน่วยละ 4/3/2 คะแนนสำหรับนักกีฬาแต่ละคน
-
ให้ Advantage/Penalty สำหรับนักกีฬาแต่ละคน
-
คำนวณคะแนนรวม
-
รีเซ็ตสกอร์บอร์ด
เหตุผลที่ทำสิ่งนี้มีดังนี้
-
ด้วยเหตุผลหลายอย่าง...! ผมเริ่มสนใจ Flutter และเคยลองเรียนรู้พร้อมทำแอปง่ายมาก ๆ มาก่อน
-
ตอนนั้นผมกำลังเรียนบราซิลเลียนยิวยิตสูมาได้ประมาณ 1 ปี แล้วที่ยิมที่ผมไปฝึกก็จะจัดการแข่งขัน
-
มีการพูดกันว่าสกอร์บอร์ดที่จะใช้ในการแข่งขันมีเป็นแอปมือถือ แต่ไม่มีแอปเดสก์ท็อปที่ใช้งานได้สะดวก (= นักกีฬาหรือผู้เกี่ยวข้องไม่สามารถเช็กคะแนนได้ และกรรมการก็มีภาระในการคอยบอกคะแนน)
-
คนที่รู้ว่าผมเป็นนักพัฒนาก็พูดแบบกึ่งล้อเล่นว่า 'เอ๊ะ อันนี้คุณทำได้ใช่ไหม!?'
-
แต่พอได้ยินแบบนั้นก็ฉุกคิดขึ้นมาว่า Flutter นี่เป็นสิ่งที่จะแสดงประโยชน์ได้จริงกับไอเท็มนี้...!
-
เลยทำในช่วงสุดสัปดาห์และนำไปใช้ในการแข่งขัน ซึ่งตอนนี้ก็ยังใช้อยู่
ความแตกต่างจากสกอร์บอร์ดเดิมคือ
-
ในด้านฟังก์ชัน แทบจะเหมือนกัน
-
แต่สามารถดูได้ในเบราว์เซอร์ และขนาดแนวตั้งแนวนอนจะเปลี่ยนไปตามขนาดของเบราว์เซอร์
-
กล่าวคือเป็นสกอร์บอร์ดที่ใช้งานได้ทุกที่รวมถึงบนมือถือ
-
ขนาดตัวอักษรจะเปลี่ยนแบบไดนามิกตามค่าความสูงของหน้าจอ
มีการใช้ไลบรารีชื่อ GetX ที่ใช้ใน Flutter สำหรับจัดการ state
และเนื่องจากความซับซ้อนของโครงสร้างการพัฒนาไม่ได้สูงมากนัก จึงสร้างโค้ดโดยแยก UI/Logic/Data ออกจากกันด้วยแพตเทิร์น MVC แบบอิงคอมโพเนนต์
เขียนด้วย Dart ซึ่งเป็นภาษาพื้นฐานของ Flutter ลองเข้าไปดูกันได้เลย และหากมีความคิดเห็น ฟีดแบ็ก หรือความสนใจในรูปแบบใดก็ตาม จะขอบคุณมากครับ!!
7 ความคิดเห็น
เคยได้ยินแค่ว่าใช้ Flutter ทำเว็บ แต่นี่เป็นครั้งแรกที่ได้เห็นครับ
พอลองดูจากเครื่องมือนักพัฒนาแล้ว
รู้สึกว่าแทนที่จะเป็นการพัฒนาเว็บ น่าจะเหมือนสร้างแอปที่ทำงานอยู่ในเบราว์เซอร์มากกว่า
สุดยอดมากครับ~~ คนเก่งจริง ๆ!!
@misolab ถูกต้องครับ เพราะมันเป็นลักษณะการวาดลงบนแคนวาส ก็เลยเหมือนแค่วางแอปทับลงไปทั้งดุ้นเลย...
จริง ๆ หลังจากที่ผมได้ยินเรื่องการพัฒนา Flutter Web แบบปากต่อปากมา ผมก็เคยคิดว่า ลองทำบล็อกด้วย Flutter ดูดีกว่า! แต่สุดท้ายก็พับความคิดนี้เก็บไว้ดี ๆ ...
โดยพื้นฐานแล้วมันไม่ค่อยถูกเสิร์ชเอนจินค้นเจอเลยนี่สิ....;
ระบบค้นหาของ Google น่าจะทำได้อยู่แล้วใช่ไหมครับ? อย่างน้อยบอทค้นหาแปลก ๆ ก็คงดึงเนื้อหาไปไม่ได้ เลยอาจกลายเป็นพื้นที่ที่สะอาดขึ้นกว่าเดิมก็ได้... ^^;
ก็เป็นไปได้เหมือนกันนะ...!? 555 ผมเองก็ติดตามด้วยความสนใจอยู่เรื่อย ๆ เหมือนกัน เพราะกำลังพัฒนาอย่างรวดเร็ว เลยน่าจะพอคาดหวังได้อยู่ 555
ได้ยินว่าพอทำได้ในระดับหนึ่งเพราะ Googlebot ใช้ Chromium เป็นพื้นฐาน
แต่ถ้าจะทำ SEO ให้ได้เรื่องจริง ๆ ดูเหมือนว่าส่วนใหญ่จะแนะนำให้ทำ HTML เวอร์ชันสำหรับบอตแยกไว้ต่างหากครับ
น่าเสียดายที่ผมไม่รู้เรื่องยูยิตสูเลย..
แต่ในเมื่อบอกว่าจะนำไปใช้ในการแข่งขัน ผมเลยคิดว่าน่าจะดีถ้าสามารถบันทึกประวัติคะแนนที่ผ่านมาในรูปแบบลีดเดอร์บอร์ดได้
เช่น ให้ผู้เล่นล็อกอินแยกกัน ก็เลยคิดว่าน่าจะทำประวัติของผู้เล่นแต่ละคนได้ด้วย
แล้วก็ ในบรรดาแอปที่ผมใช้บ่อย มีแอปบันทึกสถิติการเล่นบอร์ดเกมชื่อ BG Stats
จำได้ว่ามันแสดงสถิติอัตราการชนะรายคู่ เช่น เวลาแข่งกับคู่ต่อสู้คนหนึ่งชนะมากี่ครั้ง/ชนะด้วยคะแนนห่างเท่าไร เป็นต้น
https://www.bgstatsapp.com/
@xguru
ว้าว ดูเหมือนว่าจะต่อยอดเป็นแพลตฟอร์มที่สามารถจัดการประวัตินักกีฬาได้เลยนะครับ...! ขอบคุณสำหรับความเห็นที่เปี่ยมด้วยอินไซต์มาก ๆ ครับ!!
BG Stats เป็นแอปบันทึกสถิติการเล่นบอร์ดเกมนี่เอง...! ผมเองก็ชอบบอร์ดเกมอยู่พอสมควรเหมือนกัน แม้จะเล่นอยู่ไม่กี่แบบ แต่เป็นแอปที่ยอดเยี่ยมมากเลยครับ...!
พอในยิวยิตสูมีระบบให้คะแนนด้วย ก็เลยรู้สึกว่าน่าจะมีคอนเทนต์ที่เอามาอ้างอิงได้เยอะมากจริง ๆ ครับ
ขอบคุณสำหรับแหล่งข้อมูลอ้างอิงด้วยนะครับ!!