فریمورک در برنامه نویسی چیست

با شروع یادگیری برنامه نویسی با کلمات، عبارات، اصطلاحات مربوط به این حوزه مواجه خواهید شد. در این مقاله قصد داریم عبارت فریم ورک در برنامه نویسی را برای شما توضیح دهیم.

فریم ورک برنامه نویسی ابزار یا مجموعه ای از ابزارهایی است که با آن تسک های برنامه های متداول اجرا می شوند. برای آن که جمله ی گنگ بالا را متوجه شوید، ما از شما دعوت می کنیم تا به خواندن ادامه ی مطلب بروید.

فریم ورک برنامه نویسی به زبان ساده

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

هدف فریم ورک برنامه نویسی چیست

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

برنامه نویسی چیست

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

انواع فریم ورک های برنامه نویسی

درست همان طور که زبان های برنامه نویسی زیادی وجود دارد، به همان اندازه فریم ورک های مختلفی نیز موجود است. فریم ورک ها با اهداف گوناگونی ایجاد شده اند و همچنین مشکلات بغرنج بسیاری را می توانند رفع کنند.

فریم ورک تحت وب

فریم ورک تحت وب یعنی این که فریم ورک در فضای وب قرار داشته باشد. این فریم ورک ها کار را برای برنامه نویسانربه نسبتی که قبلا انجام می شد بسیار راحت تر کرده است. فریم ورک تحت وب در واقع فریم ورکی است که با برنامه نویس اجازه می دهد تا نرم افزار تحت وب خود را به صورت “بک اند وب” ارائه کند که به این دسته از نرم افزارها، وب سایت های دینامیک یا پویا می گوئیم. این وب سایت ها تنها با استفاده از اچ تی ام ال، جاوا اسکریپت یا سی اس اس ساخته  نشده اند، بلکه با استفاده از یک زبان برنامه نویسی با پایگاه داده تعامل برقرار می کنند و محتوای اصلی را در صفحه نمایش می دهند. فریم ورک های تحت وب این فرایند را بسیار آسان می کنند. بسیاری از فریم ورک ها نیاز به توسعه دهنده ای دارند تا کدنویسی انجام دهد و عملکردهای پایه ای را ایجاد کند. بسیاری از فریم ورک های تحت وب مشهور، از الگوی خاص مثل ام وی سی (کنترلگر مدل بازبینی) استفاده می کنند. این الگو توسعه نرم افزار را با استفاده از جداسازی موضوعات مورد بحث یک نرم افزار که به سه لایه تقسیم می شوند را آسان تر کرده است.

فریم ورک های فرانت اند

به فریم ورک های تحت وب، فریم ورک فرانت اند نیز گفته می شود. منظور از فرانت اند آن بخش ساکت و بی سر و صدای نرم افزار است. اتفاقاتی که در بخش مرورگر کاربر رخ می دهد، بر خلاف چیزی که در قسمت بک اند رخ می دهد که در سرور اجرا می شود. فریم ورک فرانت اند به برنامه نویسان امکان می دهد تا از فناوری هایی مثل اچ تی ام ال، سی اس اس و به خصوص جاوا اسکریپت بتوانند نرم افزارهای قوی تحت دسکتاپ نیز بنویسند. دو فریم ورک مخصوص فرانت اند، انگولار و ریاکت هستند. گوگل در سال 2010 فریم ورک آنگولار را با نام انگولار جی اس روانه ی بازار کرد. در سال 2016انگولار به شکل دیگری بازنویسی شد و تحت عنوان انگولار به بازار آمد. در سال 2013 فیسبوک فریم ورک ری اکت را انتشار داد اما بعد از آن انگولار تبدیل به بهترین فریم ورک فرانت اند در دنیا شد.

فریم ورک های توسعه ای موبایلی

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

فرضیات اشتباه در مورد فریم ورک ها

شاید در ابتدای کار بعضی افراد زبان برنامه نویسی و فریم ورک ها را با یکدیگر اشتباه بگیرند. زیرا هر دو برای نوشتن یک نرم افزار به کار می روند. حتی بعضی ها این دو واژه را به غلط به جای یکدیگر استفاده می کنند. مثلا بر سر این که یک نرم افزار با پی اچ پی بنویسند یا با دی جنگو با هم بحث می کنند. غافل از این که پی اچ پی یک زبان برنامه نویسی است اما دی جنگو یک فریم ورک است. برای تمایز میان فریم ورک و زبان برنامه نویسی باید بگوئیم که زبان برنامه نویسی دارای اهداف چندگانه است اما فریم ورک برای رسیدن به نتیجه ای خاص طراحی شده است. مثلا با زبان سی شارپ می توانید برنامه های گوناگون با اهداف مختلف بنویسید اما برای ساخت نرم افزار تحت وب باید از اِی اس پی دات نت که فریم ورک است استفاده کنید.

همچنین در نظر داشته باشید که با استفاده از زبان های برنامه نویسی می توان فریم ورک نوشت! برای آن که بهتر در خاطر خود داشته باشید به مثال زیر توجه کنید: دیوید هینمایر هندسون با استفاده از زبان برنامه نویسی رابی، فریم ورک رابی آن ریلز را نوشته است. با استفاده از زبان پایتون و پی اچ پی فریم ورک هایی مثل لاراول و دی جنگو نوشته شده اند.

فریم ورک ها و کتابخانه ها

مورد دیگری که ممکن است برای افراد تصورات اشتباه ایجاد کند تفاوت کتابخانه و فریم ورک است. بالاخره هر دوی این ها برای راحتی کار شما طراحی شده اند! برای آن که متوجه فرق این دو شوید، باید بگوئیم که کتابخانه به کدهایی که شما نوشته اید اتلاق می گردد در صورتی که فریم ورک مسئول خواندن کدهایی است که شما آن را نوشته اید.

 

فریم ورک های برنامه نویسی: فریم ورک ها را بفهمید تا دوباره چرخ را اختراع نکنید

امروزه در صنعت توسعه ی نرم افزار فریم ورک ها در همه جا در دسترس هستند. از موبایل گرفته تا صفحات وب، از دسکتاپ تا اِی پی آی ها همگی برای توسعه به فریم ورک ها نیاز دارند.

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

برگرفته از صفحه makemeaprogrammer.com

نویسنده و مترجم : سمانه ذرخورد