وباپلیکیشنهای پیشرو؛ ارتش اپهای آینده
چند هفته پیش خبری منتشر شد مبنی بر این که «مایکروسافت» اپلیکیشن هایی به نام «PWA» وارد ویندوز خواهدکرد. «وب اپلیکیشن های پیشرو» (Progressive Web App یا به اختصار PWA) نسل جدیدی از اپلیکیشن های تحت وب هستند که از نظر توسعه دهندگان، کارشناسان و تحلیلگران می توانند تحولی جدید در آینده اپلیکیشن های موبایلی ایجاد کنند.
مجله همشهری دانستنیها - حسین رحمانی: چند هفته پیش خبری منتشر شد مبنی بر این که «مایکروسافت» اپلیکیشن هایی به نام «PWA» وارد ویندوز خواهدکرد. «وب اپلیکیشن های پیشرو» (Progressive Web App یا به اختصار PWA) نسل جدیدی از اپلیکیشن های تحت وب هستند که از نظر توسعه دهندگان، کارشناسان و تحلیلگران می توانند تحولی جدید در آینده اپلیکیشن های موبایلی ایجاد کنند. در این مطلب به بهانه استقبال مایکروسافت از این وب اپلیکیشن های پیشرو، سراغ این نوع اپ ها رفته ایم و کوشیده ایم بررسی نسبتا جامعی درباره آن ها به دست دهیم.
اگر از کاربران اندروید باشید، احتمالا هنگام وب گردی هاتان با مرورگر کروم با یک یا چند وب اپلیکیشن پیشرو یا «PWA» مواجه شده اید. وب اپلیکیشن های پیشرو (که نباید آن ها را با اپ های موسوم به «Apps Instant» در اندروید اشتباه گرفت) از فناوری وبِ نسبتا جدید بهره می گیرند تا بوسایت های در حالت آف لاین یا با اینترنت کم سرعت عملکرد بهتری داشته باشند و معمولا برخی ویژگی های بومی اپلیکیشن ها، مانند «پوش نوتیفیکیشن» (Push notification)، را تقلید می کنند.
برای نمونه، توییتر و فلیپ بورد نسخه PWA دارند و ارگ با مرورگر کروم گوشی اندرویدتان وارد وبسایت آن ها شوید، به صورت خودکار پیشنهاد می کنند که آیکون آن ها روی صفحه خانه اندرویدتان قرار بگیرد. به این ترتیب، بدون دردسرهای معمول نصب اپلیکیشن، می توانند عملکرد یک اپ سبک را داشته باشند. مایکروسافت به تازگی اعلام کرده است که می خواهد از این فناوری بهره بگیرد. طبق اعلام این شرکت، قرار است وب اپلیکیشن هایی پیشرو (که نباید آن ها را با اپ های پلتفرم یکپارچه ویندوز اشتباه گرفت) همراه با نسخه جدید مرورگر «اج» راهی ویندوز ۱۰ شوند.
مایکروسافت همچنین گفته است که میخواهد دسته ای از وب اپلیکیشن های پیشرو را به «مایکروسافت استور» هم اضافه کند و توسعه دهندگان هم می توانند PWAهای خود را برای این فروشگاه بفرستند. در حال حاضر در آخرین بیلدهای اینسایدر ویندوز 10 (برای دسته خاصی از کاربران که به صورت آزمایشی از نسخه های جدید ویندوز استفاده می کنند) امکان استفاده از PWAها وجود دارد، ولی کاربران عادی برای دسترسی به این نوع اپ ها باید چند ماه دیگر صبر کنند. اپل هم در حال به روزرسانی موتور «Web Kit» مرورگر سافاری است تا در آینده ای نزدیک، قابلیت پشتیبانی از وب اپلیکیشن های پیشرو به مرورگر «سافاری» اضافه شود.
اپ موبایل یا وب موبایل؟
سال هاست که در میان توسعه دهندگان و گروهی از کاربران، بحث هایی درباره دوراهی نسخه موبایلی وبسایت ها یا اپلیکیشن های آن سرویس ها در جریان است. اما به تازگی راه حلی پیدا شده که با وارد کردن برتری های اپلیکیشن های موبایلی به مرورگرهای موبایل، مرزهای این دو را به یکدیگر نزدیک کرده است. در گوشی های هوشمند و تبلت های امروزی هم از نسخه های موبایلی وبسایت ها (یا اپلیکیشن های تحت وب) و هم از اپلیکیشن های مخصوص آن ها استفاده می شود، ولی این ها کاملا از یکدیگر مجزا هستند.
به نفع توسعه دهندگان
برای درک بهتر تفاوت این دو باید از چشم انداز وسیع تری به وضعیت کنونی سیستم عامل ها و اپلیکیشن ها نگاه کنیم. در یک دهه اخیر، سیستم عامل های موبایلی اندرویدی و آی او اس، به کمک مجموعه عظیمی از اپلیکیشن های مخصوصشان توانسته اند جهان سیستم عامل های موبایلی را فتح کنند؛ موفقیتی که یکی از دلایل عمده آن، محبوبیت و موفقیت اپ های بومی آن ها بوده است. این موضوع زمانی مشخص تر می شود که سرنوشت ویندوزفون را در نظر بگیریم؛ سیستم عاملی که همواره با مشکل فقر نرم افزاری مواجه بوده است و امروز عملا به تاریخ پیوسته است. در آن سوی میدان، «اپلیکیشن های تحت وب» (Web Application) ایستاده اند.
بیشتر سرویس هایی که کاربر از طریق آن ها امکان و یرایش متن را دارد (مانند سرویس های ای میل و پلتفرم های ویکی) و امکان دسترسی به آن ها از طریق مرورگر است، در زمره اپلیکیشن های تحت وب قرار می گیرند. این نوع اپلیکیشن ها در دوره حکمرانی بلامنازع کامپیوترهای دسکتاپ شکل گرفتند و در دوره اوج گرفتن گوشی های هوشمند، به رشد خود ادامه دادند. اپلیکیشن های بومی محدود به یک سیستم عامل هستند؛ به عبارت ساده تر، نمی توانید در سیستم عامل آی اواس، یک اپلیکیشن اندروید را نصب کنید. توسعه دهندگان این نوع اپلکیشن ها هم برای آن که بتوانند خدماتشان را در اختیار تعداد هرچه بیشتری از کاربران بگذارند، مجبورند اپلیکیشنشان را برای سیستم عامل های مختلف توسعه بدهند.
دردسرهای این چنینی باعث شده است اپلیکیشن های تحت وب بیش از گذشته در مرکز توجه قرار بگیرند. به ویژه این که با افزایش ضریب نفوذ و کیفیت اینترنت و توسعه فناوری های مدرن وب، اپلیکیشن های تحت وب قابلیت ها و ویژگی هایی یافته اند که می توانند با اپلیکیشن های بومی رقابت کنند. همین موضوع باعث شد تا «گوگل» در سال 2015 (1394)، وب اپلیکیشن های پیشرو را معرفی کند تا امکان ارائه قابلیت های اپ های مدرن در قالب اپلیکیشن های تحت وب فراهم شود. در حال حاضر این گونه جدید از اپلیکیشن های تحت وب در آغاز راه است و هنوز همه مرورگرها از آن پشتیبانی نمی کنند. همچنین PWAها هنوز به قابلیت هایی مانند دسترسی به دوربین، جی پی اس و اسکن اثرانگشت مجهز نشده اند.
اپ هایی به کام کاربران
وب اپلیکیشن های پیشرو مزیت های زیادی برای کاربران دارند که ابتدایی ترین آن ها، سرعت بیشتر در مرور وب است. همچنین می توان به صورت آنی و بدون نیاز به نصب، از طریق مرورگر و در جاهائی مختلف (از جمله در مناطقی که اینترنت سرعت و کیفیت پایینی دارد) به این اپلیکیشن ها دسترسی داشت. همچنین می توان آن ها را روی صفحه خانه دستگاه های اندرویدی «ذخیره» کرد تا امکان دسترسی به آن ها ساده تر شود. به این ترتیب می توان حتی بدون نیاز به باز کردن مرورگر و نوشتن نشانی وب، به این اپلیکیشن ها دسترسی پیدا کرد.
«ایگور فالتسکی» (Faletski Igor)، مدیرعامل شرکت «Mobify» که ارائه دهنده راه حال های مبتنی بر وب اپلیکیشن های پیشرو است، می گوید: «PWAهایی که طراحی مناسبی داشته باشند، می توانند تا چهار برابر سریع تر از وبسایت های موبایلی دیگر در اختیار کاربر قرار بگیرند.» همچنین به گفته پیتر شلدون، وب اپلیکیشن های پیشرو از نظر کاربران مانند اپلیکیشن های بومی ای به نظر خواهندرسید که امکاناتی مانند سرعت بیشتر، رابط کاربری سبک تر و امکان کار کردن با وبسایت ها به صورت آف لاین را در اختیارشان می گذارند.
چالش های وب اپلیکیشن های پیشرو
یکی از مهم ترین چالش های پیش روی وب اپلیکیشن های پیشرو این است که در حال حاضر، همه مرورگرها (از جمله اینترنت اکسپلورر و سافاری) از PWAها پشتیبانی نمی کنند. همچنین در حال حاضر استفاده از این نوع اپلیکیشن ها تنها در دستگاه های اندرویدی امکان پذیر است. چالش بعدی این است که به صورت سنتی، منابع اصلی اپلیکیشن های موبایلی، اپ استورها هستند که به کاربران کمک می کنند بهترین اپلیکیشن ها را بیابند
و نظرها و امتیازهای دیگران درباره اپلیکیشن های مورد نظرشان را ببینند. همچنین این اپ استورها سطحی از کیفیت و امنیت را تضمین می کنند. وب اپلیکیشن های پیشرو، دست کم در حال حاضر، هیچ اپ استوری ندارند و در نتیجه کاربران ممکن است نتوانند به راحتی اپلیکیشن های مورد نیازشان را پیدا کنند و نسبت به کیفیت و امنیت این اپ ها مطمئن باشند.
چرا وب اپلیکیشن های پیشرو در آینده جایگزین اپ های امروزی می شوند؟
آماده باش برای فتح سیستم عامل ها
زمانی که گوشی های هوشمند وارد زندگی روزمره ما شدند، صاحبان و طراحان وبسایت ها می بایست نسخه ای موبایلی از وبسایتشان طراحی می کردند که در مقایسه با نسخه دسکتاپ، محتوای کمتری داشته باشند تا باز کردن آن ها روی مرورگر موبایل با سرعت و کیفیت بیشتری انجام شود. همین موضوع باعث شد کار مراقبت و نگهداری و توسعه وبسایت ها دو برابر شود. برای حل این مشکل، راه حل طراحی وب «ریسپانسیو» (respinsiv) یا «واکنشی» ارائه شد که البته این هم محدودیت های خودش را دارد.
اپ های بومی (اپ هایی که تنها برای یک سیستم عامل طراحی می شوند) هم هر چند این روزها متداول و مرسومند و به نظر نمی رسد که دورانشان به زودی به پایان برسد، ولی مشکلات و مسائل مشابهی را در برابر کاربران و توسعه دهندگان می گذارند. اما طی یکی دو سال گذشته، وب اپلیکیشن های پیشرو رو به پیشرفت بوده اند و عده ای معتقدند که با توجه به ویژگی های خاصشان، می توانند مشکلات طراحی وب ریسپانسیو و اپ های بومی را حل کنند.
یک وب اپلیکیشن پیشرو می تواند از طریق مرورگر گوشی تجربه ای مشابه کار با اپ های بومی در اختیار کاربر بگذارد و به همان اندازه انعطاف پذیر و راحت باشد. همچنین از آن جا که این اپلیکیشن ها از طریق مرورگر در اختیار کاربر قرار می گیرند، محدود به دستگاه خاصی نیستند و توسعه دهندگان مجبور نیستند نسخه های مختلفی از اپلیکیشنشان را برای پلتفرم های مختلف (اندروید، آی او اس، ویندوز و...) به صورت جداگانه توسعه بدهند. دلایل زیادی وجود دارد که بگوییم وب اپلیکیشن های پیشرو یک ترند زودگذر نیستند و می توانند به آینده طراحی اپلیکیشن تبدل شوند؛ شاید مهم ترین این دلایل دسترسی ساده تر کاربران باشد. یک اپ معمولی را در نظر بگیرید؛
کاربر برای استفاده از این اپ باید وارد اپ استور شود، اپلیکیشن مورد نظر را پیدا کند، آن را دانلود و نصب کند و دسترسی های لازم را به آن اپ بدهد تا در نهایت بتواند آن اپ را باز کند. اما برای دسترسی به یک وب اپلیکیشن پیشرو کافی است وبسایت مورد نظر را به کمک جست و جوی گوگل پیدا و روی لینک آن کلیک کنید تا بدون نیاز به دانلود و نصب چیزی، با آن اپلیکیشن کار کنید. نکته مهم دیگر برای کاربران این است که وب اپلیکیشن های پیشرو عملا فضایی از حافظه ذخیره سازی دستگاهشان را اشغال نمی کنند و لازم نیست هر وقت که به فضای بیشتری نیاز دارند، مجبور شوند اپلیکیشن های اضافی را پاک کنند.
انعطاف پذیری بالا
وقتی یک وب اپلیکیشن پیشرو را در مرورگر موبایلتان باز می کنید، می توانید انتظار داشته باشید که با یک رابط کاربری اپ های معمولی مواجه می شوید. رابطی که در بسیاری از موارد می تواند مانند رابط کاربری اپ های عادی عمل کند و با استفاده از ژست های حرکتی معمول می توان با آن کار کرد. حتی می توان در وب اپلیکیشن های پیشرو، امکاناتی مانند مدیریت اطلاعات کاربر، خرید آنلاین و ارسال پوش نوتیفیکیشن را هم انجام داد.
همچنین این امکان وجود دارد که آیکون این اپلیکیشن ها هم روی صفحه اصلی گوشی قرار بگیرد تا به عنوان میان بری برای دسترسی به آن ها عمل کند و حتی نیازی به باز کردن مرورگر نباشد. به این ترتیب می توان بسیاری از امکانات و ویژگی های اپ های معمولی را از طریق وب اپلیکیشن های پیشرو ارائه داد، بدون آن که به نصب مستقیم آن ها روی گوشی نیاز باشد.
سرعت، دسترسی آف لاین و دیگر قضایا
وقتی سرعت بارگذاری اطلاعات و دسترسی کاربران را در نظر بگیریم، وب اپلیکیشن های پیشرو عملکرد درخشانی را از خود نشان می دهند. این عملکرد مناسب در واقع به لطف «سرویس ورکرها» (Service Workers) امکان پذیر می شود. سرویس ورکرها از نظر فنی، اسکریپت هایی جاوایی هستند که مرورگر آن ها را به صورت مستقل از صفحه های وب و در پس زمینه سیستم عامل اجرا می کند. وظیفه اصلی سرویس ورکرها هم این است که قابلیت هایی را که نیازمند به تعامل کاربر یا صفحه های وب نیستند (مانند همگام سازی پس زمینه و پوش نوتیفیکیشن ها یا اعلان های سمت سرور)، امکان پذیر می کنند.
زمانی که یک وبسایت مبتنی بر PWA برای نخستین بار روی گوشی باز می شود، سرویس ورکرها می توانند اطلاعات آن سایت را روی گوشی ذخیره کنند تا در بازدیدهای بعدی امکان دسترسی سریع به این اطلاعات وجود داشته باشد. به خاطر همین قابلیت، در بازدیدهای بعدی، سرعت بارگذاری این وبسایت ها بالاتر خواهدبود و حتی در حالت آف لاین هم می شود به صفحه های ذخیره شده قبلی دسترسی داشت.
به روزرسانی سریع
یکی دیگر از مهم ترین ویژگی های وب اپلیکیشن های پیشرو این است که به واسطه ای به نام اپ استور نیاز ندارند (موضوعی که البته جنبه هایی منفی هم دارد که قبلا به این جنبه ها اشاره شد) این موضوع علاوه بر این که هزینه های استفاده از اپ استورهای مختلف را برای توسعه دهندگان پایین می آورد، این امکان را هم ایجاد می کند که به روزرسانی این اپلیکیشن ها سرعت و یکپارچگی بیشتری پیدا کند. برای نمونه، اگر توسعه دهنده ای اشکال یا باگی در ساختار اپلیکیشن بومی خود پیدا کند،
باید پس از رفع این اشکال، نسخه جدید را برای گوگل و اپل بفرستد و چند روز منتظر بماند تا این نسخه جدید تایید شود. سپس این به روزرسانی جدید در دسترس کاربران خواهدبود. همچنین ممکن است چند روز دیگر طول بکشد تا کاربر این نسخه جدید را دریافت و نصب کند. این در حالی است که توسعه دهندگان یک وب اپلیکیشن پیشرو می توانند تقریبا به صورت فوری، نسخه جدید و رفع اشکال شده اپلیکیشنشان را جایگزین نسخه قبلی کنند. آن هم بدون آن که نیاز به کار خاصی از طرف کاربر باشد.
حرف آخر
همان طور که قبلا اشاره کردیم، اپلیکیشن های امروزی که به اپلیکیشن های بومی معروفند، به این زودی ها جایی نمی روند. اما به نظر می رسد جنبش بزرگی در زمینه فناوری وب اپلیکیشن های پیشرو در حال وقوع است و دیر یا زود فروشگاه های آن لاین، سایت های استریم ویدئو و موسیقی، شبکه های اجتماعی و انواع اپلیکیشن های محبوب دیگر به سوی استفاده از این فناوری خواهندرفت تا خدمات رسانی آن ها با نیازها و رفتارهای کاربران سازگاری بیشتری داشته باشد.
فالتسکی می گوید: «تاکنون شرکت های بزرگی مانند «پینترست»، «تیندر»، «اوبر» و «استارباکس» وب اپلیکیشن های پیشرو خود را در دسترس کاربران گذاشته اند که با موفقیت های درخشانی همراه بوده است. به همین دلیل انتظار می رود در آینده نزدیک شاهد رشد عظیمی در توسعه و استفاده از PWAها باشیم. همچنین می توان انتظار داشت رفته رفته وب اپلیکیشن های پیشرو به قابلیت های جدیدتری مجهز شوند و عملکردشان بیش از پیش به عملکرد اپلیکیشن های بومی نزدیک شود.»
جسارت به سبک مایکروسافت
ایده «مایکروسافت» برای استفاده از وب اپلیکیشن های پیشرو ایده هیجان انگیزی است. این نقطه عطفی است که شاید از مدت ها پیش کارشناسان منتظرش بودند و سرانجام قرار است همراه با به روزرسانی «Redstone ۴» ویندوز ۱۰ در بهار آینده در اختیار کاربران قرار بگیرد. مایکروسافت که زمانی نه چندان دور، یک غول نرم افزاری منزوی بود و تقریبا هیچ کدام از پلتفرم های نرم افزای دیگری را به جزیره تنهایی خودش راه نمی داد، در دوران مدیرعاملی «ساتیا نادلا» دگرگون شده است. مایکروسافت اکنون با چنان سرعتی به سوی سازگاری با پلتفرم های متن باز و استانداردهای دیگر حرکت می کند که برخی کارشناسان حوزه فناوری را شگفت زده کرده است.
بخشی از این تغییر و تحول در استراتژی های این شرکت، عبارت است از در آغوش گرفتن فناوری هایی که خود این شرکت پدیدآورنده آن ها نبوده است. هدف اصلی مایکروسافت از این کار هم این است که با جامعه توسعه دهندگان نرم افزار بیشتر از گذشته سازگار شود. همچنین با یکپارچه تر شدن پلتفرم ویندوز با پلتفرم های دیگر، این امکان وجود دارد که پای اپلیکیشن های بیشتری به ویندوز باز شود. برای نمونه، با توسعه وب اپلیکیشن های پیشرو، «گوگل» مهم ترین اپلیکیشن های تحت وب خود (جی میل، تقویم گوگل، گوگل داکس و...) را به PWA تبدیل خواهدکرد
و در نتیجه امکان استفاده از آن ها در پلتفرم های مختلف، از جمله ویندوز، به وجود خواهدآمد. یکی دیگر از مزیت های استفاده از وب اپلیکیشن های پیشرو برای مایکروسافت، ساده تر شدن فرایند توسعه و پشتیبانی از بعضی از نرم افزارهاست. برای نمونه، در حال حاضر نرم افزار «Outlook» مایکروسافت، ۱۷ نسخه مختلف دارد، اما اگر مهندسان مایکروسافت بتوانند این نرم افزار را به یک وب اپلیکیشن پیشرو تبدیل کنند، آن وقت نسخه واحدی از آن می تواند در اختیار پلتفرم های مختلف قرار بگیرد.
در هر حال باید توجه داشته باشیم که وب اپلیکیشن های پیشرو تازه در آغاز راهند و شاید هنوز مشکلات و دردسرهای آن ها خودنمایی نکرده باشند، اما امکانات و قابلیت هایی در اختیار می گذارند، می توانند در نهایت به نفع کاربران نهایی تمام شوند و انعطاف پذیری هایی را داشته باشند که در حال حاضر وجود ندارند. فعلا باید منتظر نسخه بعدی ویندوز ۱۰ بمانیم تا ببینیم وب اپلیکیشن های پیشرو در آن ویندوز چگونه عملکردی خواهندداشت.
نظر کاربران
خدا کنه پستان گرگ نداشته باشه که فیلتر میشه