Khi mindset web bị bê nguyên vào mobile

Khi mindset web bị bê nguyên vào mobile

October 16, 2025 0 By Nam Vu

“App mobile cũng chỉ là hệ thống thôi mà, giống web thôi, khác mỗi cái giao diện.”

Là một lập trình viên, có lẽ bạn đã từng nghe câu nói này ít nhất một lần trong đời làm dự án. Nghe thì tưởng nhẹ nhàng, vô thưởng vô phạt, nhưng chính nó lại là khởi nguồn cho vô số nỗi đau, từ việc app bị từ chối duyệt store, cho tới phản hồi 1 sao đầy tức tưởi của người dùng chỉ vài ngày sau khi sản phẩm ra mắt.

Mình đã chứng kiến điều đó, không phải với tư cách người đứng ngoài, mà là người trong cuộc, developer phát triển một ứng dụng đặt lịch.

Khi mindset web bị bê nguyên vào mobile

Trong dự án đó, đội BA quyết định tái sử dụng toàn bộ giao diện web để đưa vào mobile. Họ giữ nguyên form đặt lịch khám với… 7 trường thông tin, trải dài nguyên màn hình, không hề chia bước. Họ quên mất rằng người dùng mobile thao tác bằng ngón tay, không phải chuột, và thường sử dụng khi đang đi đường, khi tín hiệu mạng không ổn định. Họ không tính đến các rủi ro: mất mạng, app bị tắt giữa chừng, người dùng từ chối cấp quyền GPS hay máy ảnh.

Kết quả?

  • Người bệnh thoát app giữa chừng vì form dài lê thê, bấm mỏi tay.
  • GPS không hoạt động vì người dùng không cấp quyền → App đơ.
  • Gửi yêu cầu khi mất mạng → Im lặng như tờ, không báo lỗi, không retry.
  • Người dùng đang nhập thông tin thì có cuộc gọi đến → quay lại thì… mất sạch dữ liệu.

App không sai nhiệm vụ. App chỉ “sai” vì không có ai viết ra những kịch bản mà mobile cần có.

3 bài học xương máu dành cho Dev khi làm app mobile

1. Người dùng là trung tâm, không phải quy trình nghiệp vụ

Trên web, người dùng thao tác bằng chuột, kết nối mạng ổn định, màn hình lớn. Nhưng trên mobile, mọi thứ thay đổi: mạng dễ rớt, ngón tay to hơn nút bấm, người dùng tranh thủ thao tác trong lúc xếp hàng, đang di chuyển hoặc thậm chí là khi đang… nằm.

=> Hãy chia nhỏ form. Điều hướng thông minh. Tự động validate từng bước. Ưu tiên thao tác nhanh, đơn giản và rõ ràng.

2. Luôn mô tả rõ các tình huống mất mạng, timeout

App không phải thầy bói. Nếu tài liệu không viết rõ phải làm gì khi mất kết nối, thì dev… cũng không tự đoán được. Kết quả là người dùng sẽ bấm tới 3 lần, không thấy phản hồi gì, rồi… xóa app vì tưởng bị treo.

=> Mạng yếu thì sao? Có hiển thị thông báo? Có retry sau 5s? Có lưu local không?

3. Permission – Được thì dùng, không được thì sao?

App mobile sử dụng đủ thứ: GPS, máy ảnh, push notification… Nhưng nếu người dùng từ chối quyền truy cập, thì chuyện gì xảy ra?

=> Có hướng dẫn lại cách bật quyền? Có phương án thay thế không dùng đến GPS? Có xử lý fallback không?

Mobile app không chỉ là giao diện lại của web

Làm mobile app không chỉ là chuyện “vẽ lại UI”, mà là chuyển đổi hoàn toàn hệ tư duy. Mobile khác web — khác hành vi, khác rủi ro, khác kỳ vọng.

Một BA giỏi không chỉ là người hiểu rõ luồng nghiệp vụ, mà còn là người đứng giữa kỹ thuật và người dùng, tiên đoán được những tình huống “tréo ngoe” nhất để đặc tả rõ ràng. Một dev giỏi là người không bị dắt mũi bởi giao diện, mà phải luôn tự hỏi: “Nếu là người dùng, mình có dùng được app này không?”

Làm app mobile không khó. Làm app mobile có thể tồn tại sau tuần đầu ra mắt mới là chuyện khó.

Một bài học nhớ đời – từ dev mobile từng nghĩ “app với web có gì khác nhau đâu”.

#ntechdevelopers