Share

Quay lại
Trang chủ / Kiến thức / Phát triển offshore / Single Page Application - giải pháp nâng cao trải nghiệm người dùng

Single Page Application - giải pháp nâng cao trải nghiệm người dùng

15/12/2023
11/11/2021
Single Page Application - giải pháp nâng cao trải nghiệm người dùng

Một trong những xu hướng phát triển website hiện nay đó chính là Single Page Application. Là một nhà phát triển website, cụm từ này chắc hẳn không hề xa lạ gì với bạn. Nhưng đối với khách hàng, người muốn làm website, Single Page Application hay Single Page Website là gì? Vì sao nó lại là xu hướng phát triển web hiện nay? Nó có ưu điểm, nhược điểm gì so với website truyền thống? Chúng ta cùng tìm hiểu trong bài viết này.

 1. Single Page Application là gì?

Single Page Application (Single Page Website Application) là một ứng dụng web, hay một website, giúp nâng cao trải nghiệm người dùng bằng cách sử dụng HTML5 và AJAX. 

Khi người dùng truy cập vào một thành phần bất kỳ, trang web chỉ tải lại nội dung đó mà không tải lại hết cả một trang web. Vì vậy, người dùng có thể truy cập nhiều trang con mà không ảnh hưởng gì đến trang gốc. 

Cách Single Page Application hoạt động. Nguồn: Monocubed

Để dễ hình dung, Facebook là một trang web sử dụng SPA. Khi bạn lướt News feed, hãy thử load lại trang, Facebook chỉ load lại phần nội dung của trang. Phần khung trang (master page) sẽ không thay đổi.

Một ông lớn khác cũng sử dụng công nghệ này đó chính là Google, khi bạn thực hiện tìm kiếm, những gì thay đổi là kết quả tìm kiếm được, còn thanh Google thì không có thay đổi.
Chắc hẳn những ông lớn này đã làm bạn tự tin hơn khi chọn SPA làm hướng phát triển website phải không.

2. Tại sao Single Page Application là xu hướng phát triển website hiện nay?

Để trả lời cho câu hỏi này thì trước hết ta cùng tìm hiểu website truyền thống hoạt động thế nào trước.

Trước khi SPA xuất hiện thì một trang web truyền thống hoạt động như sau:

Cách website truyền thống hoạt động. Nguồn: Azoft

Khi người dùng thực hiện gửi một yêu cầu từ trang web, server sẽ nhận yêu cầu đó, tính toán và gửi lại toàn bộ trang web cho người dùng dưới dạng mã HTML. Ở phía client (phía người dùng) sẽ hiển thị kết quả trả về. Điều này khiến server thì tốn tải để tính toán, xử lý và phải gửi đi những thứ không thay đổi. Phía client lại chỉ đợi và hiển thị kết quả trả về.

Tuy nhiên, với sự phát triển của website hiện nay và yêu cầu cao về trải nghiệm người dùng thì việc xử lý như trên không còn phù hợp. Xu hướng hiện nay là phân rõ vai trò cho client và server. Nhiệm vụ nào thuộc về client thì để cho client xử lý. Đó là lý do mà Single Page Application ra đời.

3. Ưu nhược điểm của Single Page Application là gì?

3.1 Ưu điểm

Một số ưu điểm của Single Page Application mà Product Owner và nhà phát triển website cần lưu tâm:

  • Trang chỉ cần load một lần duy nhất. Khi user chuyển trang hoặc thêm dữ liệu, JavaScript sẽ lấy và gửi dữ liệu từ server qua AJAX. User có thể thấy dữ liệu mới mà không cần chuyển trang.
  • Chuyển logic sang client nên giảm tải được một phần cho server.
  • Giảm được băng thông do chỉ cần lấy JSON và dữ liệu cần thiết, thay vì phải lấy toàn bộ trang.
  • Với việc chỉ xử lý những gì thay đổi thì sẽ không tốn thời gian nhiều trong việc xử lý dữ liệu. Vì vậy, SPA sẽ cải thiện đáng kể trải nghiệm người dùng, đặc biệt là người dùng mobile. 

Với các ứng dụng cần tương tác nhiều, SPA hoạt động mượt mà hơn vì code chạy trên browser, không cần load đi loại lại nhiều

3.2 Nhược điểm

Bên cạnh những ưu điểm mà chúng ta có thể nhìn thấy khá rõ ràng, chúng tôi vẫn cần công nhận rằng công nghệ này vẫn còn một số những hạn chế nhất định:

  • Code chia làm 2 phần Back-end và Front-end (việc phát triển website sẽ cần chia thành 2 dự án cho Back-end và Front-end).
  • SEO không tốt bằng website truyền thống vì người dùng sẽ phải cuộn trang web khá nhiều lần mới tìm thấy nội dung mà họ cần. Tuy nhiên đây không phải là nhược điểm không thể khắc phục được. Chỉ cần bạn biết cách tính toán cách tổ chức nội dung, bố cục website kỹ lưỡng.
  • Load trang lần đầu sẽ bị chậm

4. Kết luận

Đối với việc SEO thì có lẽ Single Page Application có lẽ không phải là một lựa chọn tối ưu nhất. Nhưng sẽ là một sự lựa chọn hoàn hảo cho website, ứng dụng cần tương tác nhiều và yêu cầu cao về tính trải nghiệm người dùng. SPA cũng là một trong những xu hướng phát triển web hiện nay. Nếu mục tiêu của bạn là tối ưu hóa SEO cho website, hãy tham khảo bài viết Tối ưu hóa SEO website với Client Side Rendering và Server Side Rendering

Share


Cập nhật bài viết mới nhất từ chuyên gia

Không được để trống
Không được để trống
Không được để trống
Không được để trống
Tìm kiếm
Tags
Website là gì? Khái niệm, cấu tạo, phân loại các Website hiện nay
Website là gì? Khái niệm, cấu tạo, phân loại các Website hiện nay
24/11/2023
21/12/2023

Gặp gỡ và lắng nghe

Không được để trống
Không được để trống
Không được để trống
Không được để trống