تعیین کتابخانهها و کادر ورکهای جاوا اسکریپت موضوعی میباشد که ذهن اکثری از نوآموزان را مشغول مینماید. تنوع تعداد و گونه های این ابزار ها، ممکن میباشد شمارا یه خرده سرگردان نماید. کتابخانهها و قاب ورکهای جاوا اسکریپت هرکدام کاربرد خویش را دارا هستند و میتوانند در آن کاربرد، شایسته ترین باشند.
فراموش نکنید که هیچ کدام از این کتابخانهها و قاب ورکها شایسته ترین یا این که بدترین نیستند. بلکه تفاوت آنان در نقاط قوت و ضعفی میباشد که آن ها را برای استعمال خاصی مطلوبخیس مینماید. پیروی این نوشته ی علمی، با معرفی شایسته ترین کادر ورکهای جاوا اسکریپت، با ما یاور باشید.
تفاوت در میان Framework و کتابخانه چیست؟
کتابخانه و فریم ورک هر دو تعدادی کدها در گویشهای نرمافزار نویسی گوناگون میباشند که بوسیله پیشرفت دهندهها یا این که developerها درج شده، آزمایش گردیده و باصرفه گردیدهاند تا بقیه گسترش دهندهها از آنها در پروژهی خویش به کارگیری نمایند. در واقع غرض از ساخت قاب ورک و کتابخانه این می باشد که توشه چندین کدها را از دوش نرم افزار نویس بردارند. در بیشتر مواقع از این دو تحت عنوان یک مضمون استعمال میگردد چنانچه کهاین دو با یکدیگر تفاوت دارند.
کتابخانه یا این که Library
کتابخانه یک فایل میباشد که گروهای از کدها را باطن خویش داراست و هر فرصت در پروژه به روالها و توابع آن احتیاج بود، میتوان به راحتی آن را فراخوانی کرد. از جمله Jquery یک کتابخانه میباشد که در صفحه ها اینترنت برای طراحی یکسری جلوهها در قسمت Front-end به کارگیری میگردد. برای استفاده از کتابخانهی Jquery آغاز کدهای آن را از تارنما دانلود کرده، آنگاه با استفاده از تگ script آن را در مدرک HTML، بارگذاری میکنیم. و درپی هر جایی از پروژه که خواستیم، سیاقهای آن را فراخوانی میکنیم.
Framework یا این که چهار چوب
Framework به عبارتیطور که از نامش پیداست، یک چهارچوب میباشد. این بهاین مضمون میباشد، هنگامی که میخواهیم از یک قاب ورک در پروژهی خویش به کار گیری کنیم، چهارچوب و اسکلت بندی پروژه بر اساسی آن کادر ورک سازه میشود. در واقع قاب ورک برای برنامه نویس بستری را مهیا مینماید تا بتواند کدهای خویش را داخل آن بنویسد و این فریم ورک میباشد که تصمیم گیری مینماید کی و کجا از این کدها به کارگیری نماید.
در بهره در صورتیکه بخواهیم از کادر ورک در پروژه به کارگیری کنیم، می بایست در اولیهِ پروژه این شغل را اجرا دهیم در صورتیکه که از کتابخانه در هر مجال که شم نیاز کردیم، قادر خواهیم بود استعمال کنیم. همینطور از تعدادی قاب ورک هم زمان نمیتوانیم در یک پروژه استعمال کنیم. این در حالی می باشد که می توانیم از تعدادی کتابخانه به طور یکجا در پروژهی خویش به کارگیری کنیم.
کتابخانهها و قاب ورکهای Front-End اینترنت
نزدیک به سالهای 1999 این ایده که برنامه هایی مانند اپلیکیشنهای دسکتاپی در اینترنت ایجاد شوند صورت گرفت. این علاقه آنگاه بود که ابزارها و امکاناتی مانند ajax به دنیای اینترنت رویکرد پیدا کرد. در بالا می بایست این شغل با کدهای ناپخته جاوا اسکریپت اجرا میشد. طراحی سایت در مشهد یک فعالیت وقت گیر و مشقت بار! چرا که برای یک برنامه کودکان ساده بایستی چندین خط کد نوشته می شد.
آنگاه دفعه به کتابخانهها و فریم ورک هایی مانند JQuery، Mootools.js و Prototype.js رسید تا به میدان جاوا اسکریپت بیایند. اما آنان برای ادامه مسیر بسط اینترنت، نقطه ضعفهای اکثری داشتند. هنوز ترازو تکرار در کدها زیاد بود و برای وظایف خرد خطوط کد نسبتا متعددی نوشته می شد. رایا پارس براین اساس کتابخانهها و قاب ورکهای جاوا اسکریپتی قدرتمندی به میدان رقابت وارد شدند. درین قسمت از نوشته ی علمی قصد داریم تنی چند از این کتابخانهها و قاب ورکهای Front-End را به شما معرفی کنیم.
فریم ورک Angular.js
Angular.js یک قاب ورک جاوا اسکریپتی میباشد که با استفاده از آن می توانید کدهای HTML خویش را بی نیاز فرمایید. به عنوان مثال می توانید از تگهای جدیدی استعمال نمائید که خودتان تعریف می کنید. در وضعیت ساده برای تایپ کردن Front-end پروژهها شما با تعدادی تگهای HTML معمولی راز و عمل دارید. در صورتیکه بخواهید کاغذ خویش را تعاملی فرمایید مجبورید کهاین عمل را با استفاده از جاوا اسکریپت خام اجرا دهید. ولی با صرف وقت معمولا زیاد!
اما با عرضه فریم ورک Angular.js به وسیله گوگل، می توانید از گروهای از ابزارهای جاوا اسکریپتی به کار گیری نمایید. ahrefs با این فریم ورک شما میتوانید تحت معماری MVC، کدهای Front-end پروژه را بنویسید.
کتابخانه React
فکر کنید میتوانستیم هر ورقه اینترنت را به قسمتهای خرد تقسیم کنیم. هرکدام از آن نصیبها این قابلیت را داشته باشند که در پروژه بارها استفاده شوند. فارغ از اینکه ناچار باشیم هر توشه مجدد آنهارا کدنویسی کنیم. بگذارید نام این نصیبهای خرد را کامپوننت (Component) بگذاریم. ایدهی کتابخانهی React از طرف فیسبوک تولید شد و Component-Based است بهاین مضمون که به ما این قابلیت و امکان را میدهد، Componentهای محدود گردیدهای را تشکیل داد کنیم که state خویش را مدیریت نمایند، بعد آنانرا برای ایجاد کرد رابط کاربری غامض تهیه کنیم.
بعد از معرفی معنی کامپوننت و به کارگیری از آن توسط [ltr]Angular ،React [/ltr] در ورژنی دوم خویش از آن به کار گرفت. به این ترتیب مضمون کامپوننت مفهومی مشترک در میان این دو ابزار جاوا اسکریپتی می باشد. اما در این صورت تفاوت این دو ابزار در چه چیزی است؟ در واقع React صرفا یک کتابخانه نادر وسعت جاوا اسکریپتی میباشد. در حالی که Angular یک قاب ورک میباشد. این یعنی بر خلاف Angular در React برای اتصال کامپوننتها و… احتیاج به به کار گیری از ماژولهای جانبی داریم. مزیت این شغل آزادی در گزینش این ماژولهای جانبی میباشد. یعنی ما میتوانیم شایسته ترین ابزار و مطلوبترین آنان را نسبت به پروژهی خویش تعیین کنیم