ختماس با کارشناسان شرکت نرم افزاری خورشید پشتیبانی 24 ساعته
سامانه پشتیبانی شرکت نرم افزاری خورشید کارونا

PWA چیست؟

PWA چیست؟

یک Progressive Web App (PWA) یک نوع اپلیکیشن وب است که با استفاده از تکنولوژی‌ ها و استانداردهای وب مدرن توسعه داده می‌ شود و قابلیت‌ هایی شبیه به نرم‌ افزارهای نصب‌ شده در دستگاه‌ های موبایل و دسکتاپ را فراهم می‌ کند. PWA به ترکیبی از ویژگی‌ های وب و ویژگی‌ های نرم‌ افزارهای تلفن همراه و دسکتاپ معروف است. در ادامه توضیحات کاملتری در مورد ویژگی‌ها و مزایای PWA آورده شده است:

  1. دسترسی آسان و بدون نیاز به نصب:

    یکی از مهم‌ ترین ویژگی‌ های PWA این است که کاربران بدون نیاز به دانلود و نصب اپلیکیشن، به آن دسترسی دارند. کافی است که از مرورگر وب خود به وب‌ سایت مرتبط با PWA بروند و از امکانات آن استفاده کنند.
  2. عملکرد بهتر و سرعت بالا:

    PWA ها عملکرد بهتری را نسبت به وب‌ سایت‌ های معمولی ارائه می‌دهند. این به عنوان نتیجه استفاده از استانداردهای کش‌ سازی و پیش‌ بینی درخواست‌ ها از سمت سرور و همچنین استفاده از امکانات مرورگر برای ذخیره سازی داده‌ ها در حافظه محلی دستگاه‌ ها اتفاق می‌ افتد.
  3. قابلیت کار آفلاین:

    یکی از ویژگی‌ های مهم PWA، قابلیت کار در حالت آفلاین (offline) است. این به معنی این است که کاربران می‌ توانند حتی در شرایطی که اتصال به اینترنت ندارند یا اتصال ضعیفی دارند، از PWA استفاده کنند. اطلاعاتی که به صورت آفلاین وارد شده است، در زمان برقراری اتصال به اینترنت به‌روزرسانی می‌ شوند.
  4. تجربه کاربری بهتر:

    PWA ها به کمک ویژگی‌ هایی مانند اعلان‌ های نهادی (Push Notification)، اجرای بهتر روی دستگاه‌ های لمسی، و امکانات دسترسی به دستگاه (مانند دوربین و میکروفون)، تجربه کاربری بهتری ارائه می‌دهند.
  5. به‌روزرسانی‌ های خودکار:

    PWA ها به‌روزرسانی‌ های خودکار دارند و کاربران نیازی به دانلود و نصب دستی نسخه‌ های جدید ندارند. این به معنای این است که همیشه با نسخه‌ی جدید و به‌روز اپلیکیشن کار خواهند کرد.
  6. امنیت:

    PWA ها با استفاده از HTTPS امنیت بالایی را ارائه می‌ دهند و اطلاعات کاربران را محافظت می‌کنند.
  7. شباهت به نرم‌ افزارهای نصب‌ شده:

    PWA ها امکاناتی شبیه به نرم‌ افزارهای نصب‌ شده دارند و در صفحه اصلی دستگاه‌ های موبایل قرار می‌ گیرند، به طوری که کاربران به راحتی به آن‌ ها دسترسی پیدا می‌ کنند.
  8. قابلیت اشتراک‌ گذاری و لینک‌ پذیری:

    PWA ها به راحتی قابل اشتراک‌گذاری هستند و کاربران می‌ توانند لینکی به آن‌ ها به اشتراک بگذارند.

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

 

چگونه PWA ایجاد کنیم؟

برای ایجاد یک Progressive Web App (PWA)، شما باید مراحل زیر را انجام دهید:

  1. ساخت وب‌ سایت اصلی:

    شما باید یک وب‌ سایت اصلی با استفاده از HTML، CSS، و JavaScript بسازید. این وب‌ سایت باید اطلاعات و محتوا را به کاربران ارائه دهد.
  2. اطمینان از HTTPS:

    برای ایجاد امنیت در ارتباط با کاربران، وب‌ سایت شما باید از پروتکل HTTPS استفاده کند. این برای جلوگیری از نفوذهای امنیتی و تضمین اطلاعات محرمانه کاربران ضروری است. برای این کار باید یک گواهینامه SSL اختصاصی (SSL Certificate) بر روی وب‌ سرور خود نصب کنید.
  3. ایجاد فایل Manifest:

    فایل Manifest یک فایل با پسوند .json است که اطلاعات اصلی PWA شما را تعریف می‌کند. این فایل شامل مواردی مانند نام اپلیکیشن، آیکون‌ ها، توضیح کوتاه، تنظیمات نمایش و بسیاری موارد دیگر است. این فایل باید در ریشه وب‌ سایت شما قرار داشته باشد و به صورت زیر ایجاد می‌شود:
  4. اضافه کردن Service Worker:

    یک Service Worker یک اسکریپت JavaScript است که در پس‌ زمینه کار می‌ کند و وظایفی مانند کش‌ سازی، مدیریت ذخیره‌ سازی آفلاین و کار با درخواست‌ های شبکه را انجام می‌دهد. شما باید این اسکریپت را ایجاد کنید و به وب‌ سایت خود اضافه کنید. این اسکریپت می‌ تواند تمامی واحد خدماتی (service) مربوط به PWA شما را اجرا کند.
  5. ترتیب تجربه آفلاین:

    با استفاده از Service Worker، شما می‌ توانید منطقی را برای ذخیره محتوا و منابع در حافظه محلی دستگاه‌ های کاربران ایجاد کنید. این امر به کاربران امکان می‌ دهد تا در حالت آفلاین به وب‌ سایت شما دسترسی داشته باشند.
  6. اعلان‌ های نهادی (Push Notifications):

    اگر می‌ خواهید از اعلان‌ های نهادی استفاده کنید، باید این ویژگی را در PWA خود فعال کنید. این به کمک Service Worker و پسوند‌هایی مانند Push API و Notification API انجام می‌شود. کاربران باید اجازه داده باشند تا اعلان‌ ها را دریافت کنند.
  7. اضافه کردن لینک به Manifest و Service Worker:

    شما باید لینک به فایل Manifest و Service Worker را در تگ‌های `<link>` مورد نظر در صفحات وب‌سایت خود اضافه کنید. این اقدام به مرورگر اطلاعات لازم برای شناسایی PWA شما را ارائه می‌دهد.
  8. اختصاصی کردن ظاهر:

    شما می‌ توانید ظاهر PWA خود را با استفاده از CSS و تصاویر به سلیقه خود تنظیم کنید. این امر به سفارشی‌ سازی و طراحی تجربه کاربری PWA کمک می‌ کند.
  9. تست و اجرا:

    PWA خود را در مرورگرهای مختلف و دستگاه‌ های مختلف تست کنید تا از صحت عملکرد آن اطمینان حاصل کنید. از ابزارهای توسعه مرورگر و ابزارهای تست PWA استفاده کنید.
  10. نشر و تبلیغات:

    وقتی PWA خود را توسعه دادید و تست کردید، می‌ توانید آن را بر روی وب‌ سرور خود بارگذاری کنید و به دیگران معرفی کنید. همچنین می‌ توانید از روش‌ های مختلف تبلیغاتی برای جلب کاربران بیشتر استفاده کنید.

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

 

نمایش و عملکرد Manifest چگونه است؟

فایل Manifest باید شامل اطلاعاتی باشد که برای نمایش و عملکرد مناسب Progressive Web App (PWA) ضروری هستند. این اطلاعات عبارت‌اند از:

  1. نام اپلیکیشن (name):

    نام کامل اپلیکیشن شما که در نمایش آن در منوی اپلیکیشن‌ ها و برچسب‌ ها مورد استفاده قرار می‌ گیرد.
  2. نام کوتاه اپلیکیشن (short_name):

    یک نام کوتاه و خلاصه‌ تر از نام اپلیکیشن برای استفاده در مکان‌ های محدودتری مانند نمایش در آیکون‌ ها.
  3. آدرس شروع (start_url):

    این آدرس تعیین می‌ کند که وقتی کاربران اپلیکیشن را از صفحه اصلی دستگاه‌ های خود راه‌ اندازی می‌ کنند، به کدام صفحه اپلیکیشن منتقل شوند. این معمولاً یک مسیر نسبی در وب‌ سایت شماست.
  4. حالت نمایش (display):

    این تعیین می‌ کند که PWA چگونه در دستگاه نمایش داده شود. مقادیر معمولاً عبارتند از:
    "fullscreen": نمایش به صورت تمام صفحه.
    "standalone": نمایش به صورت مستقل بدون نوار آدرس.
    "minimal-ui": نمایش با نوار آدرس کم حجم.
  5. رنگ پس‌ زمینه (background_color):

    رنگ پس‌ زمینه اپلیکیشن در حالت لود شدن و نمایش Splash Screen (اگر فعال باشد) استفاده می‌ شود.
  6. رنگ تم (theme_color):

    این رنگ تم برای نمایش در مرورگر و برنامه‌ های مختلف استفاده می‌ شود و ممکن است تطابقی با طراحی اپلیکیشن داشته باشد.
  7. آیکون‌ ها (icons):

    این بخش شامل لیستی از آیکون‌ ها با اندازه‌ ها و فرمت‌ های مختلف است که برای نمایش در نوار آدرس مرورگر و منوی اپلیکیشن استفاده می‌ شوند. به عنوان مثال، آیکون‌ هایی با اندازه‌های 192y192 و 512y512 پیکسل و فرمت PNG معمولاً استفاده می‌ شوند.

این موارد باید در فایل Manifest شما تعریف شوند. همچنین می‌توانید موارد دیگری نیز به فایل Manifest اضافه کنید تا تجربه کاربری PWA شما را بهبود ببخشید، مانند محتواهای مورد ذخیره آفلاین، اعلان‌های نهادی (Push Notifications)، و تنظیمات دیگری. برای هر کاربرد خاص، بهتر است مطالب و تنظیمات Manifest را به مرورگرهای مختلف تست کنید تا اطمینان حاصل کنید که PWA شما به درستی عمل می‌کند.