برنامه نویسی اپیلیکشن های تحت وب (PWA)

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

 

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

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

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

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

 

تفاوت اپلیکیشن‌های بومی با اپلیکیشن‌های تحت وب

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

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

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

 

با توجه با توضیحات بالا باید متوجه اهمیت PWA شده باشید و نیاز کسب کارتان به چنین قابلیتی رو درک میکنید چون بیشتر مرد ایران امروزه همه ی خرید های خود را با گوشی انجام میدهند و اکثر وقت خود را با گوشی میگذرانند پس قطعا کسب و کار هایی که دارای PWA هستند نسبت به رقیبان خود چند پله بالاتر بوده و میتوانند از آنها پیشی بگیرند چرا مشتریان میل خرید با گوشی خیلی بیشتر از دیگر وسایل الکترونیکی میباشد و از همه مهتر با توجه به ویژگی cross-platform بودن اپلیکیشن های PWA دیگر نگران نوع گوشی خود هم نیستند.