وب اپلیکیشن‌ های پیش رونده (PWA)

وب اپلیکیشن‌ های پیش رونده (PWA)

وب اپلیکیشن‌های پیش رونده (PWA) نسل جدید اپلیکیشن‌های تحت وب هستند که می‌توانند آینده‌ی اپلیکیشن‌های موبایل را متحول کنند. در این مقاله به طور جامع به بررسی آن‌ها خواهیم پرداخت.

اندروید و آی‌اواس، دو سیستم‌عامل محبوب موبایل، سال‌ها است که به لطف برخورداری از گنجینه‌ای غنی از اپلیکیشن‌ها توانسته‌اند فاصله‌ی خود را با دیگر سیستم‌عامل‌های موبایل افزایش دهند و به محبوبیت بالایی بین کاربران و توسعه‌دهندگان دست پیدا کنند. در واقع، بخش اعظم موفقیت این دو پلتفرم موبایل مرهون گستردگی و عملکرد بی‌نظیر اپلکیشن‌های بومی آنها بوده است. این مسئله موجب شده که پلتفرم‌های دیگر در حوزه‌ی موبایل فرصت چندانی برای عرض اندام نداشته باشند و به دلیل فقر نرم‌افزاری استقبال چندانی از سوی آن‌ها به عمل نیاید. بارزترین مثال در این رابطه، ویندوزفون است که امروزه دیگر تقریبا از رده خارج شده است. سیستم‌عامل موبایل ردموندی‌ها فارغ از تمام نقاط ضعف و مثبتش و در تمام مراحل توسعه – چه به عنوان ویندوز فون و چه ویندوز ۱۰ موبایل - موفق نشد تا توجه توسعه‌دهندگان را به خود جلب کند و از منظر کیفی و کمی، اپلیکیشن‌های ضعیف‌تر و کمتری در مقایسه با رقبایش داشت.

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

این اشکالات موجب شد تا اپلیکیشن‌های وب در مرکز توجه قرار بگیرند. امروزه، با گسترش دسترسی به اینترنت پایدار و پرسرعت و توسعه‌ی فناوری‌های مدرن وب، اپلیکیشن‌های تحت وب به تکامل تازه‌ای دست یافته‌اند و اکنون نه‌تنها کمبودی نسبت به اپلیکیشن‌های بومی ندارند؛ بلکه در موارد مختلفی بهتر از آن‌ها عمل می‌کنند. با توجه به همین مسئله، گوگل در سال ۲۰۱۵ وب اپلیکیشن‌های پیش رونده را با قابلیت‌های منحصربه‌فردی معرفی کرد. پیش از آنکه به تشریح خصوصیات وب اپلیکیشن‌های پیش رونده بپردازیم، ابتدا به صورت مختصر به بررسی تفاوت اپلیکیشن‌های بومی و اپلیکیشن‌های وب می‌پردازیم.

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

وب‌اپلیکیشن‌های پیش رونده (Progressive Web Apps) یا به اختصار PWA می‌توانند تحول بزرگ بعدی در حوزه‌ی اپلیکیشن‌های موبایل محسوب شوند. این فناوری که ابتدا در سال ۲۰۱۵ و توسط گوگل معرفی شد، به علت آسودگی نسبی توسعه و در اختیار قرار دادن یک تجربه‌ی کاربری آنی برای کاربران توجهات زیادی را به خود جلب کرده است.

وب اپلیکیشن‌های پیش رونده از جدیدترین فناوری‌ها در ترکیب اپلیکیشن‌های موبایل و وب‌سایت‌ها بهره می‌گیرند. یک وب اپلیکیشن پیش رونده در واقع وب‌سایتی است که از فناوری‌های مدرن وب استفاده می‌کند؛ اما ظاهر و کارکرد آن همانند یک اپلیکیشن معمولی است. پیشرفت‌های اخیر در مرورگرها، سرویس ورکرها، کش‌ها و رابط‌های برنامه‌نویسی نرم‌افزار (API)، توسعه‌دهندگان وب را قادر کرده تا وب اپلیکیشن‌هایی با قابلیت افزودن به صفحه‌ی خانگی سیستم‌عامل با امکان ارسال اعلان از سمت سرور (Push Notifications) و حتی عملکرد آفلاین توسعه دهند.

وب اپلیکیشن‌های پیش رونده در مقایسه با اپلیکیشن‌های بومی موجود در فروشگاه‌های نرم‌افزاری از مزیت اکوسیستم گسترده‌تر وب و پلاگین‌ها و آسودگی نسبی توسعه و حفظ وب‌سایت‌ها برخوردار هستند. اگر از جمله توسعه‌دهندگان وب‌سایت و اپلیکیشن محسوب ‌شوید، حتما می‌دانید که ساخت یک وب‌سایت با صرف زمان کمتری قابل انجام است و نیازی به حفظ قابلیت پس‌سازگاریِ (backwards-compatibility) رابط‌های برنامه‌نویسی وجود ندارد؛ زیرا برخلاف چندپارگی نسخه‌های اپلیکیشن‌های بومی، تمام کاربران نسخه‌‌ای یکسان از کد وب‌سایت را اجرا می‌کنند.

چه نیازی به وجود وب اپلیکیشن‌های پیش رونده وجود دارد؟

نتایج یک تحقیق نشان می‌دهد که کاربران معمولی تقریبا ۸۰ درصد از زمان خود را صرف استفاده از تنها ۳ اپلیکیشن می‌کنند. برای مثال، اکثر افراد معمولا از یک اپلیکیشن پیام‌رسان (تلگرام یا واتساپ)، یک مرورگر (کروم) و یک اپلیکیشن شبکه‌های اجتماعی (اینستاگرام، فیسبوک یا توییتر) بیش از دیگر اپ‌ها استفاده می‌کنند. دیگر اپلیکیشن‌ها نیز اکثر اوقات بلااستفاده باقی می‌مانند و تنها حافظه‌ی رم و حافظه‌ی داخلی گوشی را بی‌جهت مصرف و اشغال می‌کنند. علاوه بر این، هزینه‌ی توسعه‌ی یک اپلیکیشن در مقایسه با ساخت یک وب‌سایت برای ارائه‌ی همان سرویس، معمولا ۱۰ برابر بیشتر است. همچنین، در صورتی که توسعه‌دهنده قصد توسعه و حفظ بیس کد (پایگاه کد) مجزا برای پلتفرم‌های مختلف نظیر اندروید، آی‌اواس و وب را داشته باشد، این هزینه‌ها بیش از پیش افزایش خواهد یافت.

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

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

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

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

وب اپلیکیشن‌های پیش رونده واجد ویژگی‌ها زیر هستند:

پیش رونده (قابل استفاده در هر دستگاه و سیستم‌عامل): یک وب اپلیکیشن پیش رونده فارغ از نوع مرورگر و نوع دستگاه، برای تمام کاربران قابل استفاده است.

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

قابل پیونددهی (لینک‌دهی): وب اپلیکیشن‌های پیش رونده برخلاف اپلیکیشن‌های بومی نیازی به طی کردن مراحل پیچیده‌ی دانلود و نصب ندارند و اشتراک‌گذاری آن‌ها از طریق یک نشانی وب (URL) به راحتی امکان‌پذیر است.

انعطاف‌پذیر: رابط کاربری وب اپلیکیشن‌های پیش رونده خود را با هر نوع فرم فکتور اعم از موبایل و دسکتاپ و هر نوع اندازه‌ی نمایشگر تطبیق می‌دهد.

ظاهر اپلیکیشن‌وار: یک اپلیکیشن پیش رونده شباهت بی‌بدیلی به اپلیکیشن‌های بومی دارد، از رابط کاربری مشابه آن‌ها استفاده می‌کند و مسیریابی در آن‌ها تفاوتی با اپلیکیشن‌های معمولی ندارد.

بی‌نیاز از اتصال اینترنت: وب اپلیکیشن‌های پیش رونده در صورت ضعف اتصال اینترنت یا حتی به صورت آفلاین نیز قابل استفاده هستند.

درگیر کردن کاربر: احتمال آنکه کاربران اپلیکیشن‌های موبایل مجددا از اپلیکیشن‌های خود استفاده کنند بیشتر از احتمال مراجعه‌ی مجدد به یک‌ وب‌سایت است. وب اپلیکیشن‌های پیش رونده با استفاده از ویژگی‌هایی نظیر اعلان‌های سمت سرور(Push Notification)، این ضعف را جبران کرده‌اند.

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

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

ایمن: از آنجایی که وب اپلیکیشن‌های پیش رونده در بستر HTTPS قرار دارند، از مخاطرات امنیتی در امان هستند.

تاریخ انتشار : 1397/12/12

تعداد بازدید : 39 اشتراک گذاری در :