طراحی سایت

فریم ورک (Framework) چیست؟

  21/ 01 /1397 |
مریم جعفری | طراحی سایت | دیدگاه 0 | 189 Likes

آشنایی با فریم ورک

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

در دنیای طراحی سایت ، فریم ورک فایلی حاوی مجموعه کدها و اسکریپت ها در زبان های مختلف توسعه وب سایت از جمله HTML , CSS , JS , PHP , … است که می توان از آن ها جهت حل برخی مشکلات توسعه وب سایت بهره برد یا حتی یک وب سایت را با کمک آن ها راه اندازی کرد.

انواع فریم ورک

فریم ورک ها دو نوع هستند: فریم ورک های توسعه Back-end و فریم ورک های توسعه Front-end وب سایت .

فریم ورک های مربوط به توسعه Front-end: فریم ورک های front-end اصولا از بسته هایی شامل فایل های ساختاری و فولدرهای حاوی کدهای استاندارد شده تشکیل شده اند. اجزاء آن معمولا شامل منبع کد CSS برای ایجاد یک گرید، تعریف استایل های تایپوگرافی برای عناصر  HTML، ارائه راه حل هایی برای اسکریپت هایی که در بروزرها پشتیبانی نمی شوند و ایجاد کلاس های استاندارد جهت استفاده در استایل دادن به اجزاء واسط کاربری است.

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

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

  • Laravel
  • Phalcon
  • Symphony
  • Yii
  • Codelgniter
  • CakePHP
  • Kohana
  • FuelPHP

میکرو فریم ورک PHP

  • Flight
  • Sliex
  • Limonade
  • Slim

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

  • Ruby on Rails
  • Lotus
  • Rack
  • Sinatra
  • Padrino
  • Cuba
  • Scorched
  • Grape

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

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

  • Django
  • Flask
  • TurboGears
  • Web2py
  • Pyramid
  • Bottle

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

  • Net.

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

  • Catalyst
  • Mojolicious

مزایای استفاده از فریم ورک

  • سادگی بیشتر
  • نتیجه بهتر
  • کارایی بالا
  • قابلیت ادغام پذیری
  • بازار کار بهتر
  • حرفه ایی بودن
  • امنیت بالاتر
  • قابلیت توسعه
  • بروز رسانی و ارتقا آسان برنامه
  • کد نویسی سریع تر
  • قابلیت استفاده مجدد از کدهای نوشته شده
  • منبع باز

ساختار MVC در فریم‌ورک‌

عبارت MVC یا Model View Controller واژه‌ای است که در هنگام کار کردن با فریم ورک‌ها مورد استفاده قرار می‌گیرد. این عبارت شکلی خاص از ترکیب کدهای برنامه‌نویسی است. در این شکل از برنامه‌نویسی کدهای برنامه به سه بخش تقسیم می‌شوند. با تقسیم و طبقه بندی کدها، برنامه به صورت سه لایه مجزا از هم در می‌آید. در برنامه نویسی MVC بخش View وظیفه‌ی نمایش اطلاعات به کاربر را بر عهده دارد. بخش Controller دریافت اطلاعات از کاربر و پردازش آن را به انجام می‌رساند. و بخش Model کار ذخیره و بازیابی اطلاعات را عملی می‌کند. اغلب فریم‌ورک‌های برنامه‌نویسی شامل ابزاری به نام ORM برای بهبود روش ارتباط با پایگاه داده هستند.

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

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

فریم ورک پی اچ پی

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

معروف‌ترین فریم ورک در آمریکا، لاراول، و در شوروی سابق و آسیا، Yii است. بهترین فریم ورک از نظر بالاترین سطح پشتیبانی، سیمفونی است و از نظر امکانات و کارایی فریم ورک PHP، Yii  عالی است.

Laravel

توسعه دهنده لاراول ، آقای تیلور اوتول (Taylor Otwell)، می‌گوید:

"من احساس می‌کنم سرعت بالای توسعه، آسان بودن یادگیری و گسترده بودن جامعه هدف از مهم‌ترین ویژگی‌هایی است که استفاده از لاراول را در هر پروژه‌ای جذاب می‌کند. امنیت بالا و اشغال کردن فضای کم در سرور، هم بسیار مهم است و موضوعی است که شرکت‌های بسیاری باید به آن توجه کنند."

ویژگی‌های مهم لاراول:

  • جامعه‌ی توسعه‌دهنده‌ی فعال (۴۱۸ مشارکت‌کننده در توسعه‌ی فریم ورک)
  • داکیومنت سازی (ارائه توضیحات و راهنمایی‌های لازم) فوق‌العاده
  • ساختار قرارداد به جای تنظیمات
  •  سیکل‌های سریع توسعه

Codeigniter

این از همه سریع تر است، شفاف تر است و حداقل شبیه یک فریم ورک خوب عمل می‌کند. علاوه بر این، Codeigniter  سریع‌ترین فریم ورک موجود در این لیست است.  Rasmus Lerdorf، سازنده PHP

ویژگی‌های مهم:

  • بالاترین کارایی (۷۵۳ درخواست در ثانیه و  ۴۲/۰ پیک استفاده از حافظه )
  • استفاده حداقلی از حافظه و فضای ذخیره سازی
  • شروع آسان و نیاز کم به پیکربندی
  • جامعه‌ی توسعه‌دهنده‌ی فعال (۴۲۰ مشارکت‌کننده در توسعه‌ی فریم ورک)

Yii

Yii یک فریم‌ورک PHP بسیار کابردی است. توسعه وب با Yii بسیار سریع است چون از کدساز Gii و الگوهای طراحی ActiveRecord استفاده می‌کند. این فریم ورک، امکاناتی فراهم می‌کند که بیش از حد انتظار شما است.   Alexander Makarov، از توسعه دهندگان هسته مرکزی  Yii

ویژگی‌های مهم:

  • سرعت عملکرد بالا (۴۱۸ درخواست در ثانیه و ۳۲/۱ پیک استفاده از حافظه)
  • سرعت بالا در توسعه (کدساز و چارچوب‌سازی)
  • تست کردن آسان (رسیدگی به خطاها و نوار ابزار برطرف کردن باگ‌ها)
  • جامعه توسعه‌دهنده‌ی فوق‌العاده (۷۸۲ مشارکت‌کننده در توسعه‌ی فریم ورک)

Symfony

در وهله اول، سیمفونی۲ مجموعه ای از کامپوننت‌های مستقل، جدا از هم و منسجم است که مشکلات عمومی توسعه‌دهندگان را برطرف می‌کند. بر پایه‌ی این کامپوننت‌ها سیمفونی۲ یک چارچوب کامل توسعه وب است.  Fabien Potencier، سازنده سیمفونی

ویژگی‌های مهم:

  • جامعه توسعه‌دهنده‌ی بزرگ (۱۴۹۴ مشارکت‌کننده در توسعه‌ی فریم ورک)
  • محیطی خوب و مناسب تست به دلیل وجود ساختار «قرارداد به‌جای تنظیمات» و...
  • پشتیبانی از نسخه‌های باثبات پیشین
  • پشتیبانی طولانی
  • داکیومنت سازی خوب

CakePHP

CakePHP  به من این امکان را می دهد که کدهای کمتری برای نتیجه‌های یکسان نسبت به سایر برنامه‌نویس‌ها بنویسم. این به معنی آن است که من وقت بیشتری پیدا می‌کنم و از آن برای تست بیشتر و اطمینان از کارایی نرم‌افزار استفاده می‌کنم Jose Diaz-Gonzalez ، از توسعه‌دهندگان هسته مرکزی  CakePHP

ویژگی‌های مهم:

  • سرعت بالا در توسعه (کدساز و چارچوب ساز شبیه Yii)
  • یادگیری آسان
  • جامعه توسعه‌دهنده‌ی بزرگ (۴۸۲ مشارکت‌کننده در توسعه‌ی فریم ورک)

 

اشتراک گذاری


نویسنده

مریم جعفری

مریم جعفری

به بازاریابی و تبلیغات در فضای دیجیتال علاقه مندم و تولید محتوا در این زمینه رو دوس دارم.

مطالب مرتبط

    مطالب مرتبط
  • CMS یا سیستم مدیریت محتوا چیست؟

    سیستم مدیریت محتوا مخفف عبارت Content Management System می باشد. CMS که کار مدیریت محتوا را بر عهده دارد، یک نرم افزار روی سرور است و به مدیر سایت این امکان را می دهد تا محتوای سایت را بدون نیاز به طراحی م...

  • شبکه توزیع محتوا (CDN) چیست؟

    CDN مخفف عبارت Content Delivery Network می باشد. شبکه توزیع محتوا عبارتست از یک شبکه بزرگ از سرورهایی که در چند نقطه دنیا مستقر هستند و به صورت جغرافیایی توزیع شده‌اند. از طریق CDN ، محتوا بر اساس موقعیت ...

  • فریم ورک AMP چیست و چه تاثیری در سئو سایت دارد؟

    AMP یکی از ابزارهای گوگل است که در سال 2016 ارائه شد. AMP به معنای افزایش سرعت بارگذاری صفحات سایت در تلفن های همراه می باشد. امروزه استفاده از تلفن های همراه گسترش یافته است و بسیاری از افراد جهت دست یافت...