آیا تاکنون نام پلتفرم PWA را شنیده اید؟ آیا میدانید چه شرکتی پشت آن قرار دارد؟ نکته جالب پیش از بررسی این سوالات این است که مایکروسافت تنها شرکتی نیست که پشت این پلتفرم ایستاده است، نکته دیگری که اهمیت زیادی دارد تاثیر این پلتفرم بر آینده پلتفرم یونیورسال است که در ادامه به بررسی آن خواهیم پرداخت.
مایکروسافت اخیرا اعلام داشت که پشتیبانی از Progressive Web Apps بهزودی به مایکروسافت اج افزوده خواهد شد. البته این تمام ماجرا نیست چرا که برخی از اپلیکیشن هایی نظیر ترلو و اسلک که وارد ویندوز استور شده اند، با ادغام PWA و Electron و عناصر پلتفرم یونیورسال ویندوز ایجاد شده اند.
اما چرا پلتفرم PWA بهصورت بومی نیست؟ چه آینده ای در انتظار پلتفرم یونیورسال است؟ علت گرایش مایکروسافت و دیگر شرکت های دنیای فناوری نظیر گوگل و اپل به PWA چیست؟
چه شرکتی پشت PWA است؟
باید بدانیم که مایکروسافت تاکنون بزرگترین پشتیبان PWA نبوده است، البته این مسئله همانطور که در این نوشتار بررسی خواهیم کرد، در حال تغییر است. اما باید بدانیم که برای اولین بار گوگل بود که در سال 2015 چارچوب ها و اصولی را در این عرصه تعریف کرد. الکس راسل یکی از مهندسان پشت گوگل کروم در مقاله ای جنبش نرم افزاری PWA را شرح داد. اهالی ساکن مانتین ویو برای اولین بار چشم اندازی یکپارچه را از آینده PWA در این مقاله ترسیم کردند.
در حال حاضر مرورگر کروم تنها مرورگری است که از PWA پشتیبانی میکند، اما مایکروسافت اعلام داشته که بهزودی مرورگر اج نیز از این پلتفرم پشتیبانی خواهد کرد.
تمامی این اخبار غافلگیر کننده هستند، چرا که گوگل مانند مایکروسافت مشکلی از بابت خلا نرم افزاری در استور خود ندارد، اما با این حال اولین شرکتی است که مجدانه پشتیبانی از PWA را آغاز کرده است. مایکروسافت هم شرکتی است که از این پلتفرم بهرهمند خواهد شد. پیش از این در کنفرانس بیلد 2016 مایکروسافت مفصل در مورد اپلیکیشن هایی برای همه کارها سخن بهمیان آورد. این مسئله شاید در حال حاضر پندان ملموس نباشد، اما در آینده نزدیک به لطف هوش مصنوعی، PWA، قدرتمندتر شدن سخت افزار دستگاه ها(گوشی های هوشمند و کامپیوترهای جیبی)، پردازش ابری و نفوذ بیش از پیش اینترنت 4G سهل الوصول تر خواهد بود.
PWA چیست؟
Progressive Web Apps یا PWA چیزی بیش از اپلیکیشن های تحت وب کلاسیک هستند و در عین حال تفاوت هایی با اپلیکیشن های کاملا بومی دارند. اپلیکیشن های تحت وب در واقع صرفا مرورگری هستند که در یک پنجره بسته بندی شده اند، این دسته از اپلیکیشن ها فاقد ویژگی هایی نظیر ادغام با سیستم عامل (به تبع آن بهرهمندی از ویژگی هایی نظیر اعلانات)، همگامسازی اطلاعات در پس زمینه و مهمتر از همه امکان استفاده بهصورت آفلاین هستند.
این در حالی است که PWAs تمامی این مشکلات را برطرف میسازد، اما در عین حال همچنان وابستگی زیادی به وب دارند. بخش عمده ای از این مزیت بهواسطه Cache و Push APIs میسر شده که در نهایت باعث رضایت بخشی استفاده از این دسته اپلیکیشن ها شده است.
ضوابط و معیارهای مشخصی برای ایجاد یک اپلیکیشن PWA وجود دارد که البته اجرایی شده این دسته از اپلیکیشن ها نیازمند برخی فناوری های همگام کننده به شرح زیر است:
- HTML5, JavaScript و Service Workers
- وجود اینترنت پرسرعت و کم هزینه 4G LTE
- پردازنده های قوی که قادر به نمایش و بارگذاری اطلاعات باشند.
گوگل معیارهای PWA را اینگونه شرح داده است:
- مترقی: فارغ از مرورگر انتخابی برای هر کاربری قابل استفاده هستند چرا که بر پایه یک اصول مرکزی واحد ایجاد شده اند.
- کاملا واکنشی: مناسب هر دستگاهی با هر قالب و شکلی اعم از دسکتاپ، موبایل، تبلت یا هر دستگاهی که در آینده عرضه شود، خواهند بود.
- بینیاز از اتصال به اینترنت: Service Workers امکان اجرای اپلیکیشن بهصورت آفلاین یا بر بستر اینترنت ضعیف را نیز فراهم میسازد.
- ظاهری مشابه اپلیکیشن های امروزی: بهواسطه رابط کاربری و تعاملی مشابه اپلیکیشن ها، حسی مشابه اپلیکیشن های امروزی را به کاربر منتقل میکنند.
- همیشه بهروز: بهلطف فرآیند بهروزرسانی سرویس گونه همواره بهروز خواهند بود.
- امن: بر بستر HTTPS امکان تجسس گرفته میشود و از دستکاری محتوای اپلیکیشن جلوگیری خواهد شد.
- قابل شناخت بودن: با توجه به بیانیه W3C اپلیکیشن های PWA مانند اپلیکیشن های معمولی قابل شناسایی خواهند بود و امکان جستجو و یافتن آنها در موتورهای جستجو وجود خواهد داشت.
- اطلاع رسانی خوب: برخورداری از اعلانات درست مانند اپلیکیشن های بومی.
- قابلیت نصب در همه جا: این اپلیکیشن ها امکان نصب اپلیکیشن های دلخواه کاربر را بدون نیاز به یک استور فراهم میسازند.
- قابل اتصال: بهراحتی از طریق یک لینک به اشتراک گذاشته میشوند و نیازی به فرآیندهای پیچیده نیست.
در حقیقت PWAs را باید اپلیکیشن های هیبریدی تحت وب دانست. اگر این ایده برای شما آشنا است، اصلا عجیب نیست، چرا که پل دسکتاپ مایکروسافت که با نام پروژه سنتنیال نیز شناخته میشود نیز در حقیقت یک سیستم هیبریدی متشکل از برنامه نویسی کلاسیک وین 32 و APIs مدن اپلیکیشن های یونیورسال است. در دنیای امروز اپلیکیشن های هیبریدی که چندین پلتفرم را بههم پیوند میدهند و قابلیت های آنها را ادغام میکنند، مواردی هستند که رواج بسیاری پیدا کرده اند و البته در آینده بیشتر از آنها خواهیم شنید.
مثالی از یک اپلیکیشن PWA (و نگاهی به تاثیر بسیار مثبت پلتفرم یونیورسال ویندوز بر آن)
یکی از برجسته ترین اپلیکیشن های مدرن PWA توییتر است. اگر شما به آدرس mobile.twitter.com با گوشی هوشمند یا حتی کامپیوتر خود مراجعه کنید (مهم نیست از چه مرورگری استفاده میکنید) در آنجا میتوانید ظاهر و کلیت یک اپلیکیشن PWA را در قالب یک وبسایت مشاهده کنید.
حال کافی است تا آن وبسایت را بهصورت یک فایل Microsoft APPX بسته بندی کرده و آن را در استور قرار دهید. اکنون شما یک اپلیکیشن توییتر جدید دارید که از اعلانات پشتیبانی کرده و تجربه کاربری مشابه اپلیکیشن های بومی ارایه میکند. پلتفرم یونیورسال مایکروسافت قادر است ماهیت این دسته از اپلیکیشن ها را حتی بهتر سازد، چرا که این پلتفرم قادر است تا پشتیبانی از اعلانات در اکشن سنتر، کاشی های زنده، ادغام با کرتانا و گزینه بهاشتراک گذاری مدرن را برای PWA فراهم آورد.
البته این تمام ماجرا نیست چرا که اینگونه اپلیکیشن ها از مواردی نظیر دریافت آنی بهروزرسانی ها و قابلیت کار بهصورت آفلاین بهرهمند هستند. در عین حال که اپلیکیشن های PWA-UWP بهلطف ویندوز استور امکان بهروزرسانی سریع را دارا هستند، اما با توجه به اینکه بخش عمده ای از محتوای این اپلیکیشن ها پویا است، توسعه دهنده قادر است بهصورت آنلاین و به محض آنلاین شدن کاربر تغییراتی در اپلیکیشن ایجاد سازد. از سوی دیگر همانطور که در بالا ذکر شده به لطف پشتیبانی از پروتوکل HTTPS و قرارگیری اپلیکیشن در استور، کاربران از بابت امنیت این دسته از اپلیکیشن ها میتوانند کاملا خاطر جمع باشند.
چرا اقبال غول های فناوری به اپلیکیشن های PWA بالا است؟
پاسخ به این سوال که چرا موج جدیدی بهسوی اپلیکیشن های PWA ایجاد شده تا حدی دشوار است، چرا که در این عرصه سه بازیگر مهم مشغول فعالیت هستند: شرکت ارایه دهنده سرویس یا در واقع خود سرویس، توسعه دهنده اپلیکیشن و دست آخر مشتریان. اپلیکیشن های PWA بر تمامی این سه ضلع مثلث تاثیراتی دارند که البته تمامی جنبه های این تاثیر مثبت نیست.
اولین و بارزترین توجیهی که اپلیکیشن های PWA دارا هستند بحث مالی و کاهش هزینه ها است. پایه حقوق یک توسعه دهنده حرفه ای سالانه 50.000 دلار است که البته این میزان ابتدایی است. بسیاری از شرکت های بزرگ که اپلیکیشن های پیچیده و حرفه ای را ارایه میکنند، نه یک توسعه دهنده بلکه تیمی از توسعه دهنده های حرفه ای را در اختیار دارند، که پرداخت حقوق آنها هزینه ای چند صد هزار دلاری روی دست شرکت میگذرد. البته شرکت های بزرگی نظیر آمازون، اسپاتیفای و Yelp قادر هستند این هزینه را تامین کنند، اما مطمئنا یک رستوران محلی، بنگاه فروش خودرو یا گل فروشی کوچک محله شما قادر به تامین حقوق چنین توسعه دهندگانی نیست.
سهولت ساخت اپلکیشن های PWA باعث میشود تا فضای آزادتری برای بسیاری از مشاغل ایجاد شود تا آنها نیز بتوانند اپلیکیشن های مرتبط با کسب و کار خود را در استورهای مختلف ارایه دهند و تجارت خود را رونق دهند.
ضلع دیگر این مثلث توسعه دهندگان هستند، ایجاد اپلکیشن های PWA بهمراتب سادهتر از کدنویسی یک اپلیکیشن بومی است. البته شاید این مسئله باعث کاهش درآمد توسعه دهندگان نیز گردد، چرا که شرکت ها دیگر نیاز به تیمی بزرگ برای ساخت اپلیکیشن بومی نخواهند داشت و این مسئله مطمئنا بر میزان اشتغال و درآمد کدنویسان تاثیرات منفی خواهد داشت.
اما قسمت نهایی این مسئله مشتریان هستند، این تغییر و نتایج این برای مشتریان تاحدی پیچیده است، چرا که کیفیت تجربه کاربری در اپلیکیشن های PWA تا حدی زیادی به توسعه دهنده مرتبط است، برای مثال نگاهی به اپلیکیشن ترلو داشته باشید، این اپلیکیشن تجربه ای بسیار خوشایند را برای کاربران فراهم آورده است، اما احتمالا تا بهبود عمومی کیفیت اپلیکیشن های PWA و انطباق کامل تجربه کاربری آنها با اپلیکیشن های بومی هنوز زمان مانده است.
برای برخی مشاغل نظیر فروش گل، کرایه خودرو، بلیت اتوبوس یا در یک رستوران محلی اپلیکیشن های PWA کاملا مناسب هستند، چرا که کاربران زمان زیادی را در طی روز روی این دسته از اپلیکیشن ها نمیگذارند و بنابراین بومی نبودن این اپلیکیشن ها مشکلی برای کاربران ایجاد نخواهد کرد.
بهبود کیفیت اپلیکیشن های PWA برای کاربران نیاز به زمان بهتری دارد، اما در حال حاضر و با کیفیت فعلی اپلیکیشن های PWA کاربران میتوانند تجربه نسبتا نزدیکی به اپلیکیشن های بومی داشته باشند، یک مثال دیگر برای اپلیکیشن های PWA اپلیکیشن یونیورسال Clatter است. این اپلیکیشن پیام رسان به کاربر اجازه میدهد تا یکجا اپلیکیشن های پیام رسان مختلف خود نظیر اسکایپ، GroupeMe، اسلک، Google Hangouts، واتس اپ و موارد مشابه را از طریق سرویس های تحت وب کنترل کند. توسعه چنین اپلیکیشنی هزینه بسیار کمی را در پی دارد و تجربه کاربری اصلا بد نیست، و مطمئنا با بهبود استانداردهای وب این تجربه بهتر نیز خواهد شد.
در این میان شرکت های صاحب موتورهای جستجو نظیر گوگل و مایکروسافت نیز بهره ویژه ای خواهند برد، چرا که کارکرد اپلیکیشن های PWA مانند سایت ها است، و البته این مسئله برای سایت های خبری که اپلیکیشن خود را توسعه داده اند نیز بسیار مفید خواهد بود، چرا که با توسعه یک اپلیکیشن بومی این سایت ها ترافیک وب خود را از دست میدهند ما این مسئله در مورد اپلیکیشن های PWA صدق نمیکند.
درنهایت باید اشاره کنیم که مایکروسافت نیز از این تغییر بهره خواهد برد، چرا که اپلیکیشن های بیشتری در مایکروسافت استور قرار خواهد گرفت.
قالب اپلیکیشن ها در حال تغییر است
در دنیای فعلی که بیشتر کارهای اینترنتی کاربران با اپلیکیشن ها انجام میگیرد، استورهای شرکت هایی نظیر گوگل، اپل و مایکروسافت مهمترین محل رجوع کاربران برای دریافت اپلیکیشن های هستند، بنابراین شرکتی که مایل به جذب بیشتر مشتریان است مجبور به ساخت یک اپلیکیشن است، هزینه ساخت اپلیکیشن بومی بالا است و در نتیجه شرکت ها و کسب و کارهای کوچک که قادر به تامین هزینه توسعه اپلیکیشن های بومی نیستند، امکان رقابت با رقبا را از دست داده اند.
مایکروسافت نیز با توجه به شرایط فعلی و تغییراتی که در بازار در حال وقوع است پشتیبانی از اپلیکیشن های PWA را در اولویت های خود قرار داده است. ادغام اپلیکیشن های PWA یا پلتفرم یونیورسال میتواندن بیش از پیش خلا اپلیکیشن های مایکروسافت استور را جبران کند. اپلیکیشن اسلک که در حال حاضر در مایکروسافت استور وجود دارد نمونه دیگری از این موارد است. با توجه به تصمیم مایکروسافت مبنی بر پشتیبانی مایکروسافت اج از اپلیکیشن های PWA مطمئنا در سال آتی میلادی شاهد حضور بیش از پیش اپلیکیشن های PWA در مایکروسافت استور باشیم.
560پست

محسن توکلیاو لیسانس میکروبیولوژی از دانشگاه آزاد تهران شمال دریافت کرده است. به ادبیات، عرفان، فناوری علاقه ی وافری دارد و سعی میکند اغلب اوقات فراغت خودش را صرف خدمت به خانواده و مطالعه شعر کند. محسن اکنون یکی از دبیران وبسایت وینفون است.
وینفون...
ما را در سایت وینفون دنبال میکنید
برچسب: مایکروسافت,پلتفرم,پشتیبانی, نویسنده: محمد رضا جوادیان بازدید: 212 تاريخ: شنبه 8 مهر 1396 ساعت: 0:58