Single Page Application – SPA là gì?

0
SPA – Single Page Application – Tạm dịch là ứng dụng một trang, là khái niệm để chỉ ứng dụng web mà tất cả nội dung và thao tác trên ứng dụng web đều được xử lý trên một trang duy nhất. SPA đem lại cho người dùng trải nghiệm ứng dụng web như một ứng dụng desktop vậy

SPA hoạt động như thế nào?

Với mô hình phát triển web truyền thống, khi người dùng gửi một request đên web server thì server sẽ xử lý và trả về toàn bộ nội dung trang web đó dưới dạng mã HTML. Server sẽ phải truy vấn Database xử ly, tạo ra và trả về nội dung HTML hoàn chỉnh của trang.
Còn đối với SPA, khi request đầu tiền thì hệ thống sẽ trả về tất cả các đoạn mã chứa khung html và các đoạn code xử lý. Sau đó khi người dùng tương tác với hệ thống thì, phía client sẽ gửi các request lên server và lấy về dữ liệu dạng thô ví dụ như json hay chuỗi rồi xử lý nó để hiển thị lên cho người dùng.

Điểm yếu, điểm mạnh của SPA?

SPA làm giảm các thời gian tải từ yêu cầu thứ 2 trở đi, hơn nữa các dữ liệu trả về dưới dạng thô nên dung lượng cũng sẽ thấp hơn, tiết kiệm được băng thông cho cả server lẫn người dùng. Hơn nữa người dùng sẽ không thấy trang web được reload vì vậy cũng làm tăng trải nghiệm người dùng, cho người dùng cảm giác như là dùng ứng dụng desktop vậy.
Bên cạnh những điểm mạnh đó thì SPA cũng có những yếu điểm:
Không thể tối ưu cho các bộ máy tìm kiếm: Vì có nhiều thành phần trang chỉ được tải khi người dùng tương tác với trang web vì vậy. SPA không thể tối ưu cho bộ máy tìm kiếm
Không sử dụng được browser history: Vì các trang nội dung bên trong không được load bằng url nên trình duyệt không thể lưu lại lịch sử của các trang web.
Nếu hai vấn đề trên không phải là điểm bận tâm trong sản phẩm của bạn, thì SPA là một lựa chọn sáng suốt cho việc phát triển ứng dụng web ở thời điểm hiện tại.

SPA có thực sự dễ phát triển?

Hiện tại có khá nhiều cách để phát triển SPA, nhưng hầu hết các lập trình viên mà tôi biết đều đánh giá cao và lựa chọn cách phát triển SPA bằng các framework Javascript.
Dưới đây là một số framework giúp bạn làm được việc này:
AngularJS (mình sử dụng cái này)
BackboneJS
SailJS
Trong số các framework trên thì AngularJS là framework được nhiều lập trình viên tin dùng nhất. Hơn nữa nó được google phát triển vì vậy bạn có thể yên tâm về tính ổn định của nó

Lời Kết

Qua bài viết hy vọng các bạn đã hiểu SPA là gì và điểm mạnh và điểm yếu của SPA. Nó cũng là một kỹ thuật được sử dụng với mục đích chính là nâng cao trải nghiệm người dùng. SPA cũng có những điểm mạnh và điểm yếu của nó. Việc cân nhắc có sử dụng SPA hay không còn phụ thuộc vào việc bạn cần điểm mạnh và chấp nhận điểm yếu của nó đến như thế nào.

Post a Comment

0 Comments
* Please Don't Spam Here. All the Comments are Reviewed by Admin.

buttons=(Accept !) days=(20)

Our website uses cookies to enhance your experience. Learn More
Accept !