یک چارچوب یا چارچوب نرم افزاری، بستری برای توسعه نرم افزار برنامه کاربردی (Application) است. این پایه ای را فراهم می کند که توسعه دهندگان نرم افزار می توانند برنامه هایی را برای سکو (Platform) خاص بسازند. به عنوان مثال، یک چارچوب ممکن است شامل کلاس (Class) و تابع (Function) از پیش تعریف شده باشد که می تواند برای پردازش ورودی (Input)، مدیریت دستگاه های سخت افزاری و تعامل با سیستم نرم افزار (System Software) این روند توسعه را ساده می کند زیرا برنامه نویسان نیازی به اختراع مجدد چرخ در هر بار توسعه برنامه جدید ندارند.
یک چارچوب شبیه به یک رابط برنامه نویسی برنامه (رابط برنامه کاربردی (API)) است. از نظر فنی یک چارچوب شامل یک API است. همانطور که از نام آن پیداست، یک چارچوب به عنوان پایه ای برای برنامه نویسی عمل می کند، در حالی که یک API دسترسی به عناصر پشتیبانی شده توسط چارچوب را فراهم می کند. یک چارچوب همچنین ممکن است شامل کتابخانههای کد، کامپایلر (Compiler) و سایر برنامههای مورد استفاده در فرآیند توسعه نرمافزار باشد.
چندین نوع مختلف چارچوب نرمافزاری وجود دارد. نمونههای معروف عبارتند از اکتیواکس (ActiveX) و .NET برای توسعه پنجره ها (Windows)، Cocoa برای او اس اکس (OS X)، Cocoa Touch برای سیستم عامل آیفون (iOS)، و چارچوب برنامه Android برای اندروید (Android). کیت های توسعه نرم افزار (بسته توسعه نرم افزار (SDK)) برای هر یک از این چارچوب ها موجود است و شامل ابزارهای برنامه نویسی است که به طور خاص برای چارچوب مربوطه طراحی شده اند. به عنوان مثال، نرم افزار توسعه Xcode اپل شامل یک Mac OS X SDK است که برای نوشتن و کامپایل برنامه های کاربردی برای چارچوب Cocoa طراحی شده است.
در بسیاری از موارد، یک چارچوب نرم افزاری به صورت بومی توسط یک سیستم عامل (Operating System) پشتیبانی می شود. . برای مثال، برنامهای که برای Android Application Framework نوشته شده است، بدون نیاز به نصب فایلهای اضافی روی دستگاه اندرویدی اجرا میشود. با این حال، برخی از برنامه ها برای اجرا به یک چارچوب خاص نیاز دارند. به عنوان مثال، یک برنامه ویندوز ممکن است به Microsoft .NET Framework 4.0 نیاز داشته باشد که بر روی همه دستگاه های ویندوز (به خصوص کامپیوتر شخصی (PC) دارای نسخه های قدیمی تر ویندوز) نصب نشده است. در این مورد، بسته نصب کننده Microsoft .NET Framework 4 باید نصب (Install) باشد تا برنامه اجرا شود.
توجه: در حالی که فریم ورک ها معمولاً به پلتفرم های توسعه نرم افزار گسترده اشاره می کنند، این اصطلاح همچنین می تواند برای توصیف یک چارچوب خاص در یک محیط برنامه نویسی بزرگتر استفاده شود. به عنوان مثال، چندین فریمورک جاوا (Java)، مانند Spring، ZK، و Java Collections Framework (JCF) را می توان برای ایجاد برنامه های جاوا استفاده کرد. علاوه بر این، اپل چندین فریمورک خاص ایجاد کرده است که توسط برنامه های OS X قابل دسترسی هستند. این چارچوبها با پسوند فایل چارچوب (Framework) ذخیره میشوند و در فهرست /System/Library/Frameworks نصب میشوند. نمونههایی از چارچوبهای OS X عبارتند از: AddressBook.framework، CoreAudio.framework، CoreText.framework، و QuickTime.framework.
تعریف چارچوب (Framework) در این صفحه یک تعریف پایه نگاشته شده توسط تک بورد است. اگر مایل به ارجاع به این صفحه یا استناد به این تعریف هستید، با شرط درج لینک به این صفحه می توانید از این محتوا استفاده کنید.
هدف تک بورد توضیح اصطلاحات کامپیوتری به روشی است که به راحتی قابل درک باشد. ما برای سادگی و دقت با هر تعریفی که منتشر می کنیم تلاش می کنیم. اگر بازخوردی درباره تعریف چارچوب (Framework) دارید یا میخواهید یک اصطلاح فنی جدید پیشنهاد کنید، لطفاً با ما تماس بگیرید.
آیا می خواهید اصطلاحات فنی بیشتری یاد بگیرید؟ در خبرنامه روزانه یا هفتگی مشترک شوید و شرایط و آزمون های ویژه را در ایمیل خود تحویل بگیرید.