مقایسه‌ی برنامه‌های native و pwa

گردآوری و تالیف : علیرضا معمارزاده
تاریخ انتشار : 18 آبان 1398
دسته بندی ها : آموزشی

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

برای مدت زیادی تنها دو راه برای ارتقا نرم‌افزارهای تلفن همراه وجود داشت: استفاده از وب و مرورگرها و یا تهیه یک نرم‌افزار بومی. 

در حال حاضر انتخاب سومی هم وجود دارد: وب‌اپلیکیشن‌های پیش رونده (Progressive Web App-PWA). 

استفاده ساده و کم‌هزینه و بدون مشکلات متعدد؛PWA  معمولاً به عنوان بهترین راه برای ایجاد یک نرم‌افزار موبایل هستند، ولی واقعاً در حدی که به نظر می‌‌‌آیند عالی هستند؟ یا خیر؟

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

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

PWA ها معمولاً زمینه‌ای بین نرم‌افزارهای بومی موبایل و وبسایت‌ها را تشکیل می‌دهند و همانند وبسایت‌های مدرن، به وسیله زبان ثابت ساختاری وب که شامل HTML5, CSS  و JAVASCRIPT می‌شود، ساخته شده‌اند. 

ولی با این حال، کاربرد PWAها به مرورگرهای وب ختم نمی‌شود.

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

بنابر گفته caniuse.com ،service workers مورد استفاده تقریباً 87درصد از تمامی کاربران اینترنت و تقریباً تمامی مصرف‌کنندگان مرورگرهای مهم موجود در فضای وب هستند.

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

در هم‌نشینی برنامه‌نویسان گوگل کروم در سال 2017، فعالیت‌های وب مورد اطمینان را شروع کردند که راه تازه‌ای برای ادغام فعالیت وب و نرم‌افزارها، مانند pwa و نرم‌افزارهای اندروید را ایجاد می‌کرد؛ استفاده از این نکته باعث شد که تجارت‌های وابسته بتوانند به راحتی از تجارب وب خود برای نرم‌افزارهای بومی خود استفاده کرده و pwa  را حتی مفیدتر نشان دهند.

مقایسه نهایی برنامه‌های وب بومی و وب‌اپلیکیشن‌های پیش رونده

بهترین کاربرد وب‌اپلیکیشن‌های پیش رونده بدون شک "low friction of distribution"  آنها است. بر اساس تحقیق سال 2017  comscore بر روی نرم‌افزارهای تلفن همراه، تعداد بسیار زیادی از آنها (51درصد) هیچ نرم‌افزاری را در طی یک ماه دانلود نمی‌کنند؛ 13 درصد یک یا چند دانلود و بقیه فقط یک دانلود در ماه انجام می‌دهند.

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

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

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

Konga، یک وبسایت بسیار معروف خریدوفروش در نیجریه تلاش زیادی برای افزایش مشتری انجام داد، جایی که دو سوم افراد به اینترنت 2G دسترسی داشتند، برای همین به فکر ساخت یک وب‌اپلیکیشن پیش‌رونده افتادند.

<<بر اساس پیش‌بینی‌های انجام شده، مرورگر جدید وب ما بسیار سریع، سبک و با قابلیت گشت و گذار در وب با UX  بسیار قوی می‌باشد که استفاده از دیتا را به صورت چشمگیری کاهش می‌دهد.>>

"Shola Adekoya, Konga.com CEO"

این انتخاب تصمیم خوبی بود به این علت که KONGA  توانست استفاده از دیتا را با کمک نقل‌مکان به PWA تا 92درصد برای  نیمه اول بارگذاری کاهش دهد. 

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

مقایسه‌ی برنامه‌های native و pwa

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

عبارت "progressive web app"  در سال 2015 توسط طراحی به نام "frances berriman"  و طراح گوگل کروم، "alex Russell"  به منظور ساختن نسل جدیدی از نرم‌افزارها، که از امکانات جدید تحت پشتیبانی مرورگرهای جدید و مدرن حمایت می‌کنند و شامل تمامی service workersهای بالا می‌شوند، ابداع شد.

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

Twitter lite

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

"Twitter lite" به کلی ماجرا را برای توییتر عوض کرد و شهرت و محبوبیت آنرا افزایش داد و نسخه pwa توییتر امروزه بیش از ده میلیون "push notification" را حمایت می‌کند.

Trivago

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

برای همین است که "Trivago" که سایت مورداطمینانی برای این کار است، نسخه PWA این نرم‌افزار وب را که تجربه کاربری کاملاً یکسانی با نسخه وب آن دارد را روانه بازار کرد.

Forbes

در یک سایت آماری بسیار معروف نشان داده شده که 53درصد از استفاده کنندگان از تلفن همراه، سایتی که بیشتر از 3 ثانیه برای بالا آمدن زمان می‌برد را ترک می‌کنند. 

نرم‌افزار موبایل پیشین forbes  حدود شش و نیم ثانیه برای بالاآمدن زمان می‎برد؛ پس از منتشر کردن pwa  آن، استقبال از این نرم‌افزار به حدی بالا رفت که با افزایش 12 درصدی مصرف آن مواجه شد.

این سه نمونه از pwaهای مهم نشان‌دهنده اهمیت برخی از تصمیمات در راستای استفاده از تکنولوژی‌های بروز دنیا بوده است.

جمع‌بندی

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

چیزی که از همه اهمیتش بیشتر است این است که نهایتاً کدام‌یک بهترین تجربه کاربری را برای مصرف‌کنندگان به ارمغان می‌آورند؛ هردو گزینه می‌توانند اینگونه باشند. 

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

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

منبع

مقالات پیشنهادی

  • آینده‌ی فریمورک React Native

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

    علیرضا معمارزاده
  • اساس React Native: کپی در کلیپ‌بورد

    خواندن از کلیپ‌بورد و نوشتن بر روی آن در React با استفاده از اِی‌پی‌آی Clipboard بسیار آسان است. در این آموزش مختصر، یک برنامه ساده برای انجام این کار...

    عرفان کاکایی
  • React Native در مقابل اپلیکیشن‌های Native

    اگر در زمینه توسعه برنامه موبایل فعالیت دارید، نام React Native نباید برای شما جدید باشد. مدتی می‌شود که این اصطلاح در دنیای فناوری در حال گردش است. ا...

    عرفان کاکایی