دوره های آموزشی آکادمی پی وی لرن (پروژه محور و ویژه بازار کار)



  • ۲۱
  • اسفند

جلسه ۰۳ : معماری برنامه در CodeIgniter

  • دسته‌بندی‌ها :
جلسه ۰۳ : معماری برنامه در CodeIgniter
    • جزئیات
    • نوع محتواآموزش تصویری

      مقدمه

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

      معماری برنامه در codeigniter یا ساختاری دایرکتوری در کدایگنایتر

      معماری برنامه در codeigniter یا ساختار دایرکتوری را می توان به صورت تصویر زیر نمایش داد:

      معماری برنامه در codeigniter

      structure application codeigniter

      همان طور که در تصویر بالا می توانید ببینید، هرگاه درخواستی به codeigniter وارد شود؛ در ابتدا وارد صفحه index.php می شود.
      در مرحله دوم codeigniter تصمیم می گیرد که درخواست مورد نظر را برای ذخیره شدن به مرحله ۳ بفرستد یا آن که آن را برای بررسی های امنیتی بیشتر راهی مرحله ۴ کند.

      اگر صفحه درخواست (requested page) در حالت (Caching) باشد، مسیر یابی (Routing ) درخواست را به مرحله ۳ و کاربر برمی گرداند.

      اگر صفحه درخواست در (Caching) وجود نداشته باشد، مسیر یابی (Routing ) درخواست را برای بررسی های امنیتی به مرحله ۴ باز می گرداند.

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

      نمایه دیتاهای موجود در صفحه را به نمایش گذاشته و آن را برای (Caching) ارسال می نماید. اگر صفحه درواست از قبل ذخیره (Cache) نشده باشد، برای پردازش سریع تر در مراحل بعدی، در (Caching) کار ذخیره سازی آن صورت خواهد گرفت.

      ساختار دایرکتوری (Directory Structure) در معماری برنامه در codeigniter

      تصویر زیر ساختار دایرکتوری (directory structure) را در codeigniter نشان می دهد.

      ساختار دایرکتوری در codeigniter

      Directory Structure codeigniter

      ساختار دایرکتوری در CodeIgniter به سه پوشه تقسیم می شود:

      • Application ( برنامه) در ساختار دایرکتوری codeigniter
      • System ( سیستم ) در ساختار دایرکتوری codeigniter
      • User_guide ( راهنمای کاربر ) در ساختار دایرکتوری codeigniter

      Application ( برنامه ) در ساختار دایرکتوری و در معماری برنامه در codeigniter

      همان طور که از نام پوشه پیداست، پوشه برنامه شامل همه کدهای برنامه ای می شود که شما در حال ساخت آن ها هستید و پروژه خود را به واسطه آن گسترش می دهید. پوشه برنامه یا Application خود شامل چندین پوشه دیگر است که در ادامه به توضیح آن ها می پردازیم:

      Cache :

      این پوشه حاوی همه صفحات ذخیره شده از برنامه شماست. این صفحات ذخیره شده باعث افزایش سرعت کلی دسترسی به صفحات می شود.

      Config :

      این پوشه حاوی فایل های مختلف برای پیکربندی برنامه است. با استفاده از فایل config.php، کاربر می تواند برنامه را پیکربندی کند و با استفاده از فایل database.php نیز کاربر قادر خواهد بود پایگاه داده برنامه را پیکربندی نماید.

      Controllers :

      این پوشه امکان کنترل برنامه تان را برای شما فراهم می کند که بخش اساسی برنامه شماست.

      Core :

      این پوشه شامل کلاس پایه برنامه شما می شود.

      Helpers :

      در این پوشه، می توانید کلاس کمکی را در برنامه خود قرار دهید.

      Hooks :

      فایل های موجود در این پوشه کمک می کمند تا کارهای داخلی چارچوب را بدون هک کردن فایل های هسته ای انجام دهید و اصلاح نمایید.

      Language :

      این پوشه شامل فایل های مرتبط با زبان برنامه می شود.

      Libraries :

      این پوشه حاوی فایل های کتابخانه ای است که برای برنامه شما طراحی شده است.

      Logs :

      این پوشه حاوی فایل های مربوط به ورود به سیستم است.

      Models :

      نحوه ورود به پایگاه داده در این پوشه قرار می گیرد.

      Third_party :

      در این پوشه می توانید هر پلاگینی را که برای برنامه خود نیاز دارید، قرار دهید.

      Views :

      فایل های HTML برنامه در این پوشه قرار می گیرد.

      سیستم (System) در ساختار دایرکتوری و در معماری برنامه در codeigniter

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

      این پوشه شامل کدها نتیجه های codeigniter است که در پوشه های مختلف قرار داده شده اند:

      Core :

      این پوشه شامل همه کد هسته های codeigniter است لذا از اصلاح و ویرایش آن جداً خودداری کنید و حتی اگر قصد گسترش هسته codeigniter دارید این کار را به وسیله قلاب ها (hooks) ها انجام دهید. این قلاب ها در پوشه برنامه قرار دارند.

      Database :

      این پوشه شامل drivers ها و دیگر خدمات پایگاه داده است.

      Fonts :

      پوشه فونت حاوی اطلاعات مربوط به فونت و ابزارهای مفید است.

      Help0ers :

      این پوشه شامل کمک کننده هایی جهت استاندارد سازی codeigniter مانند (مانند تاریخ، کوکی ها، و راهنمایی های URL) است.

      Language :

      پوشه Language شامل فایل خای زبان مرتبط است. فعلا می توانید از این پوشه صرف نظر نمایید.

      Libraries :

      پوشه کتابخانه ها شامل کتابخانه های codeigniter استاندارد (برای کمک به شما با ایمیل، تقویم ها، آپلود فایل ها و موارد دیگر) است. می توانید به راحتی کتابخانه های خود را ایجاد، گسترش و یا حتی جایگذاری کنید. توجه داشته باشید که کتابخانه ها را در پوشه نرم افزار/ کتابخانه ها ( application/libraries) ذخیره کنید تا بعداً بتوانید آن ها را از کتابخانه های استاندارد codeigniter در این پوشه، تفکیک کنید.

      راهنمای کاربر ( User_guide ) در ساختار دایرکتوری و در معماری برنامه codeigniter

      این راهنما در واقع راهنمای codeigniter است. نسخه آفلاین راهنمای کاربر در وب سایت codeigniter موجود می باشد که با استفاده از آن می توان عملکردهای کتابخانه ها، کمک کننده ها و کلاس های مختلف codeigniter را یاد گرفت. توصیه می شود قبل از ساخت اولین برنامه وب خود در codeigniter ، به سراغ این راهنمای کاربر بروید.
      علاوه بر این سه پوشه، یک فایل مهم دیگر نیز به نام “index.php” وجود دارد.  در این فایل می توان محیط برنامه و سطح خطا را تنظیم کنیم و نام پوشه سیستم و برنامه را تعریف نماییم. اگر دانش کافی در این مورد ندارید توصیه می شود که این تنظیمات را ویرایش نکنید.

      کلام آخر

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

      QR:  جلسه ۰۳ : معماری برنامه در CodeIgniter
      به اشتراک بگذارید