به نام خدا
در این بخش می پردازیم به ساختار فولدرها و فایل های موجود در سیمفونی
سیمفونی (به انگلیسی: Symfony) یک چارچوب نرمافزاری تحت وب متنباز است که برای ساختِ وب سایت های پویا بهکار میرود. این چارچوب که به زبان php نوشته شدهاست، به کار توسعهٔ نرمافزار شتاب می بخشد. این شتاببخشی توسط کتابخانههای این چارچوب انجام میشود که بسیاری از آنها کارهای رایج را بهسادگی انجام میدهند. این چارچوب بر اساس مدل معماری مدل-نما-کنترلگر (به انگلیسی: MVC) کار میکند.این چارچوب پیاده سازیهای شما را بر اساس بستههای (به انگلیسی: bundle) ایجاد کرده پیش خواهد برد و شما نیز میتوانید از هزاران بسته نوشته شده متن باز دیگران در پروژه خود استفاده کنید. در ساختار اصلی این چاچوب دایرکتوری های زیر را مشاهده می کنید :
bin:
این دایرکتور قسمت باینری می باشد . خروجی های که به تنهای قابل استفاده هستند و به تنهای قابل اجرا می باشند. مثل فایل console یا برای تست نویسی phpunit از این دایرکتوری استفاده می شود.
config:
دغدغه های مربوط به configuration پروژه در این قسمت قرار دارد.
تمام تنظیماتی که مربوط به پروژه می باشد. تنظیمات مربوط به دیتابیس ، تنظمیات مربوط به فریمورک.
public:
فایل های عمومی که قرار است در دسترس همه باشند در این قسمت دایرکتوری قرار دارند
مثل index.php ، مثل فایل های مربوط به فرانت سایت css ها ، js ها ، Image ها و...
src:
منظق پروژه در این دایرکتور قرار دارد
برنامه های نوشته شده توسط خودمان است
template:
این دایرکتوری مربوط به بخش نگهداری ساختار twig می باشد که چهارچوب ظاهر سایت در این دایرکتوری قرار دارد.
var:
این دایرکتوری مربوط به قسمت گزارش گیری سیستم می باشد.
vendor:
نیازمندی های پروژه در این دایرکتوری قرار دارد.
سورس کد پروژه در این قسمت می باشد
.env:
در این فایل می توانیم برای سیمفونی environment تعریف کنیم
می توانیم environment های مختلف تعریف کنیم
می توانیم تغییر وضعیت ایجاد کنیم برای اپلیکیشن خودمان
مثلا وقتی پروژه خود را در لوکال بالا میاریم پروژه ما در حالت dev می باشد و وقتی پروژه خود را درون سرور بالا می آوریم و میخوایم تحویل مشتری دهیم وضعیت آن را به حالت production تغییر می دهیم.
نوع دیتابیس خود را هم می توانیم مشخص کنیم که از نوع mysql باشد یا PostgreSQL .اطلاعات مربوط به دیتابیس خود را در این قسمت قرار می دهیم.
composer.json
این فایل پکیج منیجر php ما می باشد .
پکیج های که نصب می کنیم در این فایل قرار می گیرد.
composer.lock
جدیدترین ورژن های که برای پکیج ها می آید در این قسمت قرار می گیرد.
ورژن پکیج ها را کنترل می کند
composer.phar
این فایل repository manager برای یکسری dependency ها می باشد
symfony.lock
این فایل مربوط به repository manager سیمفونی می باشد.
ممنون تا اینجا همراهم بودید . در مقالات بعدی به شروع به ساخت قسمت های مختلف یک وب سایت به کمک سیمفونی میشویم.
اگر سوال و یا پیشنهادی دارید میتوانید به ایدی من در تلگرام به نام amirsalkhori و در اینستا amir_salkhori مراجعه نماید.
امیر یارکه سلخوری هستم توسعه دهنده.
01100001011011010110100101110010001000000111001101100001011011000110101101101000011011110111001001101001