Logo for Parsclick
توجه: سایت برای مدت چند روز از تاریخ ۱۸ نوامبر از کار خواهد افتاد...

معرفی فریمورک کدایگنایتر - قسمت اول

  سید مسعود امامیان سید مسعود امامیان
  November 11, 2016 at 10:51 AM
  ۲۱ آبان، ۱۳۹۵ ساعت ۱۰:۵۱

CodeIgniter

فریم ورک کدایگنایتر یکی از فریم ورک های هست که خیلی دوست داره برنامه نویس تنبل نشه. اگر بخوایم بهتر بگیم، شاید یک برنامه نویس حرفه ای هم همچین فریم ورکی هم برای خودش دست و پا کرده باشه بدون اینکه از فری مورک کدایگنایتر بخواد استفاده کنه (یه کم اغراق آمیز گفتم...).

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

https://www.codeigniter.com/download

در حال حاصر که دارم این مقاله رو می نویسم آخرین نسخه، نسخه ی 3.1.2 هست.

بعد از اینکه دانلود کردید، از حالت فشرده خارج کنید و در انتها باید همچین ساختاری رو مشاهده کنید:

سه پوشه اصلی رو مشاهده می کنید. بریم سراغ راحت ترین پوشه که اسمش user_guide هست. این پوشه در واقع نسخه آفلاین راهنمای این فریم ورک هستش که کافیه داخل پوشه، روی index.html کلیک کنید.

سوال: آیا لازمه من بشینم از امروز تا یک ماه این مستندات رو مطالعه کنم؟

جواب: خواندن این مستندات مسلماً نگاه بهتری به شما میده ولی الزامی در این کار نیست.

این پوشه نیازی نیست کنار فریم ورک باشه. پس می تونید به جای دیگه انتقال بدید.

پوشه ی System اسمش روی خودش هست.

وقتی این فریم ورک اجرا میشه چندین کلاس اصلی همیشه به صورت خودکار initial میشن. داخل این پوشه، پوشه های مختلف هستند که داخل آن ها کلاس های مختلف وجود داره و این کلاس ها دسته بندی شدند این کلاس ها رو می تونید مشاهده کنید. شما شاید هیچ وقت نیازی به تغییر این فایل ها نداشته باشید.

پوشه ی بعدی Application هست.

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

Cache

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

Config

قسمت تنظیمات اصلی پروژه در این جا قرار داره. بعداً کامل تر محتویات داخل اون رو توضیح میدم.

Controllers

تمامی کلاس های کدنویسی شما در این پوشه وجود داره. در واقع کنترل های ما در این قسمت هست.

Core

ممکن هست شما بخواهید هسته ی فریم ورک رو به صورتی که می خواهید سفارشی کنید! یعنی چی؟ مثلاً فرض کنید سایت شما به دو بخش مدیریت و کاربری تقسیم میشه. در بخش مدیریت یک سری کارهای از پیش تعریف شده وجود داره و در بخش کاربری یک سری کارهای از پیش تعریف شده ای دیگه ! خیلی سخت میشه اگه شما برای هر کلاس یا هر فراخوانی تابع در هر بخش یک سری کارهای از پیش تعریف شده انجام بدید. بجای این کار، شما میاید سایت رو دو core تقسیم می کنید و تعریف می کنید که فلان کنترل ها هنگامی که اجرا میشن از هسته ی کاربری خونده بشن و فلان کنترل ها از هسته ی مدیریت.

Helpers

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

Hooks

هوک (\ˈhu̇k\ ) در واقع مدیریت یک سری رخدادهایی که ممکن هست شما قبل یا بعد یا هنگام اجرای سیستم بخواهید اتفاق بیافته رو بر عهده داره. مثلاً اگه قبل از اینکه یک کنترلر بخواد اجرا بشه شما یک عملی رو بخواهید انجام بدید از هوک استفاده می کنید.

Language

اگه پروژه ی شما از چندین زبان پشتیبانی می کنه می تونید از این پوشه کمک بگیرید.

Libraries

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

Logs

تمامی خطاها، هشدارها به عبارت بهتر تمامی پیام هایی که از سیستم دریافت می کنید در این پوشه ساخته میشه.

Models

ماژول های مختلف در این فولدر قرار می گیره.

third_party

کم و بیش بیشتر برنامه نویس ها با این کلمه آشنا هستند. در واقع شما می توانید فایل های که جزو پروژه اصلی شما نیستند ولی می خواهید از آن استفاده کنید داخل این پوشه بذارید.

views

تمامی ویو ها در این قسمت قرار می گیره.