صفحه اصلی / وبلاگ /
Vanilla JavaScript چیست؟

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

Vanilla JS فقط JS ساده است، بنابراین یک زبان برنامه نویسی مبتنی بر متن هم در سمت سرور و هم در سمت مشتری است. این فریم ورک در سال 2012 توسط اریک واستل ایجاد شد، و اگرچه این او نبود که این اصطلاح را ابداع کرد، وب سایت او آن را محبوب کرد. بنابراین به طور خلاصه، Vanilla Js به سادگی جاوا اسکریپت بدون هیچ چارچوب یا کتابخانه اضافی است.

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

می توانید Vanilla JS را در فیس بوک، گوگل، یوتیوب، یاهو، ویکی پدیا، ویندوز لایو، توییتر، لینکدین، ای بی، مایکروسافت، اپل، پینترست، پی پال، ردیت، نتفلیکس، Stack Overflow و تعدادی از وب سایت ها و پلتفرم های محبوب دیگر پیدا کنید.

بنابراین، تمام چارچوب ها و کتابخانه های جاوا اسکریپت بر اساس هسته Vanilla آن است. همه فریم ورک های مختلف اغلب بر اساس یک مجموعه از اصول جاوا اسکریپت یا دیگری هستند. اغلب توسعه دهندگان از جاوا اسکریپت ساده و بدون استفاده از چارچوب های JS یا کتابخانه های اضافی استفاده می کنند.

جالب اینجاست که فریم ورک Vanilla JS تقریباً ما را به یاد بستنی وانیلی می اندازد، زیرا فریمورک اصلاح نشده است و شما از محصول اصلی همانطور که هست استفاده می کنید بدون اینکه چیزی به آن اضافه کنید.

تنها کاری که شما انجام می دهید این است که از چارچوبی با اساسی ترین توابع API مفسر JS استفاده می کنید. طبیعتاً هر وب سایتی که از فریم ورک استفاده نمی کند باید به طور خودکار از VanillaJs استفاده کند و حتی اگر از فریم ورک استفاده نمی کند از ویژگی ها و الگوریتم های خاصی از VanillaJS استفاده می کند. این چارچوب همچنین به شما اجازه می دهد تا آزادی کاملی را برای اجرای هر معماری که می خواهید انجام دهید. شما همچنین می توانید این را با منطق کسب و کار خود، منطق دستکاری DOM و هر ابزار دیگری که می خواهید متصل کنید، ادغام کنید.

هر توسعه‌دهنده‌ای باید دانش کامل جاوا اسکریپت خالص داشته باشد و هر توسعه‌دهنده‌ای که استخدام می‌کنید باید دانش Vanilla JS را داشته باشد، به خصوص اگر عمدتاً در اکوسیستم جاوا اسکریپت کار می‌کند.

در اینجا Vanilla JS را با چند زبان دیگر بررسی می کنیم

Vanilla JS Vs React: زمانی که می توانید از چه چیزی استفاده کنید

Vanilla JS به شما کمک می کند تا برنامه های قدرتمند بین پلتفرمی بسازید و غیره React، به لطف انعطاف پذیری و کیفیت عملکرد، یکی از محبوب ترین کتابخانه های JS است. React می تواند UI را به اجزای کوچکتر و قابل استفاده مجدد تقسیم کند که می توانند در مقابل یکدیگر حرکت کنند. و این ویژگی است که به عنوان یک مزیت برنده نسبت به VanillaJS عمل می کند. برای JS، اگر برنامه بزرگ باشد، حفظ کد بسیار دشوار می شود. در چنین مواردی، UI باید به طور منظم به روز شود.

و این تمام نیست. برای تغییر عنصر UI، ابتدا باید عنصر را در DOM پیدا کنید و سپس آن را به روز کنید. زمانی که مجبور باشید فقط یک عنصر را تغییر دهید، ممکن است خسته کننده باشد. React یک DOM مجازی دارد و به دور زدن کار دستی کمک می کند. بنابراین به طور خلاصه، با Vanilla JS، همگام نگه داشتن رابط کاربری می تواند سخت و پر زحمت باشد.

Vanilla JS در مقابل jQuery

همانطور که قبلا توضیح داده شد، با آمدن Vanilla JS، توسعه دهندگان توانستند وب سایت های پویا ایجاد کنند. وقتی جی کوئری وارد شد، تعدادی ابزار نیز با استفاده از جاوا اسکریپت وارد شدند. jQuery سبک وزن است و با استفاده از کتابخانه JS آسان، ایجاد قابلیت های پیچیده با چند خط کدنویسی آسان است. بسیاری از کارها را برای توسعه دهنده ساده می کند، مانند مدیریت داده های JSON از سرور، اضافه کردن افکت های انیمیشن مانند پنهان کردن، نمایش و غیره، به دستکاری CSS، ایجاد درخواست های AJAX و موارد دیگر.

با jQuery، بسیاری از کارها می تواند برای توسعه دهندگان تازه کار آسان تر باشد، اما هیچ قانونی وجود ندارد که بگوید کجا از Vanilla JS و کجا از jQuery استفاده کنید. با این حال، iQuery صرفه جویی زیادی در زمان دارد زیرا دارای چندین عملکرد از پیش نوشته شده است که فقط باید اصلاحات لازم را برای آنها انجام داد.

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

اگر به دنبال سازگاری با چند مرورگر هستید، احتمالاً خطاهای مربوط به مرورگر با JS رخ می دهد. اما در مورد jQuery، این مشکل نیست، زیرا با انواع مرورگرها کار می کند. هیچ مشکل سازگاری وجود نخواهد داشت.

در واقع، هیچ قانون خاصی در استفاده از جاوا اسکریپت و جی کوئری وجود ندارد. اما توسعه دهندگان می گویند که jQuery در مقایسه با جاوا اسکریپت برای دستکاری DOM بهتر است. با این حال، نقطه مثبت Vanilla JS بسیار سریعتر از jQuery است. با این حال، توسعه دهندگان تازه کار ممکن است برای نوشتن عملکردهای پیچیده با Vanilla JS مشکل پیدا کنند.

برای JS، تمام کدنویسی باید از ابتدا انجام شود و توسعه دهندگان تازه کار ممکن است آن را دشوار و زمان بر بدانند. از طرف دیگر، jQuery چندین عملکرد از پیش نوشته شده دارد و زمانی که تغییرات لازم انجام شود، قطعاً می تواند در زمان صرفه جویی کند.

وقتی این دو را با هم مقایسه می کنید، Vanilla JS بسیار سریعتر از jQuery است و بسته به عملکرد، حتی می تواند 10 تا 25 برابر سریعتر باشد.
وانیل جی اس در مقابل انگولار جی اس

Angular JS ابزاری در Javascript MVC است، در حالی که Vanilla تحت کتابخانه های Javascript UI قرار دارد. برخی از توسعه دهندگان می گویند وقتی بارگذاری و عملکرد اولیه را در نظر می گیریم Vanilla JS برتر است، بنابراین اگر به دنبال توسعه یک برنامه با ضریب عملکرد در اولویت هستید، می توانید Vanilla JS را انتخاب کنید.

نتیجه

Vanilla JS عالی است و حتی به شما امکان می دهد صفحات وب پویا ایجاد کنید. اما زمانی که به دنبال یک اپلیکیشن عظیم و پیچیده با قابلیت های پیچیده و دارای هزاران صفحه هستید، بهتر است به سراغ فریمورک های مدرن جاوا اسکریپت بروید.

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

تسلط به Vanilla JS همیشه جابجایی به jQuery را آسان‌تر می‌کند، اگرچه سوئیچ ممکن است خیلی روان نباشد.

 

توجه : اطلاعات شما در دنیار وب محفوظ می ماند