مزایا و معایب فریم ورک yii
ﺯﻣﺎﻥ ﻣﻄﺎﻟﻌﻪ: 4 دقیقه

مزایا و معایب فریم ورک yii

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

فریم ورک yii به عنوان یک فریم ورک اپ سورس(متن باز) از سال 2008 شروع به کار کرد و تا الان (2017) توانسته است نظر بسیاری از توسعه دهندگان وب و برنامه نویسان php ر ا به خود جلب کند.

Yii در نسخه های مختلفی عرضه شده و به منظور پروژه های مختلفی بالخصوص تجارت الکترونیک مورد استفاده قرار میگیرد.

آخرین نسخه yii با نام yii2.0 منتشر و قابل استفاده است.

طبق ادعای سازندگان yii می توان yii را یک فریم ورک قدرتمند در عین حال ساده و قابل گسترش توصیف کرد که تا حدی این ادعا صحیح می باشد.

مزایای فریم ورک yii

  • Yii قابلیت گسترش و تغییر توسط توسعه دهندگان را دارد و یک فریم ورک متن باز می باشد.
  • فریم ورک yii توانسته است با بهره گیری از کلاس های هوشمند خود تعداد زیادی از درخواست های ارسالی از طرف سرور را در هر ثانیه رسیدگی و پاسخ دهد، علاوه بر این ظرفیت ذخیره سازی yii بسیار بیشتر از سایر فریم ورک های هم رده است.
  • در yii کلاس هایی جهت امنیت پروژه و جلوگیری از هک و نفوذ به دیتابیس ایجاد شده است.

  • هر کلاس و تابع  yii بدون رمز گذاری کد ها ، قابل تغییر می باشد که این امر باعث سفارشی سازی کلاس ها و توابع موجود در این فریم ورک می گردد و این امکان را به توسعه دهنده می دهد تا فریم ورک yii را با توجه به نیاز پروژه ی خود تغییر دهد.
  • فریم ورک yii دارای اسناد و فایل های بسیاری جهت آموزش و همچنین معرفی کلاس ها و توابع موجود در این فریم ورک است . این اسناد و فایل ها در یادگیری و رفع مشکلات توسعه دهندگان در استفاده از yii بسیار مفید و کاربردی می باشد.
  • کلاس ها و توابعی منحصر به فرد جهت کار با دیتابیس در قالبی سریع و امن.
use yii\db\Query;

use app\models\Customer;



$customers = (new Query)->from('customer')

    ->where(['status' => Customer::STATUS_ACTIVE])

    ->orderBy('id')

    ->all();



$customers = Customer::find()

    ->where(['status' => Customer::STATUS_ACTIVE])

    ->orderBy('id')

    ->asArray();

    ->all();

(کد زیر در مورد پرس و جو های رابطه ای در یک رکورد است):


namespace app\models;



use app\models\Order;

use yii\db\ActiveRecord;



class Customer extends ActiveRecord

{

    public static function tableName()

    {

        return 'customer';

    }



    // defines a one-to-many relation with Order model

    public function getOrders()

    {

        return $this->hasMany(Order::className(), ['customer_id' => 'id']);

    }

}



// returns the customer whose id is 100

$customer = Customer::findOne(100);

// returns the orders for the customer

$orders = $customer->orders;

  • کلاس ها و توابعی بهینه شده جهت کار با پروتکل Http .

معایب فریم ورک yii 

  • برخلاف ادعای سازندگان yii مبنی بر سادگی فریم ورک yii اما yii آنقدر ها هم ساده نیست.حتی با وجود اسناد و فایل های کمک آموزشی برخی از کلاس ها و توابع yii بسیار مبهم و گیج کننده است که توسعه دهندگان به سختی میتوانند آنها را درک و تغییر و سفارشی سازی کنند.

  • با توجه به گستردگی فریم ورک های php و افزایش تعداد آ«ها و رقابت شدید بین قابلیت ها و سرعت فریم ورک ها، تعداد توسعه دهندگان فریمورک yii به شدت کاهش پیدا کرده است و به دنبال آن گسترش و به روز رسانی های این فریم ورک متن باز که عملا کار توسعه دهندگان آن است به کندی و با زمانی طولانی صورت میگیرد.
  • مدیریت کلاس ها وتوابع در پروژه های بزرگ دشوار می باشد.

جمع بندی

با این توضیحات پیرامون مزایا و معایب فریم ورک yii شاید تصمیم برای خیلی از توسعه دهندگان سخت باشد که پروژه ی خود را با yii انجام دهند یا خیر؟در جواب به این سوال باید بگوییم با وجود برخی نقص ها در فریم ورک yii اما این فریم ورک همچنان جزء یکی از بهترین و پر طرفدار ترین فریم ورک های phpمی باشد.yii از کلاس ها و توابع بهینه شده و قابل سفارشی سازی بهره مند است و از الگوهای امنیتی سطح بالایی برخوردار است.اما با این حال در پروژه های بزرگ و پیچیده به صورت کامل نمیتواند نیاز توسعه دهندگان را برآورده نماید.

Yii برای پروژه های کوچک و متوسط و نیز سایت هایی مبتنی بر تجارت الکترونیک و فروشگاهی بسیار مناسب است.

برای دریافت فایل های مربوط به فریم ورک yii می توانید به لینک زیر مراجعه نمایید:

http://www.yiiframework.com/download/

چه امتیازی برای این مقاله میدهید؟

خیلی بد
بد
متوسط
خوب
عالی
5 از 1 رای

/@roocketir

باور ما اینست که کاربران ایرانی لایق بهترین‌ها هستند، از این رو ما تمام تلاش خود را می‌کنیم تا بتوانیم فیلم‌ها و مقالات آموزشی بروز و کاربردی را در اختیارتان قرار دهیم تا با استفاده از آنها بتوانید جزء بهترین‌ها در صنعت طراحی و برنامه‌نویسی وب شوید. ما ادعا نمی‌کنیم که بهترین هستیم ولی همیشه تمام تلاش خود را می‌کنیم بهترین عملکرد را به شما ارائه دهیم.

دیدگاه و پرسش

برای ارسال دیدگاه لازم است وارد شده یا ثبت‌نام کنید ورود یا ثبت‌نام

در حال دریافت نظرات از سرور، لطفا منتظر بمانید

در حال دریافت نظرات از سرور، لطفا منتظر بمانید