NoteMan – Ứng dụng ra đời từ việc cắt tóc
Lời nhắc: NoteMan là ứng dụng cá nhân, chưa từng và cũng không có kế hoạch đăng tải lên các cửa hàng ứng dụng.
Tiêu đề này dường như mang chút ý nghĩa thật sự, bởi thực tế cũng có mối liên hệ nhất định. Trong vài năm gần đây, tôi sống chủ yếu ở Hồng Kông, nơi mà việc cắt tóc đôi khi không hoàn toàn phù hợp với gu của tôi. Do lịch trình quay lại Thâm Quyến không cố định, nên nhiều khi phải đợi đến hơn một tháng rưỡi mới được cắt tóc một lần. Điều này khiến tôi bắt đầu ghi chú lại lịch cắt tóc trên ghi chú điện thoại.
Sau đó, vì những lý do khác nhau như không muốn làm lộ thông tin cá nhân hoặc tránh nhầm lẫn với lịch làm việc trong Outlook, mọi thứ dần trở thành nhu cầu quản lý cá nhân cụ thể hơn:
- Ghi nhận ngày cắt tóc gần nhất, số ngày trôi qua, tên thợ cắt tóc (được đánh số) và số dư thẻ tích điểm.
- Theo dõi các sự kiện học đường tại Hồng Kông mỗi tuần.
- Ngày đáo hạn hóa đơn cần theo dõi.
- Ngày hết hạn của các dịch vụ trực tuyến cần cập nhật.
- Ngày hết hiệu lực của các giấy tờ tùy thân cần lưu tâm.
- Hạn sử dụng của thuốc men và đồ dùng thiết yếu trong nhà bếp cần kiểm tra thường xuyên.
- Ngày lễ và ngày nghỉ điều chỉnh của Trung Quốc đại lục.
- Ngày lễ và kỳ nghỉ trường học tại Hồng Kông.
- Ngày nghỉ thị trường chứng khoán Mỹ.
Tôi đã tìm kiếm kỹ lưỡng trên App Store nhưng không tìm thấy ứng dụng nào vừa ý. Vì vậy, tôi quyết định tự tạo một ứng dụng riêng. Sau khi cân nhắc nhiều công nghệ khác nhau, cuối cùng tôi chọn giải pháp C# + MAUI. Một phần vì muốn thử xem liệu bộ công cụ của Microsoft có thể giúp tôi xây dựng được một ứng dụng ổn định hay không, và phần còn lại là vì tôi vốn quen thuộc với C# và yêu thích XAML. Việc dành thời gian rảnh để phát triển dự án này cũng khá dễ dàng nhờ vào nền tảng lập trình thân thiện.
Phiên bản đầu tiên được tôi phát hành sau khoảng hai tuần làm việc. Mỗi tối trước khi đi ngủ, tôi đều dành vài phút viết code, cảm giác lúc ấy rất thú vị và hài lòng. Sau nhiều suy nghĩ, tôi đặt tên cho ứng dụng là NoteMan, và trải nghiệm thực tế còn tốt hơn mong đợi một chút. Tuy nhiên, xét về hiệu năng và trải nghiệm người dùng, thì MAUI vẫn chưa phải là lựa chọn tối ưu. So sánh với các phương pháp chuyển đổi ngôn ngữ như Flutter hay React Native, thì MAUI không hề vượt trội. Và nếu nói đến hiệu suất chạy chương trình, thì rõ ràng nó còn kém xa so với các giải pháp gốc như Java, Kotlin hoặc SwiftUI. Dù vậy, trong suốt hai năm qua, NoteMan vẫn là ứng dụng được tôi sử dụng nhiều nhất trên điện thoại.
Kết quả
!Hình ảnh minh họa
Tôi đã xem lại lịch sử commit của dự án, và biết rằng nó được khởi tạo lần đầu vào ngày 4 tháng 9 năm 2023. Trong suốt thời gian rảnh rỗi, tôi thường viết thêm vài dòng code, cải tiến giao diện, bổ sung tính năng mới… Tất cả diễn ra một cách ngẫu hứng và không đều đặn, kéo dài suốt 1 năm rưỡi trời. Mặc dù không phải là một nhà thiết kế chuyên nghiệp, tôi vẫn luôn nỗ lực để tạo ra sản phẩm nhỏ gọn, đẹp mắt và tiện lợi. Trải qua nhiều lần cải tiến, giao diện và trải nghiệm người dùng của NoteMan đã được nâng cấp đáng kể. Dù không thể sánh bằng các sản phẩm được thiết kế bởi các chuyên gia, nhưng tôi vẫn cảm thấy hài lòng với kết quả đạt được. Giới hạn của MAUI khiến tôi không còn động lực nghiên cứu sâu về các hiệu ứng chuyển động phức tạp — đây cũng là một điểm trừ không thể phủ nhận của framework này. Thực tế cho thấy, số lượng sản phẩm và công ty chọn MAUI là cực kỳ ít, và điều đó có nguyên nhân rõ ràng. Ít nhất, nếu trong tương lai tôi dẫn dắt nhóm phát triển sản phẩm di động, chắc chắn sẽ chỉ chọn giải pháp gốc, và loại bỏ hoàn toàn các phương pháp chuyển đổi ngôn ngữ như hiện tại.
Viết bài blog này, tôi muốn khép lại hành trình phát triển ứng dụng này một cách trọn vẹn. Vì vậy, trừ khi có biến cố bất ngờ xảy ra, tôi không có kế hoạch tiếp tục phát triển thêm tính năng mới hay thực hiện các phiên bản lớn cho NoteMan nữa, bởi vì hầu hết các yêu cầu cơ bản đã được đáp ứng, và giai đoạn “thử sức” cũng đã qua.
Sau gần 2 năm sử dụng và trải nghiệm, tôi có thể tóm tắt ngắn gọn về bộ công cụ C# + MAUI như sau: chạy được, dùng được, nhưng chỉ dừng lại ở mức đó. Vấn đề cốt lõi nằm ở chỗ các giải pháp chuyển đổi ngôn ngữ luôn kém xa về hiệu năng so với các giải pháp gốc. Từ kích thước ứng dụng, tốc độ xử lý, cho đến chi tiết trải nghiệm, đặc biệt là giao diện người dùng, chúng đều thiếu sót nghiêm trọng. Những lỗi nhỏ tồn đọng trong thời gian dài khiến tôi từng nghi ngờ rằng đội ngũ MAUI của Microsoft có lẽ đang đứng trước nguy cơ bị giải tán. Tuy nhiên, đây là một vấn đề quá rộng, và nếu đi sâu vào, hẳn sẽ dẫn đến câu chuyện quen thuộc về chu kỳ “làm một cái chết một cái” của Microsoft trong việc xây dựng framework UI cho ứng dụng.
Không nói nhiều nữa, dưới đây là vài hình ảnh chụp màn hình của ứng dụng, coi như một kỷ niệm cho hai năm phát triển đầy thú vị.
!Ảnh chụp màn hình 1
!Ảnh chụp màn hình 2
!Ảnh chụp màn hình 3
!Ảnh b69.win chụp màn hình 4!Ảnh chụp màn hình 5
Bản quyền: Website này tuân thủ giấy phép Creative Commons Attribution-NonCommercial-ShareAlike 4.0 International. Mọi chia sẻ vui lòng ghi rõ nguồn từ Knay.Net ™
0 bình luận
Huỷ trả lời