فریمورک سیمفونی

فریم ورک سیمفونی در استودیوی توسعه نرم افزار هدف
  • محمود بازدار

قبل از اینکه بخواهیم در مورد سیمفونی صحبت کنیم باید اول بپرسیم فریمورک چیست؟

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

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

بنابراین فریمورک شامل دو قسمته:

  • جعبه ابزار: لیستی از ابزار های پیش ساخته و به خوبی تست شده که میشه به سرعت با همدیگه هماهنگ ش کرد.این به این معنی هست که ما کد های کمتری با امکان خطای کمتری مینویسیم و نتیجه ی این  سرعت بالای تولید نرم افزار هست که کمک میکنه که زمان مون رو روی موارد مهم تری که به هدف نرم افزار نزدیک هست صرف کنیم.
  • اصول: اصول درست مثل یک روش برای رسیدن به انتهای نرم افزار هست. اولش شاید کمی رعایت کردن ش سخت باشه ولی وقتی که تسک های خیلی بزرگ و پیچیده رو با استفاده از این اصول تونستیم پیاده سازیش کنیم به طوری که خروجی نهایی کم خطا تر و بهتر باشه میتونیم درک کنیم که چقدر این اصول میتونه برای رسیدن به هدفمون کمک کنه.

حالا با این که فکر میکنیم خیلی مشخص باشه (ولی بهتره همیشه بگیم) سیمفونی یک فریمورک بر پایه زبان PHP هست و به این معنی هست که اجازه میده اپلیکیشن های تحت وب بر پایه PHP نوشته بشن.

سیمفونی اولین بار سال ۲۰۰۵ به عنوان یک نرم افزار آزاد با لایسنس MIT عرضه شد. حدود ۲ سال طول کشید تا اولین ورژن پایدار اون که ۱.۰ باشه عرضه بشه. ورژن کنونی اون در زمان کنونی ۴.۲ هست.

موارد کاربرد سیمفونی در دنیای وب:

  • وب سایت Yahoo! Bookmarks با حدود ۲۰ ملیون کاربر از Symfony  استفاده میکند.
  • وب سایت Delicious که برای یک پارچه کردن کامنت ها در اینترنت است.
  • وب سایت DailyMotion که پلتفرمی برای به اشتراک گذاری ویدیو است.
  • وب سایت OpenSky که یک پلتفرم فروشگاهی است.
  • Drupal 8 که یک سیستم مدیریت محتوای معروف و PHPBB که یک سیستم راه اندازی فروم های اینترنتی است از Symfony به عنوان هسته استفاده میکنند.
  • Laravel به عنوان یک فریمورک از کامپوننت های Symfonyدر هسته خود استفاده کرده است.
  • در سال ۲۰۱۳  وب سایت GiantBomb به عنوان یکی از بزرگترین وب سایت های شیر ویدیو بازی های کامپیوتری سیستم خود را از جنگو به سیمفونی تغیر داد.

 

نظر شما چیست؟
فرم شما با خطا مواجه شده است:
    با تشکر. نظر شما با موفقیت ثبت شد و پس از تایید مدیریت نمایش داده خواهدشد.