Pwa در مقابل Amp: کدام بهتر است و چه فرقی با هم دارند؟ 

ترجمه و تالیف : امیرحسین بَزی
تاریخ انتشار : 10 اردیبهشت 99
خواندن در 6 دقیقه
دسته بندی ها : طراحی وب

آیا pwa و amp را می‌شناسید و می‌دانید کدام یک برای شما بهتر است؟ بیاید به این دو نوع نگاهی بیاندازیم. این روزها بسیاری از مردم از تلفن‌های هوشمند خود استفاده می‌کنند. این موضوع فرصت‌های نامحدودی را برای تجارت ایجاد می‌کند. فرصت‌هایی که بلافاصله توسط تعداد بی‌شماری از رقبا در بازار نرم‌افزار تلفن همراه به چالش کشیده می‌شود.

برنامه‌های تلفن همراه مطمئناً راحت‌تر از سیستم‌عامل‌های دسکتاپ یا وبسایت هستند. با این حال‌، آن‌ها راحت‌ترین گزینه‌ای نیستند که در دسترس است.

برای دستیابی به بالاترین سطح رضایت مشتری و پیشی گرفتن از رقبا، افراد باهوش از تکنولوژی‌ برنامه‌های وب پیش‌رونده (pwa) و صفحات وب تسریع شده (amp) استفاده می‌کنند.

اصلا اینها چه چیزی هستند، و چگونه باید بهترین را انتخاب کنیم؟ بیاید با پرسش و پاسخ به چند سوال ساده در این زمینه جواب را پیدا کنیم.

  1. PWA چیست؟
  2. AMP چیست؟
  3. چه شباهت‌هایی دارند؟
  4. چه تفاوت‌های دارند؟
  5. چرا PWA بهتر از صفحات وب است؟
  6. چرا PWA بهتر از برنامه‌های بومی است؟
  7. چرا AMP بهتر از صفحات وب است؟
  8. چرا AMP بهتر از برنامه‌های بومی نیست؟

PWA چیست؟

یک برنامه وب پیش‌رونده (progressive web app) یا PWA، مزایای برنامه‌های وب و برنامه‌های موبایل را در یک محصول نرم‌افزاری واحد ادغام می‌کند. همانطور که گوگل اعلام کرد، PWA ها "تجربیات کاربرانی هستند که به وب دسترسی دارند و قابل اعتماد، سریع و جذاب هستند". این فناوری است که به شما این امکان را می‌دهد که از وبسایت استفاده کنید، گویی که یک برنامه بومی است.

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

Pwa در مقابل Amp: کدام بهتر است و چه فرقی با هم دارند؟ 

اصول

PWA یک راه‌حل بسیار ساده و قابل ارائه است که می‌توانید از آن استفاده کنید. آن‌ فایل‌های HTML و CSS را در حافظه نهان مرورگر ذخیره می‌کنند و آن‌ها را با کمک service workers آرشیو می‌کنند. این کار امکان استفاده از صفحه وب را به صورت آفلاین ممکن می‌سازد. service workers یکی از سه جز اصلی یک PWA است، همراه با فایل manifest و یک پروتکل امن HTTPS.

service workers کد‌های جاوااسکریپتی هستند که نقش یک پروکسی بین شبکه و مرورگر را بازی می کنند.

زمانی که برای اولین بار یک صفحه وب را باز می‌کنید، service workers اطلاعات لازم را در حافظه نهان مرورگر ذخیره می‌کنند. زمانی که برای دومین بار آن را باز می‌کنید، service workers این اطلاعات را حتی قبل از اینکه برنامه دسترسی به شبکه را چک کند، بازیابی می‌کنند.

آن‌ها نه تنها توانایی کار آفلاین را فراهم می‌کنند بلکه باعث افزایش زمان پاسخگویی نیز می شوند. service workers اعلان‌ها را هم مدیریت می‌کنند.

فایل manifest یک پرونده JSON است که شامل تمام اطلاعات مربوط به برنامه شما است. به عنوان مثال، حاوی اطلاعات مربوط به آیکون صفحه اصلی PWA، نام کوتاه آن، پالت رنگ یا موضوع است.

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

پروتکل امن HTTPS یک اجبار است اگر قصد استفاده از pwa را دارید. در حالی که service workers، مفهوم PWA را ممکن می‌سازند ، اما در برابر خطاها یا نفوذ شبکه آسیب‌پذیر هستند. service workers می‌توانند درخواست های شبکه را رهگیری کنند و پاسخ‌ها را اصلاح کنند. برای اطمینان از امنیت داده‌ها و امنیت شبکه ، باید از پروتکل امن HTTPS استفاده شود.

داستان‌های موفقیت

توییتر تنها شرکتی نیست که از PWA بهره برده است. این مطالعات را که توسط Google منتشر شده است بررسی کنید تا ببینید چگونه این فناوری به موفقیت کسب‌وکارهای محبوب کمک کرده است. از جمله این شرکت ها می توان به Pinterest ، Alibaba ، The Weather Channel ، Lancome و Home Depot اشاره کرد.

شما می‌توانید با استفاده از دوره آموزشی pwa در وبسایت راکت این تکنولوژی را به طور کامل فرا بگیرید

AMP چیست؟

amp مخفف صفحه وب تسریع شده (accelerated mobile page) است. این یک صفحه وب سازگار با موبایل است که به گونه‌ای طراحی شده ‌است که فورا بارگیری شود. در ابتدا به عنوان یک پروژه متن‌باز معرفی شد و سپس در سال 2016 توسط گوگل ادغام شد.

در سال ۲۰۱۶، گاردین اعلام کرد که پلتفرم آن‌ها در حال حاضر به عنوان AMP در دسترس است. برای کمک به خوانندگان در مورد چگونگی کارکرد آن، آن‌ها هم مقاله خود را به عنوان یک نسخه وب و هم یک نسخه AMP به نمایش گذاشتند.

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

Pwa در مقابل Amp: کدام بهتر است و چه فرقی با هم دارند؟ 

اصول

ایده AMP این است که میزان محتوای و امکانات‌ غیرضروری را کاهش دهد تا برنامه بلافاصله محتوای اصلی را نمایش دهد. داده‌ها را می‌توان تا ده برابر کاهش داد. سه مؤلفه اساسی AMP عبارتند از: AMP HTML ،AMP Component و AMP Cache.

AMP HTML یک نسخه ساده از HTML معمولی است. AMP HTML به برخی از برچسب‌ها و عناصر HTML (به عنوان مثال، فرم‌ها) اجازه اجرا نمی‌دهد. برای درک بهتر آنچه به نظر می‌رسد AMP HTML، باید از مارک‌های لازم استفاده کنید.

کامپوننت‌های AMP اسکریپت‌هایی هستند که شما را قادر می‌سازد بدون جاوااسکریپت کارها را انجام دهید. ایده AMP خلاص شدن از شر همه اسکریپت‌های جاوااسکریپت است زیرا باعث می‌شود سرعت لود صفحات کاهش یابد.

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

AMP Cache یک شبکه تحویل محتوا مبتنی بر پروکسی است که محتوای صفحه را واکشی و ذخیره می‌کند. AMP Cache به شما به عنوان صاحب برنامه این امکان را می‌دهد تا به راحتی به‌روزرسانی‌های صفحات را معرفی کنید. آن را بهینه‌سازی و در صورت لزوم AMP را اصلاح می‌کند.

داستان‌های موفقیت

مشابه با PWA، شرکت‌ها اغلب به مزیت‌های رقابتی که ارائه می‌دهند، بسیار افتخار می‌کنند. در اینجا مجموعه‌ای از شرکت‌های موفق که از amp استفاده کرده و از آن‌ها سود برده‌اند را معرفی می‌کنیم. Musement، RCS MediaGroup، CNBC، واشنگتن ‌پست همه شرکت‌هایی هستند که amp را بر روی سایت‌های خود پیاده‌سازی کرده‌اند.

چه شباهت‌هایی دارند؟

PWA و AMP هر دو روشی برای نمایش صفحات وب در تلفن‌های همراه هستند. هر دو آن‌ها برای بهبود تجربه کاربر ایجاد شده‌اند.

AMP و PWA هر دو به کاهش زمان بارگذاری صفحه کمک می‌کنند. در حالی‌که ممکن است AMP از نظر سرعت بارگذاری نسبت به PWA کمی سریع‌تر باشند، تفاوت بین زمان بارگذاری AMP و PWA به بسیار ناچیز است.

هر دو فناوری به طور فعال توسط Google پشتیبانی می شوند. یک صفحه PWA در Google Developers و یک صفحه AMP در Google Developers وجود دارد.

حالا بیایید ببینیم چه تفاوت‌های دارند.

چه تفاوت‌های دارند؟

ظاهر

با استفاده از PWA احساس نمی‌کنید که از یک صفحه وب استفاده می‌کنید. به‌نظر می‌رسد که یک برنامه تلفن‌همراه باشد.

با استفاده از amp، شما به خوبی می‌دانید که از یک صفحه وب استفاده می‌کنید چون شبیه آن است.

توسعه

در مورد PWA ، یا از کد برنامه جدا شده یا با برخی از قسمت‌های کد موجود می‌آید.

در مورد AMPها، کد موجود در یک صفحه وب از CSS و JS غیر ضروری جدا می‌شود تا صفحه وب سریع‌تر بارگیری شود.

تجربه‌کاربری

PWA تجربه کاربری بسیار بهتری را ارائه می‌دهد. آن‌ها قابلیت ارسال اعلان دارند، نماد صفحه اصلی و تب‌های مرورگر وجود ندارند. همچنین، نسبت به یک برنامه معمولی موبایل، بارگیری و اندازه آن‌ها بسیار سبک‌تر است. PWAها سریع‌تر از نسخه وب معمولی بارگیری می شوند زیرا درون Shell برنامه مخفی شده‌اند. و PWAها هنگام قطع اتصال شبکه هم قابل استفاده هستند.

AMP از آنجا که صفحه سریع‌تر از یک صفحه معمولی بارگیری می‌کند، تجربه کاربری بهتری ارائه می‌دهد. با این وجود، این تنها مزیت تجربه کاربر است که ارائه می‌دهند. برخلاف PWA ، AMP نمی‌توانند به صورت آفلاین کار کنند.

کارایی

از دیدگاه سئو، amp برنده است زیرا گوگل صفحاتی را که از این قابلیت استفاده می‌کند را رتبه بهتری می‌دهد و باعث می‌شود نرخ کلیک آن صفحه افزایش یابد.

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

پشتیبانی

PWA در همه دستگاه‌ها به یک اندازه پشتیبانی نمی‌شوند، بنابراین ممکن است هنگام نمایش در سیستم‌عامل IOS، مشکلاتی به وجود بیاید. همچنین، pwa از تمام قابلیت‌های سخت‌افزاری، مانند بلوتوث، NFC ،GPS یا شتاب‌سنج پشتیبانی نمی‌کنند.

amp توسط همه مرورگرهای اصلی روی همه دستگاه‌ها پشتیبانی می‌شود.

چه برنامه‌هایی برای آن‌ها مناسب هستند

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

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

چرا PWA بهتر از صفحات وب است؟

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

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

بسیار خوب، مزایای این راه‌حل کاملا مشهود هست، اما به نظر می‌رسد که برنامه‌های تلفن‌همراه بومی می‌توانند خیلی بهتر عمل کنند. نه، اینطور نیست. بیایید ببینیم چرا PWA بهتر از برنامه‌های بومی تلفن‌همراه هستند.

چرا PWA بهتر از برنامه‌های بومی است؟

برای استفاده از یک برنامه کاربردی تلفن‌همراه، باید آن را در app store یا google play پیدا کنید. پس باید مدتی صبر کنید تا آن را دانلود و نصب کنید. شما ممکن است فضای خالی کافی روی دستگاه خود نداشته باشید، پس باید حافظه موبایل خود را نیز خالی کنید.

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

همانطور که می‌توانید ببینید، PWA از یک برنامه موبایل یا وبسایت بهتر به نظر می‌رسد. اما شما باید درک کنید که همیشه اینگونه نیست و در بعضی موارد برنامه‌های موبایل خیلی بهتر عمل می‌کنند.

چرا AMP بهتر از صفحات وب است؟

همانطور که در بالا گفته شد، برنامه‌های وب کند و ناخوشایند هستند، به خصوص هنگامی‌که از دستگاه‌های تلفن‌همراه با اندازه صفحه نمایش کوچک یا سخت‌افزار کم توان استفاده کنید.

با خلاص شدن از شر تمام اجزای وب که برای تجربه کاربر خوب ضروری نیستند، صفحات موبایل تسریع شده این مشکل را حل می‌کنند. amp چهار برابر سریع‌تر کار می‌کنند و ده برابر کم‌تر از صفحات وب معمولی از داده استفاده می‌کنند.

چرا AMP بهتر از برنامه‌های بومی نیست؟

متأسفانه، AMP ها نمی‌توانند جایگزین کاملی برای برنامه‌های موبایل بومی باشند. آن‌ها را نمی‌توان بر روی صفحه اصلی نصب کرد، آن‌ها همچنان شامل تب‌های مرورگر هستند و عملکرد آن‌ها محدود به موارد دیگری است.

اما برای یک روزنامه آنلاین یا برای یک وبسایت اطلاعاتی مانند WebMD، بهتر است از AMP استفاده کنید نه یک برنامه بومی تلفن‌همراه. چون برای نمایش محتوای صفحه نیازی به امکانات اضافی نیست.

جمع‌بندی

هر دو amp و PWA تکنولوژی‌های قدرتمندی هستند. نتیجه جمع‌بندی برای پرسش اولیه ما - PWA در برابر amp:

  • AMP برای توسعه آسان‌تر ، سریع‌تر و ارزان‌تر خواهد بود
  • PWA مزایای بیشتری ارائه می‌دهد.

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

اگر هنوز هم مطمئن نیستید کدام را انتخاب کنید. نظر تیم ما این است که : pwa آینده وب است و amp بسیار ساده و محدود به قابلیت‌های رقابتی هستند.

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

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

منبع

گردآوری و تالیف امیرحسین بَزی

یک طراح گرافیک علاقمند به React JS