Framework (فریم ورک) در لغت به معنای «چارچوب» بوده و در معانی دیگری از جمله «کالبد»، «بدنه» و «استخوانبندی» نیز مورد استفاده قرار میگیرد.
در برنامه نویسی کامپیوتر، یک فریم ورک را میتوان مجموعهای از ابزارها، کتابخانهها، قراردادها و بهترین شیوهها تعریف کرد که برای یک یا چند زبان برنامهنویسی ایجاد شده و امکان برنامه نویسی را راحتتر میکند. همانند «دات نت فریم ورک مایکروسافت» که در محیط برنامهنویسی «ویژوال استودیو» برای زبانهای برنامهنویسی «سیشارپ»، «بیسیک» و حتی «سیپلاسپلاس» در نظر گرفته شده است.
به عبارتی دیگر، فریمورکها، چارچوب کاری مارا مشخص میکنند و به طوری که حجم عظیمی از کدما به آنها وابسته خواهد شد.
باید توجه داشت که الزامی نیست یک فریمورک همیشه در اختیار عموم قرار بگیرد و شما میتوانید برای خودتان فریم ورک اختصاصی طراحی کرده و به صورت شخصی از آن استفاده نمایید؛ یا در اختیار یک تیم (گروه) خاصی قرار دهید.
یکی از فریمورکهای عمومی، «.NET Framework» است که محصولی از شرکت مایکروسافت بوده و شامل هزاران کتابخانهی کوچک، به همراه قواعد و ابزارهایی برای توسعهی یک نرمافزار میباشد. و در واقع امکان توسعه را سریعتر کرده و نتیجهی بهتری را برای برنامهنویس رقم میزند. یا فریم ورک « ماشین مجازی جاوا – JVM» که این امکان را میدهد تا برنامهی توسعه داده شده در هر سیستمعاملی که این فریم ورک را پشتیبانی میکند، به طور یکسان عمل کند.
انواع فریم ورکها
در توضیخات بالا، فریمورکهای ذکر شده مثل «دات نت» یا «JVM»، واسط میان برنامهنویس و سیستمعامل هستند؛ اما فریم ورک ها در انواع دیگری نیز قابل مشاهده میباشند و حتی یک برنامه نویسی میتواند یک فریم ورک جدیدی را روی یک فریم ورک دیگری از جمله دات نت تولید کند.
برای نمونه در زبان برنامهنویسی PHP، فریم ورکهای مشهور مختلفی از جمله Symfony، CakePHP، Zend و Laravel وجود دارند؛ که به برنامهنویسان کمک میکنند بسیاری از کدهای تکراری که در بیشتر برنامهها مورد نیاز هستند را بازنویسی نکرده و دوباره از ابتدا ننویسند. همچنین با تعریف قوانین، سرعت توسعه را افزایش داده و امنیت را بهبود میبخشند و کمک میکنند تا توسعهپذیری کد بهتر شود.
ساختار MVC در فریم ورکها
معمولا فریم ورکها مبتنی بر الگوی برنامه نویسی MVC طراحی می شوند (MVC نرمافزار را به سه قسمت Model و View و Controller تقسیم میکند و واژهای است که در هنگام کار کردن با فریم ورکها مورد استفاده قرار میگیرد.)؛ و البته نمی توان گفت مواردی که بر اساس الگوی شی گرای MVC ساخته نشدهاند فریم ورک نیستند.
درواقع MVC شکلی خاص از ترکیب کدهای برنامهنویسی است و در این شکل از برنامهنویسی، کدهای برنامه به سه بخش تقسیم میشوند. با تقسیم و طبقه بندی کدها، برنامه به صورت سه لایه مجزا از هم در میآید. برنامهنویسی لایهای مزایای زیادی دارد که در محدودهی این نوشته نمیگنجد و تنها به همین نکته بسنده میکنیم که در برنامه نویسی MVC، بخش View وظیفهی نمایش اطلاعات به کاربر را بر عهده دارد؛ بخش Controller دریافت اطلاعات از کاربر و پردازش آن را به انجام میرساند؛ و بخش Model نیز کار ذخیره و بازیابی اطلاعات را عملی میکند.
همچنین اغلب فریمورکهای برنامهنویسی شامل ابزاری به نام ORM برای بهبود روش ارتباط با پایگاه داده هستند. برای کسب اطلاعات بیشتر در مورد ORM یا Object-Relational Mapping، اینجا کلیک کنید.
آیا استفاده از فریم ورک خوب است؟
بله چرا که نه! در اغلب موارد مزایای فریم ورک بر معایت آن ارجعیت دارد! از جمله کاهش زمان توسعه و افزایش قابلیت توسعه پذیری که مزایای بزرگی در هنگام برنامهنویسی (از جمله طراحی سایت) به شمار میروند. همچنین در مورد فریم ورکهای تحت سیستمعامل، مانند دات نت و JVM، نوشتن یک باره و اجرا روی چندین سیستمعامل از نظر اقتصادی بسیار پر اهمیت هستند.
نظرات ثبت شده بدون دیدگاه