کتابخانه‌ها علیه فریم‌وورک‌ها: تفاوت آن‌ها چیست؟

گردآوری و تالیف : عرفان کاکایی
تاریخ انتشار : 23 بهمن 1397
دسته بندی ها : آموزشی

گاهی اوقات من می‌بینم که واژه‌شناسی متبادل کتابخانه‌ها علیه فریم‌وورک، در دنیای فناوری برقرار است. حتی در درخواست‌های شغلی، می‌بینم که استخدام کنندگان jQuery‌ را یک فریم‌وورک می‌نامند، درحالیکه در واقع یک کتابخانه است. پس تفاوت آن‌ها چیست؟

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

گرچه طبق این تعریفات، هیچ کس نمی‌تواند موافقت کند که React.js یک کتابخانه است، یا یک فریم‌وورک. Facebook از React.js به عنوان یک کتابخانه نگهداری می‌کند، اما بسیاری تصور می‌کنند که این کار با اهداف بازاریابی انجام می‌شود؛ زیرا اعلام یک چیز به عنوان یک فریم‌وورک، اغلب می‌تواند مردم را از تلاش برای یادگیری و پیاده‌سازی آن باز دارد. گرچه طبق ساختار اسکلتی React، بسیاری از افراد شامل خود من، ادعا می‌کنند که این ابزار قطعا یک کتابخانه است. در همین حین، از نظر فنی لزومی ندارد که از کل ساختار کامپوننت استفاده کنید و state و propها را منتقل کنید، تا چیزی را مجبور به نمایش بر روی صفحه نمایید. شما می‌توانید از چند خط JSX در یک فایل استفاده کنید، که باعث می‌شود چیزی جز یک کتابخانه ساده به نظر نیاید. بستگی دارد که چگونه از آن استفاده کنید، اما در بهینه‌ترین سطح، React یک فریم‌وورک است.

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

منبع

مقالات پیشنهادی

چرا توسعه دهندگان nodejs را دوست دارند و مشکلات اصلی آن‌ها درباره آن چیست؟

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

تفاوت import و require در Node.js

از اونجایی که Node.js از ماژول بندی commonJS استفاده می کنه, من به فرآیند کاری Node با استفاده از ماژول های commonJS اشاره می کنم و برای ماژول های ECM...

UML - زبان مدل سازی یکنواخت چیست؟

UML یک زبان مدلسازی همه منظوره استاندارد  و از زیرمجموعه های مبحث مهندسی نرم‌افزار است که توسط Object management group ایجاد شده است. 

۵ اشتباه مرسوم در قسمت نمونه کار و شیوه رفع آن‌ها

قسمت نمونه‌کارهای شما معمولا جایی‌ست که شرکت‌ها و مشتریان از شما اولین تاثیر خود را می‌گیرند. ما در این مطلب قصد داریم اشتباهاتی را بگوییم که در آن‌ها...