
بررسی کامل ساختار یک وب اپلیکیشن در فریمورک Yii
فقط یک پوشه در کدِ پایه ی کلی وجود دارد که به طور عمومی برای web server در دسترس است و آن دایرکتوری web است. سایر پوشه های خارج از دایرکتوری Web root برای web server ، غیرِ قابلِ دسترسی، هستند.
توجه - تمام وابستگی های پروژه (dependencyها) در فایل composer.json قرار دارد. Yii2 دارای چند package مهم است که قبلا توسط composer در پروژه شما قرار گرفته است. این package ها عبارتند از:
- Gii – The code generator tool
- The debug console
- The Codeception testing framework
- The SwiftMailer library
- The Twitter Bootstrap UI library
فقط سه package اول، برای محیط های برنامه نویسی و توسعه مفید هستند.
ساختار برنامه Yii2 دقیق و روشن است و شامل پوشه های زیر است -
Assets - این پوشه شامل تمام فایل های .js و .css است که در صفحات وب، به آنها اشاره شده است.
Commands - این پوشه حاوی controller هایی است که می توانند در terminal استفاده شوند.
Config - این پوشه حاوی فایل های config است که برای مدیریت پایگاه داده ها، برنامه ها و پارامترهای برنامه استفاده می شوند.
Mail - این پوشه شامل mail layout است.
Models - این پوشه شامل model های مورد استفاده در برنامه می باشد.
Runtime - این پوشه برای ذخیره داده های زمان اجرا است.
Tests - این پوشه شامل تمام تست ها (پذیرش یا acceptance ، واحد یا unit، تابعی یا functional) است.
Vendor - این پوشه شامل تمام پکیج های third-party است که با Composer مدیریت می شوند.
Views - این پوشه برای view ها است، که توسط controller ها نمایش داده می شوند. پوشه layout حاوی template هایی است که برای صفحات وب، از آنها استفاده می شوند.
Web – این پوشه نقطه ورود به وب است.
ساختار Application
در زیر نموداری نمایش داده شده است که، ساختار Application را نشان می دهد.
اشیاء یا object ها در Yii2
لیست زیر شامل تمام اشیاء موجود در Yii2 است -
- Model ها
- View ها
- Controller ها
از Model ها برای ارائه داده ها (معمولا از پایگاه داده ها) استفاده می شود.
از View ها برای نمایش داده ها استفاده می شود.
از Controller ها برای پردازش درخواست ها و تولید پاسخ ها استفاده می شود.
Component ها
برای ایجاد یک قابلیت بطوریکه قابل استفاده ی مجدد باشد، کاربر می تواند component مورد نظر خود را بنویسد. Componentها، اشیایی هستند که حاوی منطق می باشند. به عنوان مثال، یک component می تواند مبدل وزن باشد.
Component های برنامه
اینها اشیایی هستند که فقط یک بار، در کل برنامه معرفی شده اند. تفاوت اصلی component و componentهای برنامه، این است که دومی می تواند تنها یک نمونه در کل برنامه داشته باشد.
ابزارک ها یا Widget ها
Widget ها اشیایی با قابلیتِ استفاده ی مجدد هستند که حاوی کد منطقی و رندر می باشند. یک Widget می تواند، به عنوان مثال، یک اسلایدر گالری باشد.
Filter ها
فیلترها، اشیایی هستند که قبل یا بعد از اجرایِ اکشنِ کنترلرها، اجرا می شوند.
Module ها
شما می توانید ماژول ها را بعنوان subapps مجدداً مورد استفاده قرار دهید. که شامل Model ها، View ها، Controller ها و غیره می باشند.
افزونه یا Extension ها
Extension ها، package هایی هستند که توسط Composer مدیریت می شوند.
این فصل در یک نگاه:
…
سلام . پیشنهاد میکنم حتما دموی دوره رو مشاهده کنید درباره فریم ورک Yii: در پاسخ به سوالات : آیا این فریم ورک سریع است؟ آیا این یک فریم ورک امن است؟ آیا این یک فریم ورک حرفه ای است؟ آیا ا…این فصل در یک نگاه:
…
پیشنهاد میکنیم دمو دوره رو حتما مشاهده کنید با سلام خدمت دوستان عزیز . ابتدا عرض کنم که این دوره برای دوستانی آماده شده که میخوان وب اپلیکیشن های مدرنی رو طراحی بکنن و وارد بازار کار ط…