خلاصه اجرایی

PWA یا Progressive Web App نوعی وب اپلیکیشن است که می‌تواند تجربه‌ای نزدیک‌تر به اپلیکیشن موبایل ارائه دهد؛ مانند نصب روی صفحه اصلی، اجرای سریع‌تر و برخی قابلیت‌های آفلاین.

# PWA چیست؟ مزایا و تفاوت Progressive Web App با اپلیکیشن موبایل

PWA چیست و چرا در سال‌های اخیر بسیاری از کسب‌وکارها هنگام طراحی محصول دیجیتال آن را به‌عنوان گزینه‌ای بین وب اپلیکیشن و اپلیکیشن موبایل بررسی می‌کنند؟

PWA مخفف Progressive Web App است.

به زبان ساده، PWA نوعی Web Application است که تلاش می‌کند برخی از تجربه‌های اپلیکیشن‌های نصب‌شدنی را داخل Web ارائه دهد.

کاربر همچنان می‌تواند از طریق Browser وارد محصول شود، اما در شرایط مناسب ممکن است بتواند:

  • آن را روی Home Screen نصب کند.
  • در حالت Full Screen اجرا کند.
  • بعضی بخش‌ها را Offline مشاهده کند.
  • Push Notification دریافت کند.
  • تجربه سریع‌تری داشته باشد.

بنابراین PWA را می‌توان پلی بین Web و Mobile Application در نظر گرفت.

اما PWA برای همه پروژه‌ها بهترین انتخاب نیست.

در این مقاله بررسی می‌کنیم PWA چیست، چگونه کار می‌کند و چه زمانی استفاده از آن منطقی است.

Progressive Web App یعنی چه؟

Progressive Web App در اصل یک Website یا Web Application است که قابلیت‌های خاصی برای نزدیک‌شدن به تجربه Native App دارد.

کاربر برای اولین استفاده معمولاً نیازی ندارد وارد App Store شود.

کافی است URL را باز کند.

در شرایط مناسب Browser می‌تواند امکان نصب روی Device را نیز ارائه کند.

پس از نصب، PWA ممکن است مانند یک Application مستقل اجرا شود.

PWA سایت است یا اپلیکیشن؟

از نظر فنی PWA بر پایه فناوری‌های Web ساخته می‌شود.

اما از نظر Experience می‌تواند بعضی رفتارهای Application را داشته باشد.

بنابراین می‌توان گفت:

PWA یک Web Application پیشرفته با قابلیت‌های Application-Like است.

چرا PWA به وجود آمد؟

Web مزایای بزرگی دارد:

  • URL مستقیم
  • بدون نیاز به نصب اولیه
  • قابل استفاده روی Platformهای مختلف
  • Update سریع

اما Mobile App نیز مزایایی دارد:

  • نصب روی Device
  • تجربه Native
  • Push
  • Offline
  • دسترسی بهتر به بعضی قابلیت‌های دستگاه

PWA تلاش می‌کند بخشی از مزایای هر دو جهان را ترکیب کند.

Service Worker چیست؟

یکی از فناوری‌های مهم پشت بسیاری از PWAها Service Worker است.

Service Worker نوعی Script است که می‌تواند در Background بین Browser و Network قرار بگیرد.

این فناوری در بعضی سناریوها امکان:

  • Cache