چگونه Baseline به شما کمک می‌کند جاوااسکریپت کمتری بنویسید (و سایت سریع‌تری بسازید)؟

چگونه Baseline به شما کمک می‌کند جاوااسکریپت کمتری بنویسید (و سایت سریع‌تری بسازید)؟

یادِ زمانی می‌افتید که برای هر کار کوچکی می‌گفتیم «حتماً باید یه کتابخونه براش نصب کنیم»؟ خب، اون دوران داره تموم می‌شه! فاصله بین «برای این کار به کتابخانه نیاز داری» و «خود مرورگر این کار رو انجام می‌ده» هر روز داره کمتر و کمتر می‌شه، و این یک خبر فوق‌العاده برای توسعه‌دهنده‌هایی‌ست که از حجم سنگین کدها خسته شده‌اند.

دقیقاً همین‌جاست که ابزاری به نام Baseline وارد بازی می‌شود؛ ابزاری که به شما می‌گوید کدام قابلیت‌های پلتفرم وب اکنون به بلوغ رسیده‌اند و می‌توانید به جای بارگیری پلی‌فیلل (polyfill) و کتابخانه‌های سنگین، مستقیماً از امکانات بومی مرورگر استفاده کنید. اما داستان فقط به یک نگاه کوتاه به مستندات ختم نمی‌شود؛ این مقاله در واقع یک راهنمای کاملاً عملی برای ممیزی (Audit) وابستگی‌های پروژه شماست.

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

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

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

پیش‌بینی می‌شود طی سال‌های آینده فاصله بین «نصب یک کتابخانه» و «استفاده از قابلیت بومی پلتفرم وب» تقریباً به صفر برسد و استانداردهایی شبیه Baseline به بخشی بدیهی از روند توسعه تبدیل شوند. در این مسیر، برندگان واقعی کاربران نهایی خواهند بود و تیم‌هایی زودتر سود می‌برند که ممیزی وابستگی‌های خود را همین امروز جدی بگیرند و کدهایشان را به جای انباشت ابزارهای خارجی، بر پایه استانداردهای باز وب بازنویسی کنند؛ روندی کند اما پیوسته که در نهایت تعریف «توسعه وب مدرن» را دگرگون خواهد کرد.

منبع: SmashingMagazine (مشاهده متن اصلی)