Trang web này được dịch tự động sang nhiều ngôn ngữ bằng phần mềm do Kohei Koyanagi phát triển. Để chính xác hơn, vui lòng xem bản gốc bằng tiếng Anh .

Splync v1.5 — Tùy chỉnh tỷ lệ chia theo dự án và danh mục

Splync v1.5 có thể tùy chỉnh tỷ lệ chia theo dự án và danh mục

Ngày 16 tháng 9 năm 2025, Splync v1.5 ra mắt — chỉ bốn ngày sau khi cuộc hôn nhân quốc tế của chúng tôi được thành phố chấp nhận. Trước bản cập nhật này, Splync không thể tùy chỉnh tỷ lệ chia; mọi chi phí đều mặc định chia đều. Với v1.5, người dùng có thể thiết lập tỷ lệ tùy chỉnh cho cả dự án và danh mục. Thay đổi này cho phép các cặp đôi và bạn bè chia sẻ chi phí chung theo cách phản ánh đúng cuộc sống thực, không chỉ là 50:50 đơn giản. Bạn có thể bắt đầu một dự án kế toán mới với tỷ lệ 60:40 cho chi phí hằng ngày từ tháng 10, trong khi vẫn giữ tiền thuê căn hộ ở mức 50:50 nếu cảm thấy hợp lý cho cả hai. Nếu bạn thấy hợp lý khi thực phẩm chia 70:30 và tiện ích chia 62:38, bạn có thể chỉ định các tỷ lệ đó riêng biệt — từng danh mục — trong cùng một dự án.

Cách thiết lập tỷ lệ tùy chỉnh

Thay đổi dễ thấy nhất trong v1.5 là phần Thành viên & Tỷ lệ mặc định mới, nơi bạn có thể thêm thành viên dự án và chỉ định tỷ lệ mặc định cho mỗi người. Nếu một dự án có hai thành viên, tỷ lệ có thể là 50:50, 40:60, hoặc bất cứ gì phù hợp. Với ba thành viên, có thể là 33.33:33.33:33.34, 50:25:25, hoặc bất kỳ kết hợp nào bạn thích. Đây sẽ trở thành tỷ lệ chia mặc định của dự án. Bên dưới đó, bạn có thể cuộn xuống để điều chỉnh tỷ lệ của từng danh mục nếu muốn khác với mặc định của dự án. Khi bạn gán một tỷ lệ tùy chỉnh cho một danh mục, dấu tỷ lệ màu xanh sẽ chuyển sang màu cam — một dấu hiệu nhỏ cho biết danh mục đang sử dụng quy tắc riêng của nó thay vì quy tắc toàn dự án. Dù thay đổi này tăng thêm nhiều khả năng linh hoạt cho cài đặt dự án, nó cũng làm cho giao diện tạo/chỉnh sửa dự án phức tạp hơn một chút. Để hỗ trợ việc này, tôi đã thêm các nút thông tin vào mỗi phần để bạn có thể nhấn vào xem các trợ giúp Hỏi & Đáp nhỏ.

Cách Splync thực hiện tỷ lệ tùy chỉnh

Thực hiện thay đổi này phức tạp hơn tôi dự kiến. Splync luôn giả định một thế giới 50:50 sạch sẽ — một con số, áp dụng mọi nơi, và toán học đã xong. Khi tôi quyết định hỗ trợ tỷ lệ tùy chỉnh, toàn bộ cấu trúc bên trong phải được suy nghĩ lại. Một dự án không còn có thể dựa vào một tỷ lệ chia sẻ duy nhất. Mỗi danh mục cần có tỷ lệ riêng, và mỗi chi phí phải tham chiếu cả mặc định cấp dự án và ghi đè cấp danh mục. Để làm việc này, tôi viết lại logic tính toán từ gốc. Mỗi chi phí giờ mang theo một cây quyết định nhỏ: “Danh mục này có tỷ lệ riêng không? Nếu có, sử dụng nó. Nếu không, quay về tỷ lệ dự án.” Nghe có vẻ đơn giản khi giải thích, nhưng việc giữ cho mô hình dữ liệu nhất quán trên toàn bộ ứng dụng — các chế độ xem iOS, backend FastAPI, và các schema MariaDB — đòi hỏi sự tinh chỉnh cẩn thận hơn tôi dự kiến.

Thay đổi trên máy chủ

Bất kỳ cập nhật nào liên quan đến phía máy chủ cần được xử lý cẩn thận tuyệt đối. Nếu bạn vô tình thay đổi mã máy chủ hiện có, người dùng vẫn trên v1.4 sẽ ngay lập tức gặp lỗi hoặc sự cố hệ thống. Ví dụ, chương trình máy chủ cho v1.5 mong đợi cài đặt dự án bao gồm dữ liệu tỷ lệ, nhưng ứng dụng v1.4 gửi cài đặt dự án mà không có tỷ lệ. Thời điểm hai phiên bản đó cố gắng giao tiếp, yêu cầu thất bại — chỉ vì chúng nói “ngôn ngữ” hơi khác nhau. Các nhà phát triển, tất nhiên, có thể thay đổi an toàn trong môi trường thử nghiệm. Phần khó bắt đầu sau khi gửi phiên bản mới cho Apple xem xét trong khi người dùng hiện tại vẫn đang dùng v1.4. Trong suốt thời gian từ khi gửi đến khi phát hành, máy chủ phải hỗ trợ cả hai phiên bản cùng lúc để người đánh giá của Apple có thể thử nghiệm v1.5 và người dùng hiện tại có thể tiếp tục sử dụng v1.4 mà không bị gián đoạn.

Quản lý các điểm cuối trong quá trình cập nhật phiên bản

Trong phát triển ứng dụng, một “điểm cuối” chỉ đơn giản là nơi ứng dụng gửi yêu cầu trên máy chủ — giống như một quầy cụ thể tại tòa thị chính. Một quầy xử lý đăng ký kết hôn, quầy khác xử lý hồ sơ cư trú và một quầy khác xử lý hộ chiếu. Ứng dụng hoạt động tương tự: mỗi điểm cuối là một cửa sổ chuyên dụng nơi máy chủ chấp nhận một loại yêu cầu cụ thể như đăng nhập, tạo dự án, chỉnh sửa chi phí, yêu cầu kết bạn, v.v. Khi Splync v1.4 gửi yêu cầu, nó đến “cửa sổ” cũ hiểu định dạng cũ. Splync v1.5 gửi yêu cầu đến “cửa sổ” mới hiểu dữ liệu tỷ lệ. Nếu máy chủ đóng cửa sổ cũ quá sớm, người dùng v1.4 sẽ không có nơi nào để “nộp” dữ liệu của họ. Đó là lý do trong quá trình cập nhật, máy chủ cần giữ cả hai cửa sổ mở — cả hai điểm cuối — cho đến khi mọi người dùng đã di chuyển an toàn sang phiên bản mới hơn. Thành thật mà nói, quản lý hai cửa sổ này cùng lúc cảm giác như suy nghĩ trong một chiều không gian bổ sung.

Còn tỷ lệ chia cho từng chi phí thì sao

Splync v1.5 có thể tùy chỉnh tỷ lệ chia theo dự án và danh mục, nhưng chưa theo từng chi phí. Để hỗ trợ tỷ lệ chia theo từng chi phí, chúng tôi cần thêm một lớp cấu trúc — thực chất là viết lại sâu hơn cách mỗi chi phí lưu trữ và tính toán phần chia của mình. Chúng tôi cũng phải cẩn thận để không làm giao diện ứng dụng trở nên phức tạp chỉ vì thêm sức mạnh. Đây là một nâng cấp lớn hơn bạn tưởng. Hãy cho chúng tôi thêm chút thời gian để đạt được điều đó. Nó đang trong tầm nhìn của chúng tôi — và chúng tôi sẽ đạt được nó. Cho đến lúc đó, hãy khám phá cách mà các tỷ lệ mới theo dự án và danh mục đã làm cho chi phí chia sẻ trở nên linh hoạt hơn nhiều.