Đăng bởi

Mini App là gì? Mini App mang lại những lợi ích nào cho doanh nghiệp?

mini app - tini app - tiki

Với sự phát triển của những gã khổng lồ công nghệ như “Super App” WeChat, Alibaba, LINE hay Shopee, khái niệm “Mini App” hẳn đã không còn xa lạ với cộng đồng công nghệ. Tuy nhiên, đứng về khía cạnh doanh nghiệp, Mini App mang lại ý nghĩa, lợi ích của Mini App là gì? Và đặc biệt hơn, làm thế nào để Mini App có thể tiếp cận hàng triệu traffic cho một doanh nghiệp vừa – nhỏ và Startup?

Hàng triệu lượt truy cập nghe có vẻ… hoang đường, nhưng hoàn toàn có thể, vì Mini App của WeChat đã làm được câu chuyện đó (với con số thậm chí là hàng trăm triệu traffic… mỗi ngày). Doanh nghiệp của bạn cũng có thể đạt được thành công đó, chỉ cần nắm được cách thức thực hiện.

Để tìm hiểu thêm về Mini App là gì và vì sao doanh nghiệp nên cân nhắc phát triển Mini App, ITviec đã có buổi trò chuyện với nhiều thông tin vô cùng thú vị với anh Lâm Vương – Technical Lead, và anh Nguyễn Trung Kiên – Director of Engineering, cùng làm việc tại TIKI.

Mini app là gì?

Mini app về bản chất cũng chỉ là một ứng dụng chạy trên một nền tảng. Điểm khác biệt ở đây là “nền tảng” mà Mini app chạy trên đó lại chính là một ứng dụng khác (hay còn gọi là ứng dụng chủ, app chủ). Khi số lượng Mini app đạt đến một con số đủ để tạo thành một hệ sinh thái mà người dùng có thể sử dụng hằng ngày, liền mạch cho mọi nhu cầu liên quan thì những ứng dụng chủ này sẽ được gọi là Super App – siêu ứng dụng.

mini app airasia

Super App là một ứng dụng cho tất cả nhu cầu của người dùng. Nguồn ảnh: Airasia.

Có nhiều cách để doanh nghiệp phát triển Mini App trên App chủ, như:

  • Cách 1: Mini App thuộc quyền sở hữu của App chủ và do chính App chủ phát triển, ví dụ: Shopee, Grab. Cách làm này giúp các developer của app chủ có thể truy cập vào source code để phát triển mini app. Tuy nhiên, không phải ứng dụng nào cũng có đủ nguồn lực về người và về tài chính để làm theo cách này. Với hình thức này, App chủ sẽ không cần đối tác.
  • Cách 2: Doanh nghiệp tự phát triển ứng dụng và tìm giải pháp để đưa vào app chủ. Ví dụ như sử dụng WebView.
  • Cách 3: Doanh nghiệp được phép truy cập vào source code của App chủ và tự code Mini App. Tuy nhiên, cách làm này sẽ làm ảnh hưởng đến tính bảo mật của App chủ nên sẽ khó được áp dụng.
  • Cách 4: Doanh nghiệp hợp tác với App chủ để tạo Mini App và hiển thị trên App chủ thông qua các công cụ phát triển ứng dụng do App chủ cung cấp, ví dụ như WeChat, Zalo, MoMo, TIKI. Cách làm này đơn giản, tiện lợi cho các doanh nghiệp hơn vì họ có thể quản lý trực tiếp ứng dụng của mình.

Mini App có thể là giải pháp phù hợp cho những doanh nghiệp đang có nhu cầu mở rộng tệp người dùng, tăng độ nhận diện thương hiệu và tăng traffic dẫn về ứng dụng.

Lợi ích của Mini app đối với doanh nghiệp?

  • Tiết kiệm nguồn lực phát triển sản phẩm

Theo anh Kiên chia sẻ, thời gian phát triển sản phẩm được rút ngắn đáng kể khi doanh nghiệp phát triển Mini App trên App chủ nhờ vào những bộ công cụ sẵn có, framework được thiết kế riêng cũng như nhiều components UI hữu ích.

Đồng thời, khi phát triển Mini App trên nền tảng Super App, doanh nghiệp có thể dễ dàng chỉ cần code một lần nhưng lên được nhiều nền tảng. Thông thường, một ứng dụng cần ít nhất hai người Developer, mỗi người riêng biệt cho hệ điều hành Android và iOS, hoặc/và cần thêm một người phát triển website. Còn đối với Mini App, doanh nghiệp chỉ cần đúng một người Developer là đã có thể phát triển được sản phẩm cả 3 nền tảng nhờ vào code platform mà App chủ cung cấp. Từ đó, doanh nghiệp có thể tiết kiệm được nhân lực và chi phí.

Khi thời gian và nhân lực được tối ưu hóa, chi phí phát triển sản phẩm cũng sẽ được tiết kiệm tối đa.

  • Được tiếp cận với tập người dùng sẵn có từ Super App

mini app wechat

WeChat Mini Program.

Dựa trên số liệu chính thức từ WeChat, trong tháng 1/2022, số lượng người dùng active mỗi ngày của WeChat là gần 1 tỷ người dùng, trong đó có 450 triệu người dùng mỗi ngày truy cập vào các ứng dụng Mini App thuộc WeChat Mini Programs. Số lượng ứng dụng Mini App hiện nay của WeChat đã vượt qua con số 3 triệu Mini App. Quả là những con số biết nói.

Với số lượng người dùng active mỗi ngày lớn như vậy, bất kỳ doanh nghiệp nào cũng sẽ muốn tiếp cận và tương tác dù chỉ là vài phần trăm của con số đó. Đó cũng chính là điểm hấp dẫn lớn nhất đối với doanh nghiệp khi lựa chọn phát triển Mini App trên Super App.

  • Tận dụng hệ sinh thái sẵn có từ Super App

Hệ sinh thái sẵn có của Super App cũng là một điểm thu hút khác đối với doanh nghiệp. App chủ sẵn sàng cung cấp cho doanh nghiệp những tiện ích sẵn có như thanh toán, giao nhận, quảng bá chiến dịch, trải nghiệm tương tác, chat với người bán,… để doanh nghiệp chỉ cần tập trung vào việc phát triển sản phẩm cho thật tốt.

  • Nâng cấp giải pháp trải nghiệm người dùng

Nhờ vào hệ sinh thái sẵn có của các App chủ, khách hàng của Mini App sẽ được trải nghiệm quy trình khách hàng liền mạch từ khâu lựa chọn, giao dịch, thanh toán, theo dõi đơn hàng, hỗ trợ khách hàng,… mà không cần phải phát triển quy trình từ con số 0. Từ đó, giúp tăng tỷ lệ quay lại (return rate) của khách hàng đối với Mini App.

  • Mini App có thể “tách ra” nếu đã đủ lớn mạnh

Mini App có thể đóng vai trò như là một “bước đệm thử” của doanh nghiệp khi mới bắt đầu tiến vào thị trường. Khi bạn cảm thấy sản phẩm của bạn đã đủ hoàn thiện, có lượt khách hàng quay lại tương đối ổn định và đạt kỳ vọng, bạn hoàn toàn có thể tự xây dựng Native App nếu có nhu cầu.

Anh Lâm bổ sung thêm nhận định: “Doanh nghiệp sẽ không chọn Super App để sống hoài với họ vì một doanh nghiệp không thể sống phụ thuộc vào một doanh nghiệp khác mãi được.

Tuy nhiên, khi tách ra, doanh nghiệp cần phải giải quyết những bài toán khác về công nghệ và nguồn lực – những bài toán vốn dĩ đã được App chủ “lo lắng” giúp trước đây, nên vẫn có nhiều doanh nghiệp chọn ổn định với Super App. Đồng thời, với những Super App có lượt traffic “khủng”, như WeChat, hẳn doanh nghiệp có thể chọn ở lại và phát triển thêm Native App nếu cần thiết.

So sánh giữa Mini App – PWA – Native app

Về nhận định liệu Mini App có thay thế PWA hay Native App hoặc ngược lại không, anh Lâm khẳng định rằng,

Mini App, Progressive Web App (PWA) và Native App đều có những ưu điểm và nhược điểm riêng. Trừ khi nào Native App có code platform thì mới thay thế được Mini App, còn không thì khó mà thay thế được.

Anh Lâm cũng chỉ ra những ưu và khuyết điểm của từng dạng sản phẩm:

 Mini AppPWANative App
Định nghĩaBản chất vẫn là app. Điểm khác biệt là chạy trên một app khác.Làm cho một web giống một cái app hơn. Giống native app nhưng hiển thị ở web.Là “đỉnh cao” của sản phẩm ứng dụng.
Thời gian phát triển sản phẩm nhanhNhanh nhì. Thời gian phát triển sản phẩm nhanh nhưng không nhanh bằng PWA, do cũng tùy thuộc vào công nghệ mình muốn phát triển. Tuy nhiên, lại tiết kiệm được nhiều thời gian hơn so với Native App vì code một lần chạy được trên đa nền tảng.Thời gian phát triển sản phẩm nhanh nhất vì code web rất nhanh. Đồng thời, cũng không cần thời gian deploy, đưa lên app store hoặc app chủ như Native App và Mini App.Với những ai đã có web rồi thì đỡ tốn thời gian build thêm app, cứ chạy thẳng trên web thôi.Thời gian phát triển sản phẩm lâu nhất.
Chất lượng hiệu suấtChất lượng sản phẩm khá tốt do app chủ đã hỗ trợ hết.Chất lượng sản phẩm kém nhất trong 3 hình thức vì hiệu suất tối đa cũng chỉ như một web bình thường.Ưu điểm là web app trở nên thân thiện hơn với mobile:– Lưu thông tin như một app bình thường– Chạy background.Hiệu suất tốt nhất.
Quản lý chất lượngApp chủ sẽ là cơ quan chủ quản quản lý chất lượng.Người sở hữu web, webmaster, sẽ là người quản lý chất lượng.Team Developer của doanh nghiệp chịu trách nhiệm quản lý chất lượng với thang đo chất lượng do người dùng công chúng đánh giá.
Xét về mặt phát triển sản phẩm doanh nghiệp nên sử dụng giải pháp nào cho bài toán nào?Mini App dành cho những doanh nghiệp muốn làm ra ứng dụng trong thời gian nhanh và chi phí tiết kiệm, tiếp cận lượng khách hàng nhanh chóng.PWA dành cho những doanh nghiệp không quan trọng về mặt ứng dụng, có cũng được, không có cũng được.Native App dành cho những doanh nghiệp muốn quản lý tất cả, mọi công nghệ đều thuộc về mình.

Doanh nghiệp cần lưu ý điều gì khi chọn “App chủ” cho Mini App?

Anh Lâm chia sẻ: “Khi lựa chọn Super App để “cộng sinh”, điều quan trọng nhất mà doanh nghiệp cần lưu ý chính là hệ sinh thái của Super App đó phù hợp với Mini App mà mình muốn phát triển hay không.

Xét về mặt lý thuyết, doanh nghiệp có thể chọn bất kỳ Super App nào để hợp tác phát triển, miễn là họ đáp ứng được các yêu cầu về mặt công nghệ. Tuy nhiên, để tối ưu được hoạt động của Mini App, doanh nghiệp vẫn nên chọn những “App chủ” có hệ sinh thái gần với những gì mình đang tìm kiếm.

Ví dụ: Nếu bạn mong muốn phát triển sản phẩm về E-Commerce, những Super App như TIKI, Lazada hay Shopee chắc chắn sẽ phù hợp với bạn về mặt hệ sinh thái hơn là Zalo hay MoMo.

Điều thứ hai mà anh Lâm chia sẻ chính là hãy xem xét những công cụ (ví dụ như bộ components UI) mà Super App đó cung cấp cho đối tác đầy đủ hay không, công nghệ dễ áp dụng hay không.

Điều cuối cùng là liệu Super App mình muốn cộng tác có sẵn sàng hỗ trợ những vấn đề xuất hiện trong quá trình phát triển Mini App hay không.

Tổng quan về Tini App của TIKI

mini app - tini app - tiki

Xây dựng Mini App với TIKI.

Nếu doanh nghiệp đang mong muốn phát triển Mini App theo cách 4 đã giới thiệu ở trên, bạn có thể tìm hiểu thêm về chương trình Tini App do TIKI phát triển.

Tini App – tên gọi của các Mini App thuộc TIKI, là chương trình phát triển Mini App dành cho đối tác muốn hợp tác với TIKI. Tini App ra mắt vào năm 2021 và sau hơn 1 năm ra mắt, Tini App đã nhận về hơn 20 Mini App thuộc nhiều nhóm ứng dụng khác nhau như Tài chính điện tử (Fintech), Mua sắm, Game,…

Đồng thời, Tini App có đội ngũ Developer TIKI luôn sẵn sàng hỗ trợ đội ngũ phát triển của doanh nghiệp bất kỳ khi nào có thắc mắc, cần trợ giúp. Trong năm 2021, TIKI với cuộc thi TIKI Hackathon dành riêng cho Developer phát triển ứng dụng Mini App với Tini App đã góp phần xây dựng một cộng đồng nhà phát triển với nhiều ý tưởng mới lạ, kinh nghiệm thực tế và cùng nhau phát triển ứng dụng.

Tini App của TIKI có thể giải quyết những bài toán nào?

Đối với doanh nghiệp, Tini App có thể mang lại những ưu điểm:

  • Doanh nghiệp có thể tự phát triển sản phẩm trên nền tảng TIKI với thời gian phát triển sản phẩm nhanh, chi phí rẻ
  • Cung cấp hệ sinh thái sẵn có (như thanh toán, vận chuyển, chat với người bán,…), vô cùng phù hợp với những Mini App thuộc nhóm mua sắm
  • Tập người dùng active mỗi ngày lớn và sẵn có của TIKI: Khoảng ~100,000 Active Users mỗi ngày.

Nhờ vào kiến trúc Dual Thread, Tini App có thể giúp Mini App được phát triển với thời gian ngắn hơn, hiệu suất tốt hơn và hoạt động độc lập với TIKI app. Đối với nhà phát triển, Tini App mang đến giải pháp phát triển ứng dụng toàn diện với bộ công cụ bao gồm:

Công cụĐịnh nghĩaCông dụng
Tini ConsoleLà “cửa ngõ” để tạo Mini App.Tạo ra app, quản lý version, quản lý app, phân quyền trong app.
Tini Studio (IDE)Nơi dùng để code một Mini App.Tini Studio có simulator để simulate (giả lập) app đó sẽ hoạt động như thế nào trước khi đẩy lên local host.
Dev AssistantCông cụ để kiểm tra vận hành của Mini App trên ứng dụng TIKI.Khác với Tini Studio – chỉ có thể giả lập khi chạy mỗi Mini App, Dev Assistant giúp Developer “xem thử” Mini App sẽ chạy như thế nào trên môi trường TIKI app.
Tini Design SystemHệ thống vẽ UI-UX và flow Tini app dành cho designer.Tini Design System do chính team UI-UX của Tini app phân tích và hệ thống thành các flow quen thuộc (thanh toán, log in, tìm kiếm và khám phá sản phẩm). Designer có thể dùng Tini Design System để vẽ UI.
Tini UIBộ thư viện phát triển UI theo Tini Design System dành cho Developer.Tini UI hiển thị flow, các bước, UI được có sẵn thiết kế theo Tini Design System.

Quy trình phát triển Tini App với bộ công cụ:

mini app - tini app - tiki

Quy trình phát triển TINI App với TIKI.

Anh Kiên chia sẻ thêm: “Nhờ vào UI thân thiện, Developer dù ở level nào cũng có thể phát triển Mini App với TIKI. Đối với những Senior Developer đã có kinh nghiệm phát triển Native App thì sẽ còn nhanh hơn vì các bạn đã có sẵn mindset phát triển sản phẩm đúng đắn, dễ dàng chuyển đổi.”

Một vài ứng dụng Mini App đã được tạo ra với Tini App và đang chạy ổn định như:

  • DoriDori – Nền tảng Recommerce đầu tiên tại Việt Nam
  • Hexa: Reach the Star – Trò chơi ghép hình được yêu thích
  • Tefal Club – Nơi chia sẻ công thức và video nấu ăn cho mọi gia đình

Tham khảo thêm những ứng dụng được tạo ra từ bộ công cụ Tini App tại trang TINI Showcase.

Hướng phát triển của Tini App trong tương lai

Trong tương lai xa hơn, theo như chia sẻ từ anh Lâm và anh Kiên, TIKI sẽ muốn “biến” Tini App thành một bộ công cụ phát triển ứng dụng có thể được sử dụng ngay cả bên ngoài nền tảng của TIKI. Developer chỉ cần tải bộ công cụ Tini App về và phát triển Native App mà họ mong muốn. TIKI hướng đến mục tiêu phát triển Tini App trở thành bộ công cụ giúp Developer chỉ cần code một lần và có thể chạy trên nhiều nền tảng khác nhau.

Còn đối với tương lai gần dành cho doanh nghiệp đang phát triển Mini App với TIKI, TIKI mong muốn có thể cung cấp thêm các giải pháp về Marketing ngay trên TIKI cho đối tác bằng cách xây dựng công cụ giải pháp về Marketing – Targeting và Retargeting. Trong tương lai gần, đối tác có thể thực hiện những giải pháp quảng cáo như hiển thị banner, gửi notification,…

Cùng với sự phổ biến ngày càng tăng của Super App, các Mini App liên tục ra đời đã làm thay đổi toàn cảnh “bức tranh lớn” về phát triển ứng dụng hiện nay. Đồng thời, chúng còn thay đổi hành vi của người dùng. Có thể trong tương lai, tải xuống và đăng ký/ đăng nhập sẽ không còn những thao tác đầu tiên mà người dùng sẽ làm khi tiếp cận với một ứng dụng mới nữa.

Dù bạn nhìn nhận nó theo cách nào, thì ở cấp độ doanh nghiệp, Super App và Mini App là câu chuyện không thể nào “ngó lơ” được nữa, nhất là với tốc độ phát triển của Super App ở châu Á.

Đăng bởi

Siêu ứng dụng là gì? Việt Nam có phải là “vùng đất hứa” để phát triển siêu ứng dụng không?

siêu ứng dụng - super app việt nam - nguyễn trung kiên - tiki - itviec

Một thuật ngữ công nghệ mới đang nổi lên từ phương Đông – “Siêu ứng dụng”, hay còn gọi là Super App. Hầu hết tất cả những người sinh sống ở châu Á, và sở hữu một chiếc điện thoại thông minh, đều dành phần lớn thời gian sử dụng những ứng dụng này. Vậy chính xác thì siêu ứng dụng là gì và Việt Nam có đang sở hữu một siêu ứng dụng mang tính cách mạng hay không?

Để có thể tìm hiểu thêm về tình hình phát triển Siêu ứng dụng ở Việt Nam cũng như các nước trên thế giới, ITviec đã có buổi chia sẻ thông tin đầy bổ ích với anh Nguyễn Trung Kiên – Director of Engineering tại TIKI.

Siêu ứng dụng là gì?

1. Định nghĩa

Hiện nay, chưa có một khái niệm chung cụ thể cho siêu ứng dụng là gì nên ITviec sẽ mượn định nghĩa do Phó Chủ tịch Kỹ thuật Cấp cao của GoJek – Sidu Ponnappa, đã đưa ra: “Siêu ứng dụng (Super App) là một ứng dụng chứa nhiều app con (Mini Apps), và là một hệ điều hành điều phối những app con này.”

Hay như nhà sáng lập BlackBerry – Mike Lazaridis, đã định nghĩa: “Siêu ứng dụng là một hệ sinh thái khép kín gồm nhiều ứng dụng mà mọi người sẽ sử dụng hàng ngày vì chúng mang lại trải nghiệm liền mạch, tích hợp, theo ngữ cảnh và hiệu quả.”

Còn theo anh Kiên, để trở thành một “siêu ứng dụng”, ứng dụng đó cần phải đáp ứng hai điều kiện:

  1. Số lượng người dùng phải lớn. Không có một số lượng người dùng cụ thể nào được xét làm quy chuẩn chung mà phải tùy thuộc vào ngành nghề, hoặc công ty, và tập người dùng mà ứng dụng đó muốn hướng tới. Điều quan trọng phải đảm bảo là siêu ứng dụng làm ra phải giải quyết được bài toán của người dùng và được họ chọn sử dụng.
  2. Số lượng tính năng/ mini-apps trong một siêu ứng dụng phải lớn, có thể lên đến hàng nghìn, hàng triệu ứng dụng con.

Dựa trên khái niệm trên, hiện nay trên thị trường có 2 hướng tiếp cận phổ biến khi phát triển:

  1. Hướng tiếp cận 1: Đội ngũ phát triển trong nội bộ công ty  xây dựng nhiều tính năng trong một ứng dụng để phục vụ người dùng. Ví dụ như ứng dụng MoMo, Grab, GoJek, hay website dịch vụ Yahoo!,…
siêu ứng dụng - super app - momo
Ứng dụng MoMo. Nguồn: @MoMo
  1. Hướng tiếp cận 2: Chuyển đổi thành nền tảng cung cấp API để cộng đồng bên ngoài có thể phát triển ứng dụng của họ trên nền tảng này. Ví dụ như ứng dụng WeChat. Hiện nay ở Việt Nam thì chưa có ứng dụng nào đi theo hướng tiếp cận tương tự.
siêu ứng dụng - super app - wechat
Hệ sinh thái của siêu ứng dụng WeChat. Nguồn: @WeChat Wiki

“Dù là theo hướng tiếp cận nào, nhà phát triển siêu ứng dụng cũng cần phải xác định được phương pháp mình đưa ra có giải được bài toán của khách hàng, người dùng hay không”, anh Kiên khẳng định.

Một phần mềm muốn trở thành một siêu ứng dụng thì phải đi từ dưới lên, không có con đường tắt. Có nghĩa, phần mềm đó cần phải đi theo chiến lược phát triển như sau:

  1. Phát triển một tính năng chủ đạo (core feature) để xây dựng tập người dùng đủ lớn, tần suất sử dụng cao.
  2. Sau đó, nghiên cứu hành vi người dùng kỹ càng, hiểu rằng tập người dùng còn có những vấn đề nào, nhu cầu gì mà mình có thể giải quyết giúp họ.
  3. Sau khi đã thu thập đầy đủ thông tin của người dùng thì mới có thể phát triển thành một siêu ứng dụng hữu ích mà cộng đồng có thể tin tưởng và chọn sử dụng.

Thoạt nghe, đây là một chiến lược dễ dàng. Nhưng để xây dựng được một ứng dụng, phục vụ một tập người dùng nhỏ trong xã hội thôi đã là một bài toán vô cùng phức tạp với nhà phát triển rồi. Vậy thì để phát triển thành một siêu ứng dụng, các doanh nghiệp phải có chiến lược tính bằng 5 năm, thậm chí 10 năm, không đơn thuần là chỉ vài tháng hoặc vài năm mà có thể thành công được.

Ta có thể thấy ví dụ từ Grab – thành lập vào năm 2012 chỉ với tính năng đặt xe taxi online. Mãi đến năm 2015, Grab mới cho ra mắt GrabExpress (Grab Giao hàng). Đến năm 2016, GrabPay và GrabFood ra đời. Đến năm 2019, Grab mới được “công nhận” là một trong những siêu ứng dụng đang phát triển mạnh mẽ ở Đông Nam Á. Và đến nay, thành công của Grab trong lĩnh vực phần mềm là không thể chối cãi. Để đạt được đến thành tựu này, hành trình phát triển của Grab cũng ngót nghét mất 10 năm.

siêu ứng dụng - super app - grab
Một hệ sinh thái liền mạch của Grab. Nguồn: @e27.co

2. Những ai nên sử dụng

Đối với siêu ứng dụng theo hướng tiếp cận 1, người được hưởng lợi nhiều nhất đương nhiên là người dùng. Họ sẽ được tiếp cận với nhiều tính năng hơn, giải quyết được nhiều nhu cầu trong cuộc sống hơn (thanh toán, dịch vụ, mua sắm,…) mà không cần phải liên kết với nhiều bên khác nhau.

Đối với siêu ứng dụng hướng tiếp cận 2, đối tượng nên sử dụng sẽ là những nhà phát triển ứng dụng (developer). Khi nhu cầu phát triển phần mềm của thị trường tăng cao, đặc biệt là các công ty startup muốn phát triển phần mềm nhưng nguồn lực về công nghệ, chi phí, thời gian, tập người dùng lại có hạn thì các nền tảng mở theo hướng tiếp cận 2 lại chính là “cứu cánh” của họ.

Nếu bạn là một startup đang phân vân nên tự tạo phần mềm riêng lẻ hay tận dụng nền tảng mở của siêu ứng dụng thì bạn có thể cân nhắc theo các yếu tố như sau:

Tiêu chíỨng dụng riêng lẻ (Multiple Apps)Siêu ứng dụng (Super App)
Thời gian phát triểnSử dụng nhiều thời gian để phát triển ứng dụng. Ví dụ, phải phát triển cho cả nền tảng iOS và Android.Tiết kiệm thời gian do chỉ cần phát triển trên nền tảng mở, còn lại sẽ được siêu ứng dụng tự động hóa.
Chi phíBạn đẩy lên Google Play hay Apple Store thì bạn sẽ tốn chi phí để thu hút người dùng.Tiết kiệm được chi phí này.
Công nghệXây dựng từ dưới lên.Được tiếp cận với hệ thống hạ tầng (infrastructure) của nền tảng, tận dụng những tính năng sẵn có.
Hỗ trợKhông có người hỗ trợ.Có cộng đồng tư vấn và hỗ trợ.
Tập người dùngPhải tự tạo tập người dùng.Có sẵn tập người dùng lớn.

Xu hướng phát triển siêu ứng dụng trên thế giới và ở Việt Nam

Vào năm 2015, ứng dụng nhắn tin WeChat của Trung Quốc ra mắt một nền tảng mở cho phép các nhà phát triển có thể phát triển ứng dụng một cách dễ dàng. Từ đó đến nay, đã có hơn 1 triệu ứng dụng mới được phát triển trên nền tảng này. Và WeChat cũng chính là một trong những siêu ứng dụng đầu tiên “mở đường” cho một kỷ nguyên hoàn toàn mới.

Từ sau thành công của WeChat, AliPay ở Trung Quốc, Hàn Quốc với phần mềm Naver, Singapore sở hữu Grab và Indonesia với GoJek,… cũng trở thành những siêu ứng dụng thành công “đại diện” cho quốc gia sở tại.

siêu ứng dụng - super app - naver
Naver – Siêu ứng dụng “đại diện” cho Hàn Quốc. Nguồn: @Naver

Nhìn ở một bức tranh toàn cảnh, anh Kiên nhận định,

Xu hướng siêu ứng dụng phát triển mạnh mẽ ở những quốc gia phương Đông hơn là ở quốc gia phương Tây. Xu hướng này có thể đến từ 3 nguyên nhân chính:

1. Thói quen sử dụng của người dùng: Đối với những người phương Tây, để quyết định xem có sử dụng một ứng dụng hay không, họ sẽ dành nhiều thời gian tìm hiểu về những thông tin xung quanh ứng dụng đó bằng cách hỏi bạn bè, hỏi người thân về trải nghiệm phần mềm sau đó mới đưa ra quyết định. Tuy nhiên, đối với người phương Đông, họ sẵn sàng và dễ dàng tiếp nhận một ứng dụng mới hơn. Chính vì thế, khi một siêu ứng dụng ra đời với nhiều ứng dụng nhỏ bên trong, họ luôn hào hứng trải nghiệm và dùng thử xem có hợp hay không.

2. Lịch sử phát triển: Do siêu ứng dụng đầu tiên được ra đời ở Trung Quốc, châu Á nên xu hướng này trở nên thịnh hành hơn ở phương Đông và tạo tiền đề cho các nước phương Đông phát triển theo. Nếu chúng xuất hiện lần đầu tiên được phổ biến ở các nước phương Tây thì có thể mọi chuyện đã khác.

3. Tính cạnh tranh: Ở phương Tây đã tồn tại sẵn những “chợ ứng dụng” vốn dĩ đã rất phổ biến như AppStore của Apple hay Google Play của Google nên khi siêu ứng dụng ra mắt ở đây thì có thể khó cạnh tranh lại với những người “khổng lồ” này.

appstore
AppStore là một “chợ ứng dụng” khổng lồ mà khó ai có thể cạnh tranh lại.

Khi xét về Việt Nam, câu hỏi lớn đặt ra là Việt Nam có thể có một “siêu ứng dụng” đại diện cho quốc gia hay không? Câu trả lời là có. Để xây dựng một siêu ứng dụng thành công, anh Kiên chia sẻ về 2 yếu tố lớn cần cân nhắc:

1. Nhu cầu của khách hàng: Nếu thị trường không có kỳ vọng, không có nhu cầu thì ứng dụng làm ra cũng sẽ chẳng có ai quan tâm và ứng dụng đó cũng không mang lại lợi ích nhiều cho người dùng.

2. Hệ sinh thái của vùng, quốc gia đó như thế nào: Xét về hệ sinh thái người dùng thì tập người dùng Việt Nam có nhiều điểm tương đồng với Trung Quốc nên Việt Nam sẽ có nhiều kỳ vọng để phát triển về lĩnh vực này.

Và bằng chứng rõ ràng là Việt Nam đã có những siêu ứng dụng điển hình theo hướng tiếp cận 1 là MoMo, Zalo,… Còn để phát triển theo hướng tiếp cận thứ 2, người phát triển ứng dụng còn phải cân nhắc thêm 2 yếu tố:

3. Yếu tố công nghệ. Anh Kiên chia sẻ thêm:

Nền tảng ứng dụng phải đủ tốt để có thể tích hợp bên thứ 3. “Làm thế nào để xây dựng một nền tảng mở cả về Frontend và Backend? Và đáp ứng được các chuẩn về API?” là những câu hỏi mà nhà phát triển nên suy nghĩ.

Bình thường, khi ta muốn thay đổi hoặc cập nhật một tính năng trên ứng dụng, ta đã phải tác động Frontend và Backend rất nhiều. Vậy thì, khi ta mở nền tảng cho nhiều bên thứ 3 cùng tham gia, khối lượng công việc sẽ còn tăng lên nhiều hơn nữa, phục vụ nhiều use case hơn, không chỉ “gói gọn” trong những tính năng nhất định nữa rồi.

Ở Việt Nam hiện tại thì số lượng công ty đi theo hướng tiếp cận thứ 2, có nền tảng mở vững chắc như vậy không nhiều. Đồng thời, Việt Nam đang trong quá trình chuyển đổi số nên những đột phá về mặt công nghệ sẽ còn bùng nổ hơn nữa trong tương lai. Chính vì thế, đây là cơ hội rõ ràng cho những công ty công nghệ trên thị trường Việt Nam để xây dựng một siêu ứng dụng theo hướng tiếp cận 2.

4. Nền tảng có dễ sử dụng hay không: Mục đích siêu ứng dụng ra đời là nhằm tối ưu hóa trải nghiệm phát triển ứng dụng – tiết kiệm thời gian và công sức của developer hơn. Vậy thì, dễ hiểu, dễ phát triển sản phẩm và thân thiện với lập trình viên phải là một tiêu chí cần phải có. Ví dụ, nếu lập trình viên cần phải tốn 1-2 tháng để làm quen với nền tảng mở này thì hiển nhiên, họ sẽ không chọn phát triển ứng dụng trên nền tảng này nữa mà sẽ chọn tự phát triển ứng dụng riêng lẻ.

Kết luận, nhìn chung Việt Nam hoàn toàn đáp ứng được các yếu tố về mặt hệ sinh thái và nhu cầu của thị trường để phát triển các siêu ứng dụng tốt và thành công. Tuy nhiên, đối với những nhà phát triển đi theo hướng tiếp cận 2, họ sẽ cần cân nhắc thêm những yếu tố nội tại khác trong chính cách phát triển phần mềm. Khi đáp ứng được 2 yếu tố nêu trên, siêu ứng dụng đó sẽ trở thành một nền tảng mở thay đổi được cách các nhà phát triển phát triển ứng dụng của họ.

Anh Kiên chia sẻ thêm về những dự định của TIKI khi phát triển Tini App – một siêu ứng dụng phát triển theo hướng tiếp cận 2:

Bản thân TIKI luôn muốn xây dựng một nền tảng hỗ trợ doanh nghiệp Việt Nam về mặt bán hàng trong việc giảm tải chi phí vận hành, thực hiện các hoạt động thanh toán hóa đơn, giao hàng để các doanh nghiệp có thể tập trung phát triển sản phẩm thật tốt. Và thế là TIKI cho ra đời Tini App.

Khi phát triển ứng dụng trên nền tảng Tini App, các nhà phát triển có thể tận dụng được nguồn khách hàng lớn mà TIKI đã xây dựng trong suốt nhiều năm qua cũng như tận dụng được những tính năng sẵn có vô cùng tiện lợi như Giao hàng nhanh, Giao hàng theo giờ, TIKI Pay,…

TIKI hy vọng có thể xây dựng được một nền tảng phát triển ứng dụng mở dễ sử dụng mà kể cả fresher, junior developer đều có thể phát triển phần mềm của riêng họ thật nhanh chóng. Với cuộc thi TIKI Hackathon đang diễn ra hiện nay, chúng tôi mong sẽ nhìn thấy được những sản phẩm thật ấn tượng, được xây dựng trên Tini App, đến từ các đội thi.

Siêu ứng dụng – Sân chơi mới cho lập trình viên

Trong mục này, anh Kiên chỉ nhận định cơ hội việc làm và những tác động nghề nghiệp của lập trình viên do sự xuất hiện của siêu ứng dụng theo hướng tiếp cận thứ 2. Vì với cách tiếp cận 1, cách phát triển ứng dụng, tính năng đã được sắp xếp bởi team nội bộ từ trước, không có tác động nhiều đến cách lập trình viên làm việc.

siêu ứng dụng - super app việt nam - nguyễn trung kiên - director of software engineering tiki - itviec
Chia sẻ của anh Nguyễn Trung Kiên về “sân chơi” mà siêu ứng dụng mở ra cho lập trình viên.

Với siêu ứng dụng có hướng tiếp cận  2, lập trình viên phát triển ứng dụng sẽ được tiết kiệm thời gian và sức lực hơn.

Ví dụ, nếu như bình thường, họ cần phải phát triển ứng dụng trên 3 nền tảng: iOS – Android – Website thì với sự xuất hiện của siêu ứng dụng, họ chỉ cần phát triển trên một nền tảng mở đó thôi. Sau đó, siêu ứng dụng đó sẽ tự động đẩy ứng dụng con lên các nền tảng khác nhau. Đồng thời, về mặt Backend, các ứng dụng này đã có sẵn những tính năng mà lập trình viên có thể tận dụng như tính năng nhắn tin in-app, tính năng thanh toán,…

Có thể nói, khi siêu ứng dụng ra đời, các lập trình viên sẽ có một nền tảng giúp họ “tự động hóa” tốt hơn với các nguồn lực có sẵn. Vốn dĩ, xu hướng phát triển phần mềm này cũng được xem là một quá trình phát triển tự nhiên do công việc chính của lập trình viên là giải quyết các vấn đề liên quan đến tự động hóa. So với 30-40 năm trước thì cách phát triển ứng dụng hiện nay đã có sự khác biệt lớn, công việc nhiều hơn, tự do và sáng tạo hơn.

Khi ta tiết kiệm được thời gian viết code và rút ngắn thời gian phát triển phần mềm, ta sẽ xây dựng được nhiều ứng dụng hơn. Chính vì thế, ta có thể kỳ vọng rằng các siêu ứng dụng sẽ tạo nhiều cơ hội việc làm cho lập trình viên hoặc thay đổi cách mà lập trình viên phát triển ứng dụng theo chiều hướng tích cực hơn.

Thông tin về anh Nguyễn Trung Kiên:

Anh Nguyễn Trung Kiên đã có hơn 12 năm kinh nghiệm trong lĩnh vực phát triển phần mềm. Hiện tại, anh đang công tác tại TIKI gần 2 năm với vai trò là Director of Engineering. Anh chịu trách nhiệm trong việc xây dựng nền tảng Tini App.

Trước khi gia nhập TIKI, anh đã có gần 2 năm làm việc tại Trusting Social với vị trí Technical Lead và 3 năm làm Lead Software Engineer tại Trust Social Global. Ngoài ra, anh cũng đã từng đảm nhận nhiều vị trí khác nhau như Backend Engineer, Server Developer, Technical Leader,…

Đăng bởi

Progressive Web App và tương lai trong lĩnh vực E-commerce

Sutunam là công ty công nghệ của Pháp với hơn 40 nhân viên làm việc tại Việt Nam bên cạnh trụ sở chính tại Lyon, Pháp. Với hơn 10 năm kinh nghiệm trong lĩnh vực Open Source, Sutunam nổi bật với thế mạnh chuyên môn ở mảng Ecommerce. Công ty làm việc với đa dạng các dịch vụ xoay xung quanh website Ecommerce: từ hoạch định chiến lược kinh doanh số, thiết kế trải nghiệm trên website và mobile app, cho đến các dịch vụ về hạ tầng máy chủ. Sutunam hoạt động như một nhà tư vấn dự án số cho khách hàng, trong đó Progressive Web App là cũng là một hướng đi mà công ty chú trọng.

progressive web app
Progressive Web App và tương lai của nó trong lĩnh vực E-commerce sẽ như thế nào?

Progressive Web App (PWA) là gì?

PWA (progressive web apps) là dạng web app được xây dựng dựa trên các công nghệ của website, nhưng mang lại trải nghiệm tương tự như Native App. Nhờ vào tính năng của service worker, manifest và https, PWA có thể hoạt động offline ngay cả khi không có mạng. Khi người dùng vào website PWA thông qua trình duyệt trên mobile, họ có thể cài đặt website PWA trong điện thoại. Sau đó, họ có thể truy cập trở lại website thông qua icon ngay trên điện thoại, tương tự như khi họ click vào một icon của native app để truy cập phần mềm vậy.

PWA là gì
Progressive Web App là gì?

Vậy PWA có gì khác so với một Native App?

Trải nghiệm của người dùng

Thông thường, quá trình mua hàng của người dùng sẽ đi từ việc tìm kiếm bằng phiên bản mobile website – responsive thông thường của phiên bản đó. Khi truy cập, bạn sẽ nhận được gợi ý tải app để vào web nhanh hơn chẳng hạn. Sau đó, bạn sẽ được điều hướng sang App Store hay Google Play, iOS Store, để download và cài đặt app vào máy. Cuối cùng, bạn sẽ tìm kiếm lại những thứ mình cần trong app đó một lần nữa và tiến hành thanh toán.

Đối với những người lần đầu tiên sử dụng website, hoặc ít mua hàng của doanh nghiệp đó, đây là một quy trình khá rắc rối. Theo thống kê, có gần 50% khách hàng lần đầu tiên đến với website rất dễ dàng bỏ qua giai đoạn gợi ý tải app về mobile. Ngoài ra, người dùng cũng có tâm lý ngại tải app mới để tăng dung lượng của điện thoại. Vậy phải làm gì để tăng trải nghiệm người dùng trên mobile responsive website, để giúp cho việc thanh toán trở nên dễ dàng và tiết kiệm thời gian hơn?

user flow native app
User flow native app

Progressive Web App chính là giải pháp.

Trải nghiệm người dùng với PWA sẽ đơn giản hơn rất nhiều. Khách hàng chỉ việc tìm kiếm trên mobile website và thanh toán đơn hàng, cuối cùng nhấn vào Add to homescreen để tải website về dưới dạng icon. Vậy là lần sau khách hàng chỉ cần nhấn vào icon để trở lại với website. Trải nghiệm này sẽ tương tự như khi người dùng app trong điện thoại. Với người dùng, đây là một giải pháp cực kỳ tiện dụng vì vẫn được sử dụng mobile website rất nhanh chóng mà không cần tải app về.

user flow pwa
User flow PWA

Release Cycle

Với PWA, release cycle cũng đơn giản hơn. Với các lập trình viên mobile, mỗi lần có update hay tính năng mới, họ sẽ phải cập nhật phiên bản mobile app. Mỗi lần update như thế, các dev sẽ phải đẩy lên lại các chợ ứng dụng, quá trình như thế sẽ mất khá nhiều thời gian và công sức hơn so với PWA cập nhật trang web.

Với PWA, bạn chỉ việc release bản update một lần và refresh cache trên website. Tính năng đồng bộ ngay cả khi người dùng không mở PWA cũng được phát triển. Twitter được biết đến là một trong những đơn vị tiên phong trong việc sử dụng PWA. App size trên Android app của Twitter chiếm dụng 24mb, iOS app chiếm 214mb dung lượng máy, trong khi đó với PWA chỉ tốn 600 kb cho điện thoại. Đối với những khách hàng không muốn tốn quá nhiều dung lượng điện thoại hay không muốn cài đặt thêm các app khác gây tốn bộ nhớ máy thì đây là một lựa chọn tuyệt vời.

Chi phí vận hành và duy trì

Chi phí doanh nghiệp và lập trình cũng là một đề cần lưu tâm cho một dự án công nghệ. Với một doanh nghiệp e-commerce, xây dựng website cùng IOS + Android app sẽ yêu cầu chi phí vận hành lớn với đội nhân sự bao gồm front-end, back-end, IOS developer và Android developer.

Trong khi đó với PWA, với bản chất web-app dựa trên nền tảng công nghệ website, đội ngũ sẽ rút ngắn chỉ cần frontend và backend. Tuy việc thực hiện ứng dụng PWAs đòi hỏi số lượng nhân lực ít hơn, nhưng lại cần nhiều kỹ năng hơn. Đối với đội ngũ front-end đang quen thuộc với JQuery và HTML từ cách phát triển truyền thống backend-driven website, bây giờ sẽ cần học hỏi và tìm hiểu nhiều dạng kiến thức hơn để thực hiện dự án, và đội ngũ lập trình website truyền thống sẽ phải hiểu thêm về trải nghiệm người dùng trên mobile app.

PWA team

Search Engine Optimization

Ưu điểm của PWA là ta có thể tối ưu hóa SEO cho nó. Vì vẫn là server side rendering nên ta vẫn có thể tối ưu hóa việc hiển thị trên Google với các kỹ thuật về technical SEO.

Đối với native app, ta khó có thể tối ưu hóa nội dung SEO mà chỉ có thể giới thiệu trên website, dẫn link tới chợ ứng dụng, hoặc trả tiền quảng cáo trên các chợ ứng dụng. Ngoài ra, PWA được tạo ra để tối ưu hóa trải nghiệm người dùng trên mobile, nhanh hơn, tiện dụng hơn, về thiết kế nó vẫn là mobile-first design và tuân thủ các nguyên tắc thiết kế được ưu ái của các công cụ tìm kiếm như Google, Bing.

progressive web app
PWA giúp nâng cao trải nghiệm người dùng với mobile website

Progressive Web App và Native App có đang trong thế “đối đầu” nhau?

Với những ưu thế nổi trội của PWA – là sự kết hợp của website và native app, nhiều người đã đặt các câu hỏi và so sánh PWA với Native App. Nhưng sự thật thì hai nền tảng này hoàn toàn không nằm trong thế đối đầu với nhau. Ít nhất ở thời điểm hiện tại.

Số lượng người dùng di động trên thế giới là khoảng 3 tỷ người, thị trường hoàn toàn đủ lớn để PWA và Native App cùng phát triển. Bên cạnh đó, PWA giúp chuyển hóa first-time user (người mua lần đầu) khá tốt, nhằm giúp họ làm quen với nhãn hàng và dần trở thành khách hàng trung thành. Từ đó, doanh nghiệp dễ dàng thu hút họ hơn trong việc tải và sử dụng native app của mình. Vì vậy, có thể thấy, ở thời điểm hiện tại PWA đang hỗ trợ cho Native App, chứ không hề ở thế đối đầu nhau.

Bên cạnh đó, PWA hiện tại vẫn đang trong quá trình phát triển nên vẫn còn khá mới mẻ. Đối với những doanh nghiệp có tiềm lực tài chính tốt, họ sẽ lựa chọn sử dụng cả hai vì không ai muốn mất khách hàng cả, doanh nghiệp nào cũng sẽ muốn tối ưu hóa lợi nhuận của mình.

Với các doanh nghiệp vừa và nhỏ, chi phí duy trì IOS app và Android App sẽ khá cao, nhất là với các Ecommerce app. PWA có thể chính là giải pháp phù hợp cho họ. Đặc biệt, đối với các doanh nghiệp có số lượng tải app của họ quá thấp, họ sẽ tìm cách để tối ưu hóa chi phí, tìm cách nào tiết kiệm hơn so với việc bảo trì Native App và cũng tìm đến với PWA.

Tương lai của Progressive Web App ở thị trường châu Á sẽ ra sao?

Châu Á là thị trường tiềm năng với lượng dân số đông, bối cảnh thị trường công nghệ độc đáo. Vì thế, tại châu Á, các doanh nghiệp sẽ đối mặt cả những vấn đề mà thế giới gặp phải, cũng như chưa thị trường nào từng trải qua. Nếu lựa chọn một nơi có một bước nhảy vọt và tiên phong về công nghệ, những báo cáo thị trường luôn chọn châu Á là nơi đi đầu trong tất cả những xu hướng đó.

Bối cảnh thị trường châu Á có 4 điểm chính:

  • Mức độ sử dụng di động rất cao
  • Việc sử dụng di động để mua hàng và truy cập mạng xã hội rất phổ biến
  • Dễ dàng chấp nhận công nghệ mới
  • Các công ty công nghệ nhanh chóng mở rộng cơ hội sáng tạo.

Mức độ sử dụng di động ở châu Á đặc biệt cao, nhiều hơn hẳn so với laptop, TV hay các hình thức giải trí khác. Khả năng tiếp cận công nghệ của gen Z rất nhạy bén. Vì là những người trưởng thành hoàn toàn trong thời kỳ công nghệ nên việc họ tương tác trên mạng xã hội rất cao, hình thành nên những ngành nghề hoàn toàn mới như content creator, influencer, streamer. Hành vi trên mạng xã hội rõ ràng cũng đã thay đổi rất nhiều.

Mức độ sử dụng di động ở châu Á rất cao, nhiều hơn hẳn so với laptop, TV hay các hình thức giải trí khác. Khả năng tiếp cận công nghệ của gen Z rất nhạy bén. Vì là những người trưởng thành hoàn toàn trong thời kỳ công nghệ nên việc họ tương tác trên mạng xã hội rất cao, hình thành nên những ngành nghề hoàn toàn mới như content creator, influencer, streamer. Hành vi trên mạng xã hội rõ ràng cũng đã thay đổi rất nhiều.

progressive web app
Châu Á đã, đang và sẽ tiếp tục là thị trường “màu mỡ” của PWA

Về khả năng thích ứng với công nghệ mới ở châu Á gần như cao hơn hẳn so với các khu vực khác trên thế giới. Một phần của vấn đề này liên quan đến bối cảnh văn hóa độc đáo của khu vực này. Đây là môi trường khá non trẻ, các công ty đa phần đều thuộc first generation (thế hệ đầu tiên) nên họ sẽ không có lịch sử 200, 300 năm hay những yếu tố lịch sử tương tự. Từ đó, các công ty thường sẽ mở rộng và dễ dàng đón nhận xu hướng hơn và có nhiều cơ hội sáng tạo hơn.

Ở châu Á cũng sẽ gặp những vấn đề mà không có châu lục nào gặp phải (như không có quốc gia nào trên thế giới có đến hơn 1 tỷ dân như Trung Quốc, Ấn Độ) nên đây cũng là động lực để đáp ứng nhu cầu thị trường đa dạng để các doanh nghiệp công nghệ tiếp tục phát triển nhiều hơn trong tương lai. Bên cạnh đó, ta cũng có thể thấy sự khác biệt về thị trường công nghệ phát triển cao (Nhật Bản – Hàn Quốc) và đang phát triển (Đông Nam Á), tạo ra một bối cảnh đặc biệt thú vị và khó dự đoán tại Châu Á

Không có một “”châu Á đồng nhất””, những công ty công nghệ lâu đời ở Hàn Quốc và Nhật Bản nên sẽ mang đến cho các lập trình viên những cơ hội công việc ổn định và môi trường phát triển chắc chắn hơn. Trong khi đó, Trung Quốc, Ấn Độ và các quốc gia khu vực Đông Nam Á sẽ phải đối mặt với những khó khăn khác nhau, nên đây cũng là cơ hội để các công ty có cơ hội tiếp xúc với PWA nói riêng và các công nghệ mới nói chung.

Từ bối cảnh công nghệ của châu Á, ta có khẳng đinh về châu Á là một mobile-first region, châu lục được thống trị bởi nhu cầu sử dụng di động. Tối ưu hóa trên di động từ đó cũng sẽ mang lại cạnh tranh màu mỡ cho doanh nghiệp.

Một đặc tính thị trường châu Á ta có thể là sự thống trị của Marketplace – những trang web trung gian, các sàn thương mại điện tử, từ Taobao, Lazada, Shopee, Tiki,… Vậy nên để các doanh nghiệp nhỏ và vừa, những doanh nghiệp không phải là Marketplace muốn tồn tại được, họ bắt buộc phải sáng tạo nhiều hơn, tiến bộ nhiều hơn, tìm những đường ngách để đi, tăng cường các kế hoạch branding cho doanh nghiệp trên tinh thần tập trung tối ưu mobile. PWA ở đây sẽ là một lựa chọn đổi mới có hiệu quả dài lâu cho các doanh nghiệp này.

PWAs trên ecommerce – bước đầu tiếp cận Headless Commerce

Kể cả khi người dùng đến với cửa hàng thực tế mua hàng, họ vẫn sử dụng di động để xem review của người mua trước, so sánh với các cửa hàng khác tương đương để đi đến quyết định có mua sản phẩm đó hay không. Khách hàng quan tâm tới việc tiếp cận nhãn hàng ở nhiều khía cạnh hơn là chỉ mua ở cửa hàng.

Khi di động là chìa khóa để phát triển doanh số, headless commerce cũng là sự phát triển tất yếu trong e-commerce.

Headless Architecture là gì? Đó là việc phát triển tách rời phần front-end và back-end của website, thông tin sẽ được gọi thông qua hệ thống API. Headless cho phép phần front-end (giao diện) không phụ thuộc và linh hoạt hơn khi tùy chỉnh và cá nhân hóa trải nghiệm người dùng, dễ dàng hơn cho doanh nghiệp kết nối thông tin với nhiều kênh bán hàng hơn (multiple touch-point) – một trong những yếu tố nền tảng của omnichannel để tạo ra vòng tròn trải nghiệm đa điểm cho khách hàng. Từ đó tăng sale, năng lực cạnh tranh và quản lý đồng nhất cho doanh nghiệp.

Thay vì là cấu trúc backend-driven truyền thống, xu hướng headless hiện tại sẽ phân tách cấu trúc frontend và backend. Backend sẽ xử lý phần logic, frontend sẽ độc lập kết nối với rất nhiều selling point để tạo ra lợi thế cạnh tranh và tăng sale cho doanh nghiệp.

Với PWA, lập trình viên cũng sẽ bắt đầu phải làm quen với việc phát triển tách rời front-end và back-end, làm việc với manifest và service worker, cho phép cache các thông tin và chức năng đẩy thông báo (push notification) tương tự như native app. Đây cũng sẽ bước đầu chuyển đổi website truyền thống trở thành cấu trúc headless.

Tuy còn khá nhiều thách thức, nhưng nếu xét tới khía cạnh thị trường và hỗ trợ công nghệ, ta có thể sự phát triển của PWAs còn tiếp tục tăng cao trong tương lai. Hi vọng bài viết sẽ đóng góp thêm một vài góc nhìn cho các bạn lập trình viên khi tiếp cận PWA.

Đăng bởi

Single Page Application là gì? Đây có phải là xu hướng lập trình Web hiện nay?

Single Page Application – SPA là thuật ngữ đã xuất hiện cách đây từ nhiều năm về trước. SPA đem đến người dùng sự trải nghiệm web tuyệt vời nhất không khác gì mobile. Chính vì vậy ngay từ khi mới ra đời, SPA đã được các chuyên gia đánh giá đây là một xu hướng lập trình web trong tương lai. Vậy điều đó có thành sự thật, Single Page Application mang đến những lợi ích như thế nào cho lập trình viên và người dùng? Tại bài viết này, hãy cùng chúng tôi đi giải đáp xem rốt cuộc Single Page Application là gì mà được ca tụng nhiều đến vậy nhé.

Single Page Application là gì? Những ưu và nhược điểm khi tạo web theo SPA

Single Page Application là gì?

Trước khi có sự xuất hiện của Single Page Application hay được viết tắt là SPA, việc lập trình web chủ yếu được thực hiện theo mô hình MVC (Model – View – Controller). Tuy nhiên, nguyên lý hoạt động của kiểu cấu trúc này chỉ tập trung ở xử lý server mà không đáp ứng được những trải nghiệm người dùng. Chính vì vậy, rất cần đến một mô hình mới có thể đáp ứng được các yêu cầu của server và client. Và đó cũng chính là lý do mà Single Page Application được ra đời.Xem thêm: dịch vụ vận chuyển hàng không là gì

SPA là một kiểu lập trình web mà ở đó người dùng có thể truy cập vào nhiều trang web con khác nhau mà không làm ảnh hưởng đến trang web gốc. Khi người dùng truy cập vào bất kỳ thành phần nào trên trang, SPA sẽ chỉ chạy nội dung của thành phần đó mà không tải lại toàn bộ trang như các web truyền thống. Các thành phần chung như header, footer, thanh menu sẽ được giữ nguyên.

SPA sẽ tập trung xử lý ở client, đẩy mạnh hơn vai trò của frontend. Frontend chính là phần mà người dùng có thể nhìn thấy và tiếp nhận request của người dùng từ đó xác định được những tính năng và dữ liệu cần thiết, sau đó mới gửi yêu cầu đến backend. Backend nhận yêu cầu và trả về dữ liệu ra bên ngoài website. Từ đó làm tăng trải nghiệm người dùng, giúp người dùng có cảm giác như đang sử dụng trên mobile chứ không phải là một trang web.

Ví dụ một số mẫu website bạn vẫn sử dụng hàng ngày được lập trình theo kiểu SPA như Facebook, Youtube, Twitter, Shopee,…

Rất nhiều trang web nổi tiếng được lập trình theo SPA như Youtube, Facebook, Twitter,…

Web SPA hoạt động khác gì một trang web truyền thống?

Có hai đặc điểm nổi bật nhất tạo nên sự khác biệt giữa trang web sử dụng SPA và trang web truyền thống là:

  • Web SPA có sự phân chia rõ ràng giữa backend và frontend
  • Web SPA đẩy mạnh xử lý ở frontend

Sự phân chia rõ ràng giữa backend và frontend

Nếu lập trình theo kiểu truyền thống sẽ khó phân chia được ranh giới cụ thể giữa frontend và backend. Chẳng hạn như Laravel Framework, bạn vẫn có thể thực hiện code PHP trong phần View. Tuy nhiên đối với SPA lại hoàn toàn khác, backend và frontend được tách bạch tới nỗi chúng có thể nằm ở 2 dự án khác nhau mặc dù chúng sinh ra là để dành cho nhau. Việc trao đổi dữ liệu giữa frontend, backend trong SPA thường qua các Restful API và định dạng của chúng  thường là JSON.

Cách hoạt động của frontend và backend theo SPA có thể được mô tả như sau:

  • Khi người dùng truy cập trang web, frontend sẽ tiếp nhận request chứ không phải backend. Hiểu đơn giản, web SPA thực hiện routing ở frontend chứ không phải backend như kiểu lập trình truyền thống.
  • Sau khi tiếp nhận request, frontend sẽ xác nhận người dùng muốn sử dụng tính năng nào và cần những dữ liệu gì sau đó mới gửi request tới backend. Cuối cùng, backend sẽ thực hiện yêu cầu và trả về những dữ liệu mong muốn.
  • Frontend nhận dữ liệu từ backend và dựa vào dữ liệu này để render ra nội dung trang web một cách hoàn chỉnh.

SPA có sự tách bạch rõ ràng giữa Frontend và Backend

Web SPA đẩy mạnh xử lý về frontend

Đối với những trang web được lập trình theo kiểu SPA, vai trò của frontend sẽ được đẩy mạnh hơn. Frontend sẽ đảm nhiệm hoàn toàn việc render giao diện và xử lý những thay đổi, trong khi đó, backend chỉ cần ngồi chờ xem frontend có yêu cầu gì thì trả về cái đó. Web SPA yêu cầu xử phức tạp ở frontend, vì vậy mà nó sẽ áp dụng một framework hay thư viện nào đó về SPA để xử lý. Dựa vào framework hay thư viện này mà các nhà lập trình viên dễ dàng hơn trong việc phát triển một web SPA.Xem thêm: vận chuyển hàng không quốc tế

Ưu và nhược điểm khi sử dụng Single Page Application

Ưu điểm của web SPA

Single Page Application mang lại rất nhiều những điểm nổi bật như:

  • Hỗ trợ target dễ dàng: Mọi thông tin sẽ được đặt trên cùng một trang, đây là phương án hiệu quả đối với SEO bởi nó sẽ hướng đến bộ từ khóa. Với Single Page Application, nội dung sẽ được dàn trải trong một trang do đó có thể người dùng phải kéo đến những dòng cuối cùng mới tìm thấy được. Do vậy, hãy suy nghĩ cẩn thận để đưa ra được những nội dung phù hợp nhất, hấp dẫn người đọc nhé.
  • Độ tin cậy của SPA: đối với SPA, đường link đóng vai trò quan trọng, nó quyết định xem trang web của bạn đang nằm ở thứ hạng bao nhiêu. Những link trỏ tới sẽ đều di chuyển đến trang chủ của bạn, do vậy độ tin cậy của SPA vô cùng cao.
  • Thích hợp cho các dòng điện thoại: Single Page Application trang web của bạn sẽ được load nhanh hơn rất nhiều khi sử dụng mobile, tránh trường hợp load lâu dẫn đến mất đi lượng khách hàng.

Nhờ có SPA trang web của bạn sẽ được load nhanh hơn rất nhiều khi sử dụng mobile

Ngoài ra còn rất nhiều những ưu điểm cho cả lập trình viên và người dùng.

Đối với lập trình viên

  • Lập trình viên sẽ không cần phải viết code HTML để render trên server mà thay vào đó việc render HTML cho request của người dùng sẽ được thực hiện bởi chính thiết bị truy cập xử lý.
  • Sự tách biệt giữa frontend và backend cho phép việc thực hiện song song giúp đẩy nhanh tiến độ xử lý.
  • Tiết kiệm băng thông do chỉ có sự chuyển giao dữ liệu giữa server và client, còn đối với các tài nguyên tĩnh thì chỉ cần tải một lần duy nhất là được.
  • Sử dụng SPA giúp tận dụng được các lợi thế từ framework của JavaScript.
  • Tận dụng code một cách dễ dàng để phát triển mobile app.

Đối với người dùng

Trang web được thiết kế theo SPA sẽ mang đến những trải nghiệm tốt hơn cho người dùng khi truy cập trang. Với mô hình này, thời gian tải trang sẽ được rút ngắn hơn, nội dung trang tập trung vào nội dung mà người dùng muốn xem. Chính vì vậy mà các trang web này trở nên linh hoạt hơn và thu hút đối với người dùng hơn.Xem thêm: vận chuyển hàng không nội địa

Một vài hạn chế của SPA

  • SPA đòi hỏi các nhà lập trình phải thông thạo các ngôn ngữ HTML, CSS, JS, ajax, es6 và có kinh nghiệm với frontend.
  • Mô hình SPA kém phù hợp với những thiết bị có hiệu năng thấp do mọi thao tác đều được xử lý trên cùng một trang web. 
  • Tốc độ tải trang lần đầu cũng kém hơn so với các trang web truyền thống.
  • Các kỹ thuật SEO nâng cao như cấu trúc Silo sẽ không thể áp dụng được.
  • Nội dung trên trang bị giới hạn do vậy nhiều vấn đề không thể chi tiết được.
  • Không phải dự án nào cũng phù hợp: SPA chỉ thích hợp sử dụng với những dự án cần maintain, dự án có định hướng phát triển lâu dài, các phần mềm dịch vụ hay những dự án tập trung nhiều vào trải nghiệm người dùng UX.

Ở thời điểm hiện tại, SPA đã là một kiểu lập trình web có chỗ đứng vững chắc và trở thành sự lựa chọn lý tưởng của nhiều dự án công nghệ mới. Tuy nhiên vẫn còn quá sớm để kết luận được sự hùng mạnh của Single Page Application trong giới lập trình tương lai. Với những chia sẻ trên, chắc hẳn đã giúp các bạn đã hiểu hơn về Single Page Application là gì cũng như các thông tin hữu ích khác về SPA. Hy vọng rằng trong tương lai, SPA sẽ càng được đổi mới và hoàn thiện hơn nữa để phù hợp với người dùng.

Đăng bởi

HP 17 i7 1355U 16/1TB 17″ Touch BH 5/24

Laptop HP 17, CPU i7 Gen 13 1355U, màn hình 17.3″ CẢM ỨNG siêu nhạy siêu to, còn bảo hành chính hãng tới 05/2024

—–

CPU Intel Core i7 Gen 13 1355U

RAM 16 GB, DDR4 3200Mhz

Ổ cứng SSD M2 1TB

Card đồ họa Intel Iris XE

Màn hình 17.3″ Touch (CẢM ỨNG)

Cổng giao tiếp HDMI, USB 3.0, LAN (RJ45), Type-C…

Ngoại hình máy đẹp keng

Còn bảo hành chính hãng tới 05/2024

Phụ kiện: sạc zin

Windows 11 Home bản quyền

—–

Giá 12TR9

—–

Máy bán ra được test kĩ càng theo quy trình

Đảm bảo tất cả linh kiện vẫn hoạt động tốt

Quý khách mua về hoàn toàn yên tâm sử dụng

—–

Công ty TNHH CNTT&VT MINH QUÂN

Địa chỉ: 48/2 Xuân Thủy P. Thảo Điền TP. Thủ Đức TPHCM

Call/Zalo/SMS: 0938507766

Đăng bởi

Anhdv Boot 2024 Premium v24.0 mới nhất

Anh dv Boot 2024 Premium v24.0 là bộ USB Boot cứu hộ tuyệt vời mới nhất, nó có tốc độ khởi động nhanh gấp 02 lần so với bản 2023. Với Anhdv Boot 2024 Premium cũng tương thích với các máy tính có phần cứng đời mới nhất hiện tại như intel Gen 12.

Anhdv Boot 2024 Premium có gì mới?

Anhdv Boot 2024 Premium v24.0 là bản có đầy đủ tính năng.

anhdvboot21pre

Vậy nó có gì mới?

  • Tốc độ khởi động nhanh hơn gấp đôi so với bản 2023.
  • Windows 10 PE 64-bit giờ đã có thể boot trên máy tính hỗ trợ UEFI chỉ có 2GB RAM.
  • Hỗ trợ phần cứng mới nhất 2024 như máy tính CPU Intel gen 11, 12.
  • Thêm Windows 10 PE 32-bit để hỗ trợ máy boot 32-bit UEFI ở bản Premium.
  • Hỗ trợ tích hợp bộ cài Windows dễ hơn trên Premium.
  • Cải thiện tốc độ khi đăng nhập chế độ Admin.
  • Các phần mềm đều được cập nhật phiên bản mới nhất.
  • Thêm phần mềm stress test cpu, gỡ mật khẩu máy tính kết nối Domain trong bản Premium.

Tính năng Anhdv Boot 2024 Premium

Tìm hiểu tính năng trong bản phát hành mới nhất của Anhdv Boot 2024 Premium.

  • Hỗ trợ ổ cứng NVME máy tính Intel Gen 11 và 12.
  • Hỗ trợ ổ cứng ở chế độ RAID, NAS.
  • Hỗ trợ Touchpad máy laptop ngon hầu hết các máy phổ biến.
  • Hỗ trợ Wifi đầy đủ hầu hết các dòng máy tính (fix ngay nếu không nhận).
  • Tích hợp bộ cài Windows để Repair.
  • Hỗ trợ UEFI 32-bit với Win10PE 32.
  • Đầy đủ phần mềm cứu hộ chuyên sâu.
  • Hỗ trợ driver VGA.
  • Hỗ trợ Share Lan, Ghost Lan.

Tải Anhdv Boot 2024 Premium

Tải về Anhdv Boot 2024 Premium v24.0 free download google drive.

Cập nhật ngày 1/1/2024 cập nhật các ứng dụng lên bản mới.

Google Drive

Tải trên Fshare

Không bấm vào nút tải được thì F5 lại trang nhé.

Nếu tải link Google Drive báo “Giới hạn” thì bạn đăng nhập tài khoản gmail là sẽ tải được. Tải xong bạn bấm chuột phải chọn Extract here để giải nén ra 1 thư mục, không mở trực tiếp.

Cach Tao Boot OK

Nên dùng phần mềm WinRAR để giải nén, nếu bị lỗi thì tải WinRAR mới nhất tại đây.

Hướng dẫn tạo USB Anhdv Boot 2024 Premium

Sau đây là video Tạo USB boot cứu hộ máy tính với Anhdv Boot 2024 và tạo luôn bộ cài đặt Windows 7/8.1/10 và 11.

Nhớ bật loa vì mình có làm hướng dẫn thu âm.

Đăng bởi

MSI GF63 i7 Gen 10 10750H 16/512 1650 15″ 144Hz

Laptop Gaming MSI GF63 màn hình 144Hz

—–

CPU Intel Core i7 Gen 10 10750H

RAM 16 GB, DDR4 3200Mhz

Ổ cứng SSD M2 512GB

Card đồ họa NVIDIA GeForce GTX 1650

Màn hình 15.6″ FHD 144Hz

Cổng giao tiếp HDMI, USB 3.0, LAN (RJ45), Type-C…

Camera, Micro đầy đủ

Pin chất lượng tốt 2, 3 tiếng

Ngoại hình máy đẹp

Phụ kiện: sạc zin

Windows 10 Home bản quyền

—–

Giá 9TR5

—–

Máy bán ra được test kĩ bằng phần mềm, thiết bị chuyên dụng

Đảm bảo tất cả linh kiện vẫn hoạt động tốt

Hỗ trợ sửa chữa/nâng cấp theo giá vốn

Quý khách mua về hoàn toàn yên tâm sử dụng

—–

Công ty TNHH CNTT&VT MINH QUÂN

Địa chỉ: 48/2 Xuân Thủy P. Thảo Điền TP. Thủ Đức TPHCM

Call/Zalo/SMS: 0938-507-766

Đăng bởi

MSI GF75 i7 10750H 8/512 GTX 1650 17″ FHD 144Hz

Laptop Gaming MSI GF75 17.3″ 144Hz

—–

CPU Intel Core i7 Gen 10 10750H

RAM 8 GB, DDR4 3200Mhz

Ổ cứng SSD M2 512GB

Card đồ họa NVIDIA GeForce GTX 1650

Màn hình 17.3″ FHD 144Hz

Cổng giao tiếp HDMI, USB 3.0, LAN (RJ45), Type-C…

Camera, Micro đầy đủ

Pin còn 100% không chai chút nào

Ngoại hình máy đẹp

FULLBOX, hộp sách đầy đủ

Phụ kiện: sạc zin

Windows 10 Home bản quyền

—–

Giá 10TR

—–

Công ty TNHH CNTT&VT MINH QUÂN

Địa chỉ: 48/2 Xuân Thủy P. Thảo Điền TP. Thủ Đức TPHCM

Đăng bởi

Backend for frontend (BFF) pattern(2)

Trong bài “Backend for frontend (BFF) pattern(1)” tôi đã nêu ra những vấn đề mà khi triển khai một hệ thống “Genneral Purpose Backend Server-Side” sẽ gặp phải.

Một giải pháp để giải quyết những vấn đề nêu trên đó là “Backend For Fontend“. Mô hình này lần đầu được mô tả bởi Sam NewMan

Kiến trúc BFF là một biến thể của API Gateway Pattern giữ cho phần xử lý dữ liệu được đặt tách biệt khỏi giao diện hoặc giảm thiểu nhất có thể . Với đề xuất một thành phần phía máy chủ đảm nhiệm cho mỗi nền tảng giao diện người dùng, mục đính để nâng cao trải nghiệm người dùng. Lớp BFF được thiết kế với nhiều Backend để đáp ứng yêu cầu của từng nền tảng giao diện khác nhau, nhờ mỗi Backend được thiết kế để đáp ứng yêu cầu riêng giúp cho trải nghiệm người dùng trở nên mượt mà, tối ưu cho từng giao diện.

Trước khi đi thiết kế một hệ thống sử dụng BFF chúng ta thử cân nhắc tới một số vấn đề sau:

  • Thứ nhất BFF sẽ làm tăng độ trễ của hệ thống có phải không ? Đúng vậy dữ liệu sẽ cần đi qua BFF và được xử lý tại đó điều này sẽ làm tăng độ trễ nhưng điều đó có thể chấp nhận được khi mà BFF sẽ tiêu thụ tài nguyên ở máy chủ nơi có tài nguyên mạnh mẽ hơn thay vì ở phía máy khách có tài nguyên giới hạn.
  • Thứ hai: Cần bao nhiều BFF cho hệ thống ?. Nhà triển khai có thể dựa vào việc phân loại nền tảng giao diện phục vụ thành các nhóm. Ví dụ: Nhà triển khai có thể xây dựng một BFF cho các giao diện mobile hoặc có thể phân chia thành hai BFF, một phục vụ cho Android, cái khác phục vụ cho IOS. Điều này dựa vào yêu cầu của các nền tảng giao diện có quá khác biết nhau không hay có thể gộp thành một nhóm.
  • Thứ ba: Vấn đề trùng lặp code trong BFF, việc có mỗi BFF cho từng giao diện sẽ không tránh khỏi việc trùng lặp code cho những logic chung. Nhưng việc này cũng không phải là một vấn đề quả đáng ngại vì chúng được đặt tại máy chủ nơi mà tài nguyên hiện nay vô cùng mạnh và cũng không quá hạn hẹp.

Kết luận lại: Sử dụng mẫu BFF không chi giúp cải thiện đáng kể trải nghiệm người dùng giao diện mà con giúp nhà triển khai dễ dàng tối ưu về hiệu năng và mở rộng khả năng hỗ trợ giao diện mà không lo lắng ảnh hưởng tới những giao diện đã được hỗ trợ trước đó.

Đăng bởi

Backend for frontend (BFF) pattern(1)

Introduction

Xuất phát từ mong muốn hỗ trợ giao diện trên nhiều nền tảng thì ở phía backend tạo ra các API genneric để dễ dàng tích hợp sau này, ở phía góc độ người triển khai thấy rằng điều đó sẽ làm tiết kiệm thời gian và giảm đi chi phí triển khai hỗ trợ nền tảng mới.

Nhưng càng phát triển thì chúng ta càng nhồi nhét nhiều thứ vào một nơi. Vì lúc này hệ thống đòi hỏi phải hỗ trợ được nhiều nền tảng hơn, mà mỗi nền tảng lại yêu cầu đặc điểm dữ liệu trả về có những yêu cầu cụ thể Ví dụ: Trên thiết bị di động không cần thiết trả về nhiều dữ liệu giống như trên nền tảng web desktop vì điều đó đơn giản là tài nguyên trên thiết bị di động không có nhiều giống như trên desktop.

Backend For Fontend pattern(BFF)

Thông thường ý tưởng của người phát triển ban đầu sẽ xuất phát sử dụng “A genneral purpose API backend”

Đối với những hệ thống được xác định từ trước với những nền tảng sẽ hỗ trợ thì cách tiếp cận này cũng sẽ thành công bởi vì

  • Thứ nhất: Tách riêng backend và đưa phần xử lý đặt tại đó làm cho phần hiển thị trở nên nhẹ và tốn ít tài nguyên hơn. Ở phía giao diện chỉ có nhiệm vụ là hiện thị dữ liệu và thu thập tương tác của người dùng.
  • Thứ hai: Tiết kiệm được thời gian và chi phí phát triển những chức năng sử dụng chung cho các nền tảng thay vì tách riêng và sẽ bị trùng lặp “hight coupling“.
  • Thứ ba: Cách tiếp cận này có thể định tuyến các yêu cầu của ứng dụng khách(client) và xử lý xuyên suốt (bảo mật, auth, cached) điều này có thể làm giảm độ trễ và tài nguyên máy chủ(server).

Tuy nhiên từng nền tảng giao diện(User Interface) thì rất khác chưa kể logic được thiết kế riêng cho từng giao diện mà không phải chỉ đơn thuần là sắp xếp và trả về dữ liệu thông thường. Như tôi đã đề cập trước đó, ví dụ như đối với thiết bị di động sẽ rất khác về kích thước màn hình hiện thị, giới hạn hiện thị, dung lượng pin, bộ nhớ. Các khác biệt sẽ diện ra thường xuyên dẫn tới người phát triển cần cập nhật thay đổi đó trong khi vẫn phải giữ không làm ảnh hưởng tới nhưng giao diện khác.

Thông thường thì người phát triển sẽ cố gắng điều chỉnh những yêu câu cụ thể từ phía giao diện bằng cách tạo ra những đoạn code đặc biệt để xử lý. Nhưng cách này làm vấn đề càng thêm nghiêm trọng hơn bởi lúc này hệ thống sẽ cần phải cân bằng cả những ưu tiên cho những yêu cầu đặc biết và những yêu cầu chung từ các giao diện. Thêm vào đó các service phía dưới cũng sẽ bị ảnh hưởng theo để đáp ứng được những logic đặc biệt.

Một vấn đề khác mà “genneral purpose backedn server-side” sẽ gặp phải đó là sẽ xảy ra hiện tượng thắt cổ trai “bottleneck” khi có quá nhiều yêu cầu trên cùng một cấu trúc hạ tầng.

Một giải pháp cho những vấn đề trên mà hiện được sử dụng bởi SoundCloud thay “genneral purpose backedn server-side” đó là Backend For Frontend(BFF)(2)