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

– این اپلیکیشن رو نصب کن، خیلی خوبه!

+وایسا بگردم پیداش کنم تا نصب بشه، ای بابا این که برای دستگاه من عرضه نشده!

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

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

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

توسعه وب اپلیکیشن پیش‌رونده در گوگل

 

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

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

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

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

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

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

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

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

جفری برتوفت مدیر ارشد برنامه‌ریزی بخش توسعه اپلیکیشن مشترک مایکروسافت در مورد روند توسعه وب اپلیکیشن‌های پیش‌روند عنوان کرده:

ما حدودا یک سال و نیم پیش بود که با مدیران گوگل دیداری داشتیم تا مشخص شود آیا این دو راه حل (Westminster و PWA) مشابه هستند یا خیر… در نهایت ما تصمیم گرفتیم تا راهی واحد برای توسعه دهندگان وب ایجاد کنیم تا با استفاده از آن اپلیکیشنی بسازند که در تمامی پلتفرم‌ها قابل اجرا باشد.

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

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

درست مانند اندروید، ویندوز (و نه صرفا مایکروسافت اج) با وب اپلیکیشن‌های پیش‌روند، تعاملی مشابه با اپلیکیشن‌های بومی خواهند داشت. این قابلیت از به‌روزرسانی رد استون 4 ویندوز 10 که در ماه آوریل سال جاری عرضه خواهد شد، در دسترس قرار می‌گیرد. وب اپلیکیشن‌های پیش‌رونده درست مانند اپلیکیشن‌های یونیورسال از ویژگی‌هایی نظیر ادغام با کورتانا، پشتیبانی از کاشی زنده و … بهره خواهند برد. این اپلیکیشن‌ها از طریق مایکروسافت استور عرضه خواهند شد و امکان تشخیص آنها از یک اپلیکیشن بومی برای کاربران وجود نخواهد داشت.

آیا اپل هم همراه خواهد شد؟

منتقدان بر این باور هستند که اپل هرگز از پلتفرم PWA استقبال نخواهد کرد. اما اظهارات برخی مسئولان این شرکت کاملا در تناقض با این باور منتقدان است. جاناتان دیویس از مدیران کوپرتینویی در توییتی که تابستان سال 2017 میلادی منتشر شده، در پاسخ به پرسش کاربران در مورد پشتیبانی از این پلتفرم عنوان کرده:

بله، این (پروژه) در حال آغاز است.

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

به اعتقاد من از سال جاری وب اپلیکیشن‌های پیش‌رونده از سال جاری به شکل رایج توسعه اپلیکیشن‌ها تبدیل خواهند شد. پیش‌بینی می‌کنم که در کنفرانس‌های سال جاری مایکروسافت بیلد، گوگل I/O و کنفرانس جهانی توسعه‌دهندگان اپل شاهد رونمایی از نقشه‌های این شرکت‌ها برای توسعه پلتفرم PWA خواهیم بود.

فهرست کردن و جستجو در وب اپلیکیشن‌های پیش‌رونده

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

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

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

آینده‌ای با کامپیوترهای همواره متصل

با توجه به آنکه ویندوز 10 از به‌روزرسانی رد استون 4 از وب اپلیکشن‌های پیش‌رونده مانند اپلیکیشن‌های بومی پشتیبانی خواهد کرد، ابَر دستگاه موبایل مایکروسافت یا همان تبلت تاشوی معروف و دیگر دستگاه‌های مجهز به Windows Core OS از رشد پلتفرم PWA بهره خواهند برد. سرفیس فون خواه تا شده باشد یا آنکه در حالت تبلت استفاده شود یا آنکه به یک نمایشگر خارجی متصل گردد، پوسته تطبیقی ویندوز رابط کاربری دستگاه را جهت نمایش مناسب وب اپلیکیشن های پیش رونده تغییر خواهد داد. از این حیث کاربران در حالات مختلف امکان بهره‌مندی از قابلیت‌های دستگاه خود و وب اپلیکیشن‌های پیش‌رونده را خواهند داشت.

منبع :

WINDOWS CENTRAL

1093 پست
محسن توکلی نیا
او در رشته میکروبیولوژی به تحصیل پرداخته، اما علاقه وی به دنیای فناوری و به خصوص مایکروسافت، باعث فعالیت وی در این عرصه شده است. به ادبیات، عرفان، فناوری علاقه ی وافری دارد و سعی میکند اغلب اوقات فراغت خودش را صرف خدمت به خانواده و مطالعه شعر کند. محسن اکنون یکی از دبیران وبسایت وینفون است.
مطالب مرتبط
در مای نوکیا بخوانید
دیدگاه کاربران
ali
پاسخ دهید یکشنبه 1 بهمن 1396

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

برای نوشتن دیدگاه می توانید به حساب کاربری خود وارد شوید ورود ارسال نظر به صورت مهمان
برچسب ها: , , , , , ,