Xin chia sẻ một bảng điểm dành cho giải đấu Jiu-Jitsu được xây dựng bằng Flutter, framework phát triển đa nền tảng :)
-
Có phiên bản web có thể chạy được trên GitHub Pages.
-
Vì được làm bằng Flutter nên có thể build thành các phiên bản chạy trên nhiều môi trường khác nhau (PC, Android, iOS).
Danh sách các tính năng đang hoạt động như sau.
-
Bộ đếm thời gian: bắt đầu/tạm dừng/thay đổi thời gian/đưa về lại 6 phút
-
Âm thanh: phát tiếng bíp khi bắt đầu bộ đếm thời gian, khi kết thúc, và khi khởi động lại sau khi reset
-
Nhập tên vận động viên
-
Với mỗi vận động viên, tăng/giảm điểm theo đơn vị 4 điểm/3 điểm/2 điểm
-
Với mỗi vận động viên, cộng Advantage/Penalty
-
Tính tổng điểm
-
Reset bảng điểm
Lý do tôi làm ra cái này như sau.
-
Vì nhiều lý do khác nhau...! Tôi thấy hứng thú với Flutter nên đã học thử và từng làm một ứng dụng cực kỳ đơn giản.
-
Tôi đã học Jiu-Jitsu khoảng 1 năm, và võ đường tôi theo học đã tổ chức một giải đấu.
-
Có nói rằng bảng điểm dùng trong giải thì có ứng dụng di động, nhưng lại không có ứng dụng desktop nào đủ hữu ích để dùng (= vận động viên hoặc người liên quan không thể xem điểm, và trọng tài cũng phải vất vả hướng dẫn)
-
Những người biết tôi làm phát triển phần mềm đã nửa đùa nửa thật nói rằng: "Ơ, cái này anh làm được chứ!?"
-
Nhưng khi nghe vậy, tôi chợt nghĩ đây đúng là một hạng mục mà Flutter có thể phát huy hiệu quả thực sự...!
-
Tôi làm nó vào cuối tuần để dùng cho giải đấu, và đến giờ nó vẫn đang được sử dụng.
Điểm khác biệt so với bảng điểm hiện có là
-
Về mặt chức năng thì gần như giống nhau.
-
Tuy nhiên có thể xem trên trình duyệt, và kích thước trên dưới trái phải sẽ thay đổi theo kích thước trình duyệt.
-
Tức là đây là bảng điểm có thể dùng ở bất cứ đâu, kể cả trên di động.
-
Kích thước chữ sẽ thay đổi động theo chiều cao màn hình.
Tôi đã dùng thư viện GetX trong Flutter để quản lý trạng thái,
và vì độ phức tạp của cấu trúc phát triển không quá cao nên tôi viết mã theo hướng component-based, sử dụng mẫu MVC để tách riêng UI/Logic/Data.
Nó được viết bằng Dart, ngôn ngữ nền tảng của Flutter. Rất mong mọi người xem qua và nếu có bất kỳ ý kiến, phản hồi hay bất kỳ sự quan tâm nào thì tôi sẽ vô cùng cảm kích!!
7 bình luận
Tôi mới chỉ nghe nói về việc phát triển Web bằng Flutter, đây là lần đầu tiên được thấy.
Nhìn qua công cụ dành cho nhà phát triển thì có vẻ không hẳn là phát triển Web,
mà giống như tạo một ứng dụng chạy trong trình duyệt hơn.
Thật đáng nể.~~ Cao thủ thật!!
@misolab Đúng vậy, vì là kiểu vẽ lên canvas nên về cơ bản chỉ là đặt nguyên cả app lên trên thôi...
Thực ra sau khi chỉ mới nghe nói qua về phát triển Flutter Web, tôi cũng từng nghĩ “Hay là thử làm blog bằng Flutter nhỉ!”, nhưng rồi đã cất kỹ ý định đó đi...
Về cơ bản là nó không thể được công cụ tìm kiếm lập chỉ mục....;
Có lẽ công cụ tìm kiếm của Google sẽ làm được chứ nhỉ? Mấy bot tìm kiếm kỳ quặc khác sẽ không lấy được nội dung, biết đâu ngược lại còn thành một vùng sạch hơn cũng nên... ^^;
Cũng có thể lắm chứ...!? haha Mình cũng đang quan tâm và tiếp tục theo dõi, vì nó đang phát triển rất nhanh nên có vẻ khá đáng để kỳ vọng haha
Nghe nói Googlebot dùng nền tảng Chrome nên cũng làm được ở mức nào đó.
Nhưng có vẻ đa số ý kiến là nếu muốn làm SEO cho đúng thì nên tạo riêng một phiên bản HTML dành cho bot.
Tiếc là tôi hoàn toàn không biết về jiu-jitsu..
Nhưng vì bạn nói sẽ dùng ở giải đấu, nên tôi đã nghĩ sẽ hay hơn nếu có thể lưu lại lịch sử ghi điểm hiện có theo dạng leaderboard.
Có vẻ cũng có thể cho từng vận động viên đăng nhập, rồi theo đó có cả lịch sử riêng cho từng người.
Ngoài ra, trong số các app tôi hay dùng có một app ghi lại lịch sử chơi board game tên là BG Stats,
và tôi nhớ là nó hiển thị thống kê tỷ lệ thắng theo từng đối thủ, chẳng hạn như đã thắng một đối thủ cụ thể bao nhiêu lần / với cách biệt bao nhiêu điểm.
https://www.bgstatsapp.com/
@xguru
Wow, có vẻ như nó hoàn toàn có thể phát triển thành một nền tảng có thể quản lý cả hồ sơ vận động viên nữa...! Cảm ơn vì những ý kiến đầy insight!!
BG Stats, một ứng dụng ghi lại lịch sử chơi board game sao...! Tôi cũng khá thích board game, dù chỉ vài thể loại giới hạn thôi, đúng là một ứng dụng tuyệt vời...!
Vì jiu-jitsu cũng có tính điểm, nên có vẻ thật sự có rất nhiều nội dung đáng để tham khảo.
Cảm ơn cả những tài nguyên tham khảo nữa!!