SPA چیست؟
زمان مطالعه 2 دقیقه
۱۵ مهر ۱۴۰۰
نویسنده پایدار سامانه
تعداد کامنت 0

اپلیکیشن تک صفحه ای یا SPA چیست؟

SPA که آن را برخی اسپا می خوانند مخفف عبارت Single-Page Application می باشد که همانطور که از نامش مشخص می شود برنامه تک صفحه ای و یا یک برنامه تحت وب و وب سایتی است که با بروزرسانی پویای یک صفحه وب داده های جدید را از سرور می گیرد و به جای استفاده از روش پیش فرض (بارگیری مجدد هر صفحه است و در هر لود نیاز به رفرش صفحه دارد) با تاخیر بسیار پایین و بدون رفرش صفحه و حتی تغییر آدرس صفحه با کاربر تعامل برقرار می کند.

روش پیش فرض مرورگر ها برای نمایش داده ها به کاربر بدین صورت است: هنگامی که کاربر یک صفحه وب را درخواست می کند، درخواست وی از طریق مرورگر به سرور ارسال می شود، سرور درخواست را دریافت و پردازش می کند، داده ها را از پایگاه داده دریافت می کند، یک صفحه HTML تولید می کند و نتایج درخواست کابر را در درون آن قرار می دهد و آن را به کاربر باز می گرداند تا به کاربر نمایش داده شود. در حین این عملیات صفحه بصورت کامل بروزرسانی (Refresh) می شود و نتیجه نهایی به کاربر نمایش داده می شود. این روش نیاز به بارگیری مجدد صفحه (Reload) دارد و هر بار که کاربر درخواست داده های جدید را می کند صفحات HTML ایجاد می شود و از همه چیز از ابتدا انجام می شود. ساخت اپلیکیشن های تحت وب به این روش سنتی را Multiple-page applications میگویند که بصورت مخفف MPA نیز استفاده می شود.

تفاوت SPA و MPA
تفاوت SPA و MPA

SPA چیست؟

اما در مورد روش SPA، مبتنی بر این است که بارگیری HTML و CSS فقط یک بار در ابتدا انجام می شود و حجم زیادی از کد ها و اسکریپت ها در همان لحظه اول دانلود و لود میشود، سپس هنگامی که کاربر با هر پیوندی ارتباط برقرار کند یا داده جدیدی درخواست می کند، مرورگر این داده ها را از طریق تکنولوژی AJAX یا Asynchronous Javascript و Xml درخواست می کند و سرور با استفاده از داده هایی به شکل JSON پاسخ را برمیگرداند، بنابراین مرورگر داده ها را در صفحه HTML از طریق JavaScript به روز می کند، در این حین دیگر صفحه Refresh نمی شود و بارگیری از ابتدا صورت نمی گیرد و فقط آن بخش مورد نیاز بروزرسانی و تغییر شکل خواهد داشت.

single page application چیست؟
single page application چیست؟

مزایا و ویژگی های SPA

Single Page Application ها تجربه کاربر بهتری را در اختیار بازدید کنندگان قرار می دهد زیرا در تبادل سریعتر و تعاملی تر است به دلیل اینکه نیازی به بارگیری مجدد صفحه ندارد.

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

API ارائه شده توسط سرور می تواند برای اجرا بر روی بیش از یک برنامه استفاده شود. به عنوان مثال، یک برنامه وب و یک برنامه تلفن همراه می توانند به طور موازی در همان API ارائه شده توسط Backend کار کنند.

معایب و چالش های SPA

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

اشتراک گذاری در شبکه های اجتماعی

دیدگاهتان را بنویسید

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *