زمانی که گوشی های هوشمند در زندگی ما جایگاه ثابت خودشان را پیدا کردند انواع نرم افزارها یا اپلیکیشن ها به صورت Native قابل استفاده شدند؛
اما با گسترش تکنولوژی وب اپلیکیشن های پیش رونده جایگاه برتر را از آن خود کردند و به همین علت برای بسیاری از کاربران آن ها سوال پیش آمد که PWA چیست؟

ارتباط گرفتن با PWA ها شاید به دلیل عادت داشتن ما به نرم افزارهای نصبی روی گوشی همراه یا سیستم رایانه ابتدا سخت به نظر برسد؛
اما پس از مدتی استفاده از آن ها متوجه خواهید شد که چه مزایا و برتری هایی دارند.

در این مقاله سعی داریم با ساختار PWA ها، تفاوت آن ها با برنامه های نیتیو و مزایا و مضرات احتمالی آن آشنا شویم، همراه ما باشید.

1# PWA چیست؟

PWA که با نام وب اپلیکیشن پیش رونده شناخته می شود، مخفف عبارت Progressive Web App است.

این تکنولوژی از فناوری ها و زبان های برنامه نویسی وب که همه ما می شناسیم و
دوست داریم ساخته شده است، مانند:

pwa چیست

وب اپلیکیشن ها از نظر عملکرد با یک اپلیکیشن نیتیو واقعی رقابت می کنند تا
بستری کاملا مشابه با اپلیکیشن های نیتیو ارائه دهند.

به کمک چند مورد اضافی هوشمند، می توانید تقریبا هر وب سایت را به یک وب اپلیکیشن یا PWA تبدیل کنید.

این بدان معناست که می توانید وب اپلیکیشن پیش رونده را با سرعت بیشتر نسبت به یک برنامه نیتیو بسازید که
توسعه آن بسیار مشکل است.

به علاوه، می توانید تمام ویژگی های کاربردی برنامه های بومی مانند پوش نوتیفیکیشن (Push Notification)، پشتیبانی آفلاین و موارد دیگر را ارائه دهید.

بسیاری از سایت هایی که جستجو می کنید در واقع یک وب اپلیکیشن هستند.

برای مثال از twitter.com استفاده کنید.

به این صورت که اگر آن را در تلفن هوشمند خود مشاهده می کنید،
می توانید میانبر یا Shortcut آن را روی صفحه اصلی خود ایجاد کنید.

پس از آن، با باز کردن سایت ذخیره شده توییتر، متوجه خواهید شد که
ظاهر آن شبیه به یک اپلیکیشن نیتیو است و پنجره مرورگر یا چیز دیگری در آن وجود ندارد؛
همچنین هیچ تفاوتی در اجرای آن با iPhone یا تلفن هوشمند Android وجود ندارد.

این مزیت اصلی وب اپلیکیشن پیش رونده است.

PWA ها در حال محبوب شدن هستند.

برخی از نمونه های وب اپلیکیشن PWA چیست؟

در حال حاضر بسیاری از سایت های بزرگ در سراسر جهان به صورت وب اپلیکیشن پیش رونده طراحی شده اند و
امکان نصب روی صفحه اصلی یا Home Page گوشی شما را دارند؛ مانند:

  • Starbucks
  • Pinterest
  • Washingtonpost
  • Uber

2# تفاوت اپلیکیشن نیتیو و PWA چیست؟

مقایسه اپلیکیشن نیتیو و pwa

یک اپلیکیشن نیتیو، مانند برنامه هایی که از Apple App Store یا Google Play Store دانلود می کنید،
اغلب در یک زبان برنامه نویسی مخصوص آن پلتفرم ساخته شده است؛
بنابراین معمولا برای سیستم عامل Swift ،ios و برای سیستم عامل Android، جاوا است.

اگر می خواهید برنامه ای برای آن سیستم عامل ها بسازید، باید فناوری مربوط به آن ها را بدانید.

اگر چه میانبرهایی وجود دارد؛ اما آن ها هم محدودیت های خاص خود را دارند.

شاید برایتان جالب باشد که در این حوزه کاربرد و تفاوت PWA چیست.

اگر می خواهید یک برنامه در همه سیستم عامل های تلفن همراه داشته باشید می توانید از PWA استفاده کنید.

این وب اپلیکیشن ها در مرورگر اجرا می شوند و پس از ذخیره شدن در صفحه اصلی مانند یک اپلیکیشن نیتیو عمل می کنند.

حتی به سخت افزار و نرم افزار های اساسی که مرورگر به دلایل ایمنی نمی تواند به
آن دسترسی داشته باشد، دسترسی پیدا می کنند.

علاوه بر این اگر وب اپلیکیشن ها به خوبی طراحی شده باشند و عملکرد فوق العاده ای از خود نشان دهند،
کاربران هرگز نخواهند فهمید که از یک برنامه تحت وب به جای یک اپلیکیشن نیتیو استفاده می کنند.

3# مزایای PWA چیست؟

مزایای pwa

دلیل اصلی که همه به دنبال وب اپلیکیشن ها هستند این است که تعامل بیشتری را ارائه می دهند.

کاربرانی که برنامه شما را نصب می کنند بزرگترین طرفداران شما هستند و
به احتمال زیاد در آن ثبت نام کرده و از طریق آن خرید و فروش انجام می دهند.

اما روش تعامل با کاربران در وب اپلیکیشن یا PWA چیست؟

به لطف وجود پوش نوتیفیکیشن (Push Notification) ها (پیامی مشابه به پیام کوتاه یا SMS)، تعامل با کاربران بسیار آسان تر است.

علاوه بر این، برخی دیگر از مزایای وب اپلیکیشن پیش رونده عبارتند از:

  1. برای استفاده از وب اپلیکیشن های پیش رونده نیاز به ورود به فروشگاه های برنامه های مختلف و طی کردن مراحل دانلود آن نیست.
  2. شما می توانید وب اپلیکیشن های پیش رونده را با فناوری های رایج وب بسازید.
  3. ساخت و طراحی PWA ها اغلب ارزان تر است.
  4. با توجه به این که وب سایت خود را به یک برنامه تبدیل می کنید، به پایگاه های کد کمتری برای نگهداری آن ها نیاز خواهید داشت.
  5. PWA ها ریسپانسیو (responsive) هستند یعنی با اندازه های مختلف صفحه نمایش کار می کنند.
  6. PWA ها ساده، سریع و در عین حال سبک هستند.
  7. نیازی به واگذاری بخش بزرگی از پول به گوگل و اپل نیست.
  8. برخلاف سایت معمولی شما، آن ها به صورت آفلاین کار می کنند.
  9. PWA ها از طریق موتورهای جستجو مانند گوگل قابل کشف و دسترسی هستند
    (که مخاطبان بسیار بیشتری نسبت به فروشگاه های برنامه مانند Google Play Store دارند. به علاوه، اگر بخواهید هنوز می توانید وب اپلیکیشن های پیش رونده خود را از طریق فروشگاه های برنامه توزیع کنید).
  10. می توانید از پوش نوتیفیکیشن برای جلب مجدد کاربران استفاده کنید.
  11. نصب وب اپلیکیشن پیش رونده می تواند منجر به مشارکت بیشتر شود.

4# آیا برای ارائه خدماتم به PWA نیاز دارم؟

کاربرد p.w.a

آیا همه نیاز به PWA ها دارند و باید به سادگی یک وب اپلیکیشن پیش رونده بسازند و با آن کامل شوند؟

باید گفت خیر، شما می بایست کسب و کار خود و مهم تر از همه مخاطبان هدف خود را در نظر بگیرید.

از خود بپرسید، PWA چیست و توسط این فناوری می خواهید چه کاری انجام دهید؟

مناطق جغرافیایی و دستگاه های مورد استفاده کاربران شما برای استفاده از این سرویس چیست؟

آیا فکر می کنید یک اپلکیشن بتواند به انجام بهتر کارهای کاربران شما کمک کند؟

PWA ها عالی هستند و لازم نیست پیاده سازی آن ها آن قدر سخت باشد؛
اما فقط به این دلیل که آسان هستند به این معنی نیست که باید این کار را انجام دهید.

اگر مخاطبان شما نیازی به آن ندارند، پس نیازی به ساختن آن نیست.

5# نگرانی ها راجع به PWA چیست؟

نگرانی های راجع به pwa

PWA ها ذاتا وب محور هستند.

این برنامه ها از وب متولد شده اند و با در نظر گرفتن موتورهای جستجو توسعه یافته اند تا رسیدن به نتایج صحیح را آسان کنند.

شما به راحتی می توانید از هر سایت قدیمی یک اپلیکیشن وب پیش رونده تهیه کنید و انجام آن زیاد طول نمی کشد.

با این حال، بسیاری از PWA ها از جاوا اسکریپت برای ایجاد عملکردهای پیچیده تر استفاده می کنند.

اگر چه موتورهای جستجو مشکلی در اجرا و پردازش جاوا اسکریپت ندارند؛
اما هنوز هم می تواند نگران کننده باشد و دسترسی موتورهای جستجو را به سایت شما محدود کند.

به همین دلیل هنگام تنظیم وب اپلیکیشن پیش رونده، باید مطمئن شوید که جاوا اسکریپت شما در دسترس است.

فایل های مربوط به ربات ها را مسدود نکنید و مطمئن شوید پیوندها برای موتور جستجو در دسترس هستند.

برای بهبود فرآیند رندرینگ (Rendering)، می توانید اجرای جاوا اسکریپت خود را به رندرینگ سمت سرور بسپارید.

با این حال، اگر وب اپلیکیشن پیش رونده با طراحی فوق العاده مناسب برای موتورهای جستجو دارید،
تجربه کاربری فوق العاده ای را به کاربران خود ارائه می دهید که رتبه قابل توجهی به سرویس شما خواهد بخشید.

6# بلوک های اصلی ساختمان وب اپلیکیشن پیش رونده

بلوک های اصلی ساختمان p.w.a

راه اندازی وب اپلیکیشن یا PWA زمان زیادی نمی برد.

قبل از این که سایت شما به یک PWA معتبر تبدیل شود، باید سه مورد را ارائه دهید:

  • اتصال امن PWA یا HTTPS: باید بدانید که PWA ها فقط روی اتصالات مورد اعتماد کار می کنند و
    باید آن ها را از طریق اتصال ایمن سرویس دهید.
    این نه تنها به دلایل امنیتی، بلکه یک عامل اعتماد بسیار مهم برای کاربران است.
  • سرویس ورکر (Service Worker): سرویس ورکر قسمتی از اسکریپت است که در پس زمینه اجرا می شود.
    این به شما کمک می کند تا نحوه رسیدگی به درخواست های شبکه برای وب اپلیکیشن خود را تعیین کنید؛ همچنین انجام کارهای پیچیده تر را ممکن می سازد.
  • فایل مانیفست (Manifest): این فایل JSON حاوی اطلاعاتی در مورد نحوه ظاهر شدن و عملکرد PWA شما است.
    در این جا شما می توانید نام، توضیحات، نمادها، رنگ ها و غیره را تعیین کنید.
دانلود pdf مقاله

مقاله بالا بخشی از مطالب گسترده برنامه نویسی فرانت اند است.

برای یادگیری صفر تا صد این حوزه به آموزش جامع برنامه نویسی فرانت اند نماتک مراجعه کنید.

برای مشاهده توضیحات کامل بسته کلیک کنید.

بسته برنامه نویسی فرانت اند

اگر به دنبال یاد گرفتن مهارت بیشتر و افزایش درآمد هستید،

برای دریافت آموزش های رایگان مرتبط با حوزه علاقه‌مندی خود فقط کافیه فرم رو تکمیل کنید.

لطفا موبایل خود را وارد نمایید

نظرتون درباره این مقاله چیه؟
ما رو راهنمایی کنید تا اون رو کامل تر کنیم و نواقصش رو رفع کنیم.
توی بخش دیدگاه ها منتظر پیشنهادهای فوق العاده شما هستیم.