انتخاب yii یا laravel


بین فرم ورک های yii و laravel کدام بهتر است؟

معیار انتخاب چیست؟



من یه سایت پیدا کردم که نقطه قوت و ضعف هر دو رو گفته ولی من پیشنهاد میکنم که شما کد ها رو بررسی کنید

اگه فرصت شد ترجمه رو هم قرار میدم[/right]


Laravel 5

Strenghts نقطه قوت

Concise core system with well written and very intuitive components.

Many activists all around the internet.

Uses proven components from very traditional frameworks (ex. Symphony).

Latest PHP programming practices and versions are always incorporated in new versions.

Excellent performance (without 3rd party extensions).

Native cloud/file handling modules.

Weakness نقطه ضعف

No continuity between versions. Update the core for the version 4 to the version 5 and your application will break.

Artisan auto-generators are too basic. You will get much faster results by coping and pasting existing code from other projects since the make commands only build skeletons.

No standard/development views generation. You will spend hours coding before being able to test your application outputs.

No authorization/ACL/roles features included in the official distribution (what is authentication without hierarchy?).

Default authentication system is incomplete and requires manual implementation of basic features.

No HTML or form helpers in the official distribution. All HTML and the respective PHP backend coding must be done manually

Most of the extension packages available don't make use of native Laravel components. The result is an application with a lot of code redundancy. In fact, most of the extensions are framework agnostic pieces of software that could work wherever you want.

Most of the extensions lack documentation and won't run out of the box. You'll find yourself reading a dozen times the GitHub's README.MD files and will spend many hours solving all the errors and incompatibilities that will be presented.

Most of the packages use a bunch of build tools and dependency managers. It's almost impossible to keep track of the updates and changes in the packages and sub-packages. If using development versions frequently some features might break from one update to the other.

Laracasts: Not everyone prefers to watch videos instead of reading a well documented guide.

Confusing folder organization. 

Yii 2


Can be installed by downloading a zip package, no composer or other package managers required (you can use them as well).

Out-of-the-box CRUD generation with functional views, controllers, search functions, models, etc...

Out-of-the-box user authentication with ACL/roles and permission modules.

Official standard site boilerplate with user authentication and Bootstrap views. With a few more clicks you can also have a CRUD interface right from your tables.

Intuitive folder organization.

Custom widgets for functional PHP/HTML snippets. Very useful while building dashboards.

Built-in widgets that render data tables as plain HTML or using AJAX dynamic views.

Bootstrap and JQueryUI widgets. Create a working page menu without external modules.

HTML helpers to generate tags and form components from your code.

Debug toolbar for displaying technical data and statistics during the code execution.

Powerful internationalization and translation tools for multi-language applications.

Excellent and very detailed official documentation.

Centralized information resources in the official website.

Mature development cycle. No extravagant or revolutionary changes every 6 months.


Less user contributed extensions than Laravel.

Less commercial extensions than Laravel.

Coding looks more polluted because of the extensive use of PHP arrays instead of single object properties.

Different configuration files for different environments can be quite confusing.

Version 2 is still too new and most tutorials, documentations and extensions will take a while to be updated.[/left]


منبع: danbp.org[/right]

symfony :)


من چندتا نکته بهت میگم که امیدوارم در تصمیمگیری بهت کمک کنه.

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

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

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

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