سلام به همه ی توسعه د هنده های وب یا دوستانی که علاقه دارن توسعه ی وب را یاد بگیرند من نمیدونم دقیقا الان در چه تاریخی هست که شما این مطلب رو میخونید ولی من رو دقیقا روز دوم بهمن سال 1398 شمسی نوشتم .
بحث وب بحث گسترده ای هست ولی بیایید قبول کنیم که اکثر کسب و کار ها مجبور به استفاده از فریمورک های پی اچ پی هستند .
مخصوصا استارتاپ های تازه کار و نوپا یا کسب و کارهای شخصی که هزینه های اضافی ندارد .
خب بریم سر اصل مطلب ، هدف نگارش این مقاله ی آموزشی این است که ببینیم الان فریمورک کدایگنایتر کجاست ؟ و با وجود محبوب ترین فریمورک پی اچ پی یعنی لاراول اصلا کدایگنایتری باقی مونده ؟ اگر باقی مونده استفاده میشه؟ در کل میخام مقاله ی مفید و جذابی بنویسم :)))
اول اینکه بیایید ببینیم اینا چی هستن !؟
سال 2001 بود که این فریمورک با اون لوگو هویجی رنگش ظهور کرد . اون موقع ها فریمورک های خیلی زیادی برای پی اچ پی وجود داشتن مثل YII , ZEND , Codeigniter , Symfony , CakePHP و ...
اما چطور شد که یهو به سر تیلو اوتول زد که بشینه یه فریمورک بنویسه !!!
جریان اینطوری بود که فریمورک های بالا هر کدوم یه چیزی داشتن که بقیه نداشت ! بروزرسانی ها نامرتب بود و در کل بخام خودمونی بگم خر تو خر بود ...
لاراول با هدف اوپن سورس بودن و با هدف استفاده از بسته های مفید دیگر فریمورک ها پا به عرصه گذاشت مثلا هنگام نصب میبینید که خیلی از بسته هاش از فریمورک Symfony هست .
این یه چیزی بود که به نظرم از لینوکس الهام گرفته شده بود لینوکسم اینطوریه دیگه مثلا میخای یه نرم افزار نصب کنی میگه این نرم افزار به فلان بسته نیاز داره و فلان بسته به بسته ی دیگری نیاز داره اونم به پایتون نیاز داره در مجموع شما باید چهار بسته نصب کنید شایدم چندتایی را بروزرسانی کنید .
این وابستگی ها همینطوری قابل انجام نبود و به همین منظور سیستمی برای پروژه های PHP بوجود آمد به نام مدیریت وابستگی ها که اسمش Composer بود .
لاراول با ابزارهای مناسب برنامه نویسان وب ظهور کرد که خیلی هاشون دغدغه بود ...
ابزارهایی که لاراول با خودش ارائه کرد :
خب کدایگنایتر قدیمی تر از لاراول است اولین نسخه ی کدایگنایتر در سال 2006 میلادی منتشر شده است . کدایگنایتر بر خلاف لاراول ، خیلی ساده نصب میشه خیلی ساده راه اندازی میشه و به همین خاطر هم هست افرادی که تازه به سمت پی اچ پی میان کدایگنایتر را بیشتر دوست دارند .
این فریمورک بصورت متن باز منتشر شده است و یعنی توسعه ی آن توسط هرکسی قابل انجام است .
اون زمانی که codeigniter با آن همه امکانات منتشر شد در نوع خودش بی نظیر بود . اون زمان ها هنوز فریمورک خوبی برای پی اچ پی وجود نداشت که بشه به سادگی استفاده کرد .
فریمورک codeigniter از الگوی MVC استفاده میکنه ، پایداری و امنیت خوبی داره و سایتتون را بدون نگرانی میتونید با فریمورک codeigniter پیاده سازی کنید ولی توجه کنید که باید اصولش را رعایت کنید تا سایتتون هک نشه .
لاراول با سیستم احراز هویتی مثل auth میاد و بصورت خودکار سیستمی برای احراز هویت ثبت نام و ... درست میکنه ولی کدایگنایتر بصورت پیشفرض اینا رو نداره شما باید با کدنویسی اینارو پیاده سازی کنید .
البته یادتون نره که codeigniter دو بخش به نام های helper ها library ها داره که هر برنامه نویس میتونه موارد مورد نیازش را به هسته ی codeigniter اضافه کنه و نیازش را برطرف کنه ولی معمولا اینا برای لاراول بصورت اماده و از قبل توسط دیگر برنامه نویسا نوشته شده .
وقتی با بعضی ها درباره ی تفاوت لاراول و کدایگنایتر سوال میکنی طوری پاسخ میدن انگار لاراول باعث میشه مثلا پی اچ پی از زبان پی اچ پی یهو به پایتون تبدیل بشه یا همچین چیزی !
کدایگنایتر و فریمورک روی پی اچ پی کار میکنند زبان برنامه نویسی جدیدی که خلق نکردن !
تفاوت در اصل نیست بلکه در موارد فرعی است مثلا فلان ابزار مناسب امنیت یا فلان ابزار مناسب کار با پایگاه داده بصورت آماده در لاراول است ولی در کدایگنایتر نیست ! این مهم ترین تفاوت بین کدایگنایتر و لاراوله
بیشتر تفاوت در اینه که برنامه نویس چطوره و با کدوم قراره بهتر کار کنه !
همین الانشم پروژه های بزرگی دارن با کدایگنایتر اجرا میشن و هر چی ام باشه بلاخره از وردپرس که بدتر نیست !!!
قطعا بله !
کدایگنایتر هنوزم در حال اپدیت است البته باگ شدید امنیتی گزارش نمیشه از کدایگنایتر ، باز هم میگم به برنامه نویس مربوطه که پروژه را چطور اجرا بکنه و چطور کدنویسی کنه
اگه از کدایگنایتر بصورت اصولی استفاده بشه و قواعدش رعایت بشه و حتی از ابزارها و کتابخانه های درونشیم بهره گرفته بشه مطمئنا هیچ مشکل امنیتی نخواهد داشت .
تقریبا اکثر پروژه های آنلاین تحت وب قابل پیاده سازی با کدایگنایتر هستند مگر برای مسائل خاصی مثل برنامه نویسی سوکت و ... که نیاز به دریافت و اطلاعات real time داشته باشند که البته بحث این مقاله نیست .
حتی من میگم برای پروژه هایی که شخصی است یا اعضای تیم گروهی که روش کار میکنه دو سه نفر بیشتر نیست نیازی نیست وارد بحث لاراول بشیم
لاراول نیازمندی های سروری زیادی میطلبه
لاراول نسبتا سنگینه
لااول یه عالمه بسته ی جانبی باخودش نصب میکنه
و در نهایت برای کسب وکارهای کوچک مناسب نیست بلکه کدایگنایتر بهترین گزینه ی برای کسب و کارهای کوچکه
من یه دوره دیدم بصورت پروژه محور برای یادگیری کدایگنایتر واقعا عالی بود دوره ی ساخت دیوار آواسام در این جا مباحث کدایگنایتر بصورت خوب و کامل درون یک پروژه عملیاتی واقعی پیاده میشه و شما بیس کدایگنایتر را فرا میگیرید .
اگر مقاله نویسی من خوب بود اشتراک گذاری و حمایت با قلب یادتون نره :*)