PDA

View Full Version : Yii vs Laravel



صفحه : 1 [2]

rezakho
جمعه 01 فروردین 1393, 20:48 عصر
ضمن تشکر از همه دوستان، اگر کسی بخواد بین یی و لاراول یکی رو انتخاب کنه، این تاپیک راهنمایی خوبه بوده و حتی نکات خوبی درباره مفاهیم کلی فریمورک در خودش داره
بنده دیگه علاقه ای به ادامه و پست مطلب ندارم، دوستان خودشون در صورت تمایل، میتونند تاپیک رو ادامه بدند
برای همه آرزوی موفقیت و ترفیع سطح دانش رو دارم
موفق و پیروز باشید
:)

MMSHFE
شنبه 02 فروردین 1393, 02:53 صبح
خوب پس اگه موافق باشین از اینجا به بعد من روی امکانات Yii متمرکز میشم و شما معادل اونها رو در لاراول توضیح بدین. فقط اگه اشکالی نداشته باشه، این مسئله باشه واسه بعد از تعطیلات عید که وقتم آزاد بشه چون درحال بازبینی پکیج آموزشی PHP هستم.

M.Rahi
شنبه 02 فروردین 1393, 16:36 عصر
سلام، سال نو همگی مبارک باشه :لبخندساده:
با توجه به تحقیقاتم در مورد این دو فریمورک و مطالعه مستندات هر دوی آنها، فعلا به این نتایج رسیدم که ان شاء الله برای بقیه مثمر ثمر واقع بشه:

1) اول از همه اینکه هر پروژه ای با هردو فریمورک قابل پیاده سازی است.
2) دستورات laravel کوتاه تر و خواناتر است.
3) قابلیت های کش yii بیشتر است.
4) کانفیگ laravel کامل تر و واضح تر است.
5) توضیحات مستندات yii بهتر است.

قطعا موارد دیگه ای هم است اما سعی کردم خلاصه و اصلی ها رو بگم.
به نظر من چون باید بیشتر وقتمون رو روی کاربرد سیستم و بخش تجزیه و تحلیل اون صرف کنیم، laravel کمک میکنه که سریعتر کد بزنیم و تا حدودی سرعت عمل بالاتر بره. همچنین با گذشت زمان، برای توسعه ی پروژه با نگاهی سریع به کدها میتونیم سریع تر دستوراتی که نوشتیم رو یادآوری کنیم.

در مورد کدهای غیر ضروری مثل کار با کلاس File نیز شایان ذکر هست که اینجور کدها درسته یه امکان اضافی هست و شاید مثلا تابع delete به کار بیاد و require و move و ... رو بشه معادل تابع php رو نوشت اما این میتونه به انعطاف پذیری فریم ورک کمک کنه، همونطور که توی وردپرس میشه با چند تابع مختلف یه مقدار رو گرفت.
این در واقع حق انتخاب بیشتری به برنامه نویس میده.
امیدوارم هیچ وقت تعصبی پیش نریم چرا که میشه با دلایل منطقی، نه تنها laravel و yii ، بلکه PHP رو کنار بذاریم و بریم سراغ ASP.

با آرزوی روزهای کامیابی

MMSHFE
شنبه 02 فروردین 1393, 16:46 عصر
خوب به امید خدا بعد از تعطیلات عید دوباره به این تاپیک سر بزنید چون قراره از اینجا به بعد من روی نقاط قوت Yii انگشت بگذارم و ببینیم لاراول چطور اونها رو مدیریت کرده تا این تاپیک کاملتر بشه.

bestirani2
شنبه 02 فروردین 1393, 17:01 عصر
سلام، سال نو همگی مبارک باشه :لبخندساده:
با توجه به تحقیقاتم در مورد این دو فریمورک و مطالعه مستندات هر دوی آنها، فعلا به این نتایج رسیدم که ان شاء الله برای بقیه مثمر ثمر واقع بشه:

1) اول از همه اینکه هر پروژه ای با هردو فریمورک قابل پیاده سازی است.
2) دستورات laravel کوتاه تر و خواناتر است.
3) قابلیت های کش yii بیشتر است.
4) کانفیگ laravel کامل تر و واضح تر است.
5) توضیحات مستندات yii بهتر است.

قطعا موارد دیگه ای هم است اما سعی کردم خلاصه و اصلی ها رو بگم.
به نظر من چون باید بیشتر وقتمون رو روی کاربرد سیستم و بخش تجزیه و تحلیل اون صرف کنیم، laravel کمک میکنه که سریعتر کد بزنیم و تا حدودی سرعت عمل بالاتر بره. همچنین با گذشت زمان، برای توسعه ی پروژه با نگاهی سریع به کدها میتونیم سریع تر دستوراتی که نوشتیم رو یادآوری کنیم.

در مورد کدهای غیر ضروری مثل کار با کلاس File نیز شایان ذکر هست که اینجور کدها درسته یه امکان اضافی هست و شاید مثلا تابع delete به کار بیاد و require و move و ... رو بشه معادل تابع php رو نوشت اما این میتونه به انعطاف پذیری فریم ورک کمک کنه، همونطور که توی وردپرس میشه با چند تابع مختلف یه مقدار رو گرفت.
این در واقع حق انتخاب بیشتری به برنامه نویس میده.
امیدوارم هیچ وقت تعصبی پیش نریم چرا که میشه با دلایل منطقی، نه تنها laravel و yii ، بلکه PHP رو کنار بذاریم و بریم سراغ ASP.

با آرزوی روزهای کامیابی

سلام دوست عزیز
بی شک هر چیزی رو میشه با هر فریم ورک و هر زبونی فراهم کرد. مهم سرعت توسعه، خوانایی کد، قابلیت نگهداری، امنیت و ... هست.
پس با قسمت اول موافقم
با قسمت دوم مخالفم، به نظر YII کوتاهتر هست ولی Laravel ساده تر هست و راحتر میشه یاد گرفتش
با سه موافقم
با چهار مخالفم. کانفیگ هر دو دقیقاً یکی هست. هر دو یه آرایه پی اچ پی رو بر میگردونند، تنها فرقشون اینه لاراول به صورت پیش فرض کانفیگ هر قسمت رو جدا کرده مثل codeigniter که Yii این کارو نکرده ولی میشه توی YII هم اینکار رو کرد بدون نیاز به کدنویسی خاصی.
با پنجم موافقم.
قسمت ششم هم اضافه میکنم. YII 2 هم در راهه که خیلی امکانات خوبی میده + پلاگین های خیلی زیادی واسه YII وجود داره. تقریبا واسه هر کاری یه پلاگین میتونید پیدا کنید به بیان دیگه میتونید به جای برنامه نویسی برید دنبال پلاگین مورد نظرتون بگردید :قهقهه:

اما در مورد قسمت کلاس جدا و جدا سازی متد های POST و GET در لاراول
من با هر دوی این موارد موافقم و از نظر مهندسی نرم افزار تایید میشه.

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

در مورد جدا سازی Post و Get در دو متد جدا خوبی این روش اینه که بین دو قسمت کامل جدا سازی انجام شده. در کل از نظر مهندسی به کار بردن دستورات شرطی خوب نیست و تا جایی که میشه نباید به کار برده بشه + راحت میشه RestFul رو پیاده سازی کرد.

درمورد دلایل منطقی برای کنار گذاشتن PHP موافق نیستم. واسه PHP هم فریم ورک به قدرت asp.net mvc هست ولی اگه منظورتون asp.net هست که من دلایلی میارم که اصلاً برای برنامه نویسی مناسب نیست

M.Rahi
شنبه 02 فروردین 1393, 19:07 عصر
واسه PHP هم فریم ورک به قدرت asp.net mvc هست ولی اگه منظورتون asp.net هست که من دلایلی میارم که اصلاً برای برنامه نویسی مناسب نیست

بله منظورم همون asp.net mvc بود. در مورد php و asp خیلی تحقیق کردم و هرکی دلایلی میاورد که تصمیم گیری رو سخت میکرد!
آخرین بار توی نمایشگاه رسانه های دیجیتال، با برنامه نویس سایت راسخون کلی در این مورد صحبت کردیم و گفت:
"من حدودا 8 سال با php کار کردم و تقریبا اکثر فریمورک ها مثل (zend,codeigniter,cakephp,...) را امتحان کردم و در آخر تصمیم گرفتم با asp کار کنم چون این زبان توسط یک شرکت بزرگ و حرفه ای پشتیبانی میشه که برنامه نویسای مجربی داره و کار کردن باهاش سخت نیست. و الان حدود 3 سال هست که با asp کار میکنم و خیلی راضی ام."

با حرفش موافقم.

MMSHFE
شنبه 02 فروردین 1393, 19:30 عصر
بهتره توی این تاپیک نظرات شخصیمون رو که کدوم فریمورک رو میخوایم انتخاب کنیم و از کدوم بیشتر خوشمون میاد، درج نکنیم و بگذاریم این تاپیک همون حالت مقایسه ای خودش رو حفظ کنه و هر کسی برحسب نیاز خودش و بدون اینکه ما بهش سمت و سو بدیم، تصمیم بگیره. برای مثال بحث جداکردن Get و Post که اشاره کردین رو Yii هم داره (Yii::app()->request->getQuery و Yii::app()->request->getPost در نسخه 1.1 و Request::get و Request::post در نسخه 2).
درمورد اینکه ASP.NET حتی با MVC از PHP بهتره هم من شخصاً موافق نیستم چون Microsoft هرچقدر هم که بزرگ باشه (که بنظرم نیست و این مسئله از حفره های امنیتی محصولاتش مشخصه و این شرکت رو فقط یک حباب بزرگ میدونم)، باز هم توی پشتیبانی خوب عمل نمیکنه و فرضاً اگه شما یک باگ رو گزارش کنید، تا وقتی که شرکتی به بزرگی گوگل نباشین، اصلاً ایمیل شما خونده نمیشه (میتونید تست کنید). درهرصورت باز هم تأکید میکنم نظرات شخصی رو در این تاپیک وارد نکنید.

MMSHFE
شنبه 02 فروردین 1393, 19:33 عصر
کانفیگ هر دو دقیقاً یکی هست. هر دو یه آرایه پی اچ پی رو بر میگردونند، تنها فرقشون اینه لاراول به صورت پیش فرض کانفیگ هر قسمت رو جدا کرده مثل codeigniter که Yii این کارو نکرده ولی میشه توی YII هم اینکار رو کرد بدون نیاز به کدنویسی خاصی.
من حتی با یک کد ساده توی متد init کلاس کنترلر در Yii اومدم توی یک پروژه خاص، امکان بازنویسی تنظیمات سایت (Yii::app()->params) رو به مدیر دادم و هرکدوم رو که بخواد میتونه تغییر بده (بدون اینکه فایل تنظیمات دست بخوره) و توی دیتابیس ذخیره میشه و هر تنظیمی که نسخه معادل توی دیتابیس داشته باشه، با نسخه دیتابیس بازنویسی میشه.

bestirani2
شنبه 02 فروردین 1393, 19:45 عصر
جداکردن Get و Post که اشاره کردین رو Yii هم داره



منظورم از جدا کردن این بود


class UserController extends BaseController
{
public function getIndex()
{
//
}

public function postUpdate()
{
//
}
}


که توی YII باید با if اینکارو کنیم.

bestirani2
شنبه 02 فروردین 1393, 19:47 عصر
من حتی با یک کد ساده توی متد init کلاس کنترلر در Yii اومدم توی یک پروژه خاص، امکان بازنویسی تنظیمات سایت (Yii::app()->params) رو به مدیر دادم و هرکدوم رو که بخواد میتونه تغییر بده (بدون اینکه فایل تنظیمات دست بخوره) و توی دیتابیس ذخیره میشه و هر تنظیمی که نسخه معادل توی دیتابیس داشته باشه، با نسخه دیتابیس بازنویسی میشه.

لاراول هم میشه. در کل به نظر من هیچ فرق نداره تنظیمات این دو فریم ورک از نظر من کاملاً شبیه هم هستند و هیچ کدومشون حرفی برای گفتن نسبت به دیگری نداره.

bestirani2
شنبه 02 فروردین 1393, 19:54 عصر
بله منظورم همون asp.net mvc بود. در مورد php و asp خیلی تحقیق کردم و هرکی دلایلی میاورد که تصمیم گیری رو سخت میکرد!
آخرین بار توی نمایشگاه رسانه های دیجیتال، با برنامه نویس سایت راسخون کلی در این مورد صحبت کردیم و گفت:
"من حدودا 8 سال با php کار کردم و تقریبا اکثر فریمورک ها مثل (zend,codeigniter,cakephp,...) را امتحان کردم و در آخر تصمیم گرفتم با asp کار کنم چون این زبان توسط یک شرکت بزرگ و حرفه ای پشتیبانی میشه که برنامه نویسای مجربی داره و کار کردن باهاش سخت نیست. و الان حدود 3 سال هست که با asp کار میکنم و خیلی راضی ام."

با حرفش موافقم.

امتحان کردن خیلی فرق داره با اینکه عمیقاً کار کنید. من الان با هر سه تا فریم ورک YII، سیمفونی و asp.net mvc کار میکنم. اگه بخواید ترتیبی که ترجیح میدم رو بدونید بگید که پیغام خصوصی بگم.
صرفاً اینکه یه برنامه نویس سایت ... گفته دلیل خوبی نیست. مطمئن باشید از بلاگفا هم بپرسید میگه asp.net mvc چون هر دو سایت دات نتی هستند ولی کلی سایت ایرانی بزرگ هست که با پی اچ پی هست که از اونها هم بپرسید میگند پی اچ پی که طبیعی هم هست.
در مورد پشتیبانی هم فریم ورکی مثل سیمفونی یا همون زند هست که یک شرکت مطرح پشتش هست. به فرض مثال سیمفونی به صورت منظم هر شش ماه یه بار آپدیت میشه. احتمالاً با asp وب فرم کار کرده نه asp.net mvc چون از نظر سختی کار کردن تقریبا همشون شبیه هم هستند ولی راجب وب فرم بگید قبول دارم راحتره ولی کلی معایب داره. شاید واسه پروژه دانشجویی و پروژه های خیلی کوچیک مناسب باشه ولی برای اکثر پروژه ها نه.
الان پی اچ پی هم فریم ورک هایی داره که اگه از asp.net mvc جلوتر نباشند، عقبتر هم نیستند.

tux-world
شنبه 02 فروردین 1393, 20:09 عصر
به نظرم ادامه پیدا کنه بهتره.به شرط و شروطها . مباحث دلایل شخصی تجربه های شخصی کلا تو تاپیک دیگه مطرح نشه.شاید استفاده از توابع فایل تو لاراول نیازی نباشه ولی آسون کردن مسخره کردن نداره که. و اینکه تاپیکهای که دوستان میزنن جامعتر بشه. جای سوالاتیکه ممکنه تو ذهن ایجاد بکنه ویا توضیحات بیشتر بهتره. در کل ما فرض رو بر این میذاریم که برنامه نویسای دیگه خودشون تفاوت ها و انتخاب ها رو احساس و برگزینند.هیچ یک از این دو فریم ورک کم نمیارن شاید از لحاظ بعضی موارد و سیاستهای کلی توسعه و مدیریتی فرق بکنن. سادگی نوع استفاده و خیلی چیزهای دیگه. به هر حال کسایی معتقد به لاراول هستند کسای دیگه به Yii . این دلیل قانع کننده برای ماست نه نظرات و تجربه های شخصی و نه حتی دلایل متعدد قانع کننده سازنده های این فریم ورکها. موفق باشید.

Amir_f
یک شنبه 03 فروردین 1393, 01:14 صبح
خوب به امید خدا بعد از تعطیلات عید دوباره به این تاپیک سر بزنید چون قراره از اینجا به بعد من روی نقاط قوت Yii انگشت بگذارم و ببینیم لاراول چطور اونها رو مدیریت کرده تا این تاپیک کاملتر بشه.

جناب شهرکی لطفا بحث رو ادامه بدین ، بنده به شخصه دوست دارم در مورد امکانات دو فریمورک بیشتر بدونم

با سپاس

MMSHFE
یک شنبه 03 فروردین 1393, 02:35 صبح
تاپیک حتماً بعد از تعطیلات ادامه پیدا میکنه. دارم توی اوقات فراغتم، امکانات Yii رو دسته بندی میکنم تا کم کم بریم سراغشون. مشابه همین تاپیک برای مقایسه سایر فریمورکها هم مدنظر دارم که ایجاد بشه.

metal gear solid 4
سه شنبه 05 فروردین 1393, 11:08 صبح
ضمن تشکر از همه دوستان، اگر کسی بخواد بین یی و لاراول یکی رو انتخاب کنه، این تاپیک راهنمایی خوبه بوده و حتی نکات خوبی درباره مفاهیم کلی فریمورک در خودش داره
بنده دیگه علاقه ای به ادامه و پست مطلب ندارم، دوستان خودشون در صورت تمایل، میتونند تاپیک رو ادامه بدند
برای همه آرزوی موفقیت و ترفیع سطح دانش رو دارم
موفق و پیروز باشید
:)
بنده لحظه ی اولی که واکنش دوستان رو نسبت به Laravel دیدم قطع امید کردم. اینجا کسی قرار نیست فریمورکی که مدت هاست داره باهاش کار میکنه رو کنار بگذاره. حتی اگر قبول هم بکنه که رقیب بهتر عمل کرده. این تاپیک برای افرادی خوبه که قراره از ابتدا تصمیم به انتخاب یک فریمورک بگیرن.
ممنون که تا اینجا این تاپیک رو پیش بردید. اطلاعات خیلی خوبی بود.
دوستانی که علاقه مند هستند میتونند از این لینک (http://laravel.gen.tr/cheatsheet/) اطلاعات بیشتر کسب کنند. البته کامل نیست

bestirani2
سه شنبه 05 فروردین 1393, 12:19 عصر
بنده لحظه ی اولی که واکنش دوستان رو نسبت به Laravel دیدم قطع امید کردم. اینجا کسی قرار نیست فریمورکی که مدت هاست داره باهاش کار میکنه رو کنار بگذاره. حتی اگر قبول هم بکنه که رقیب بهتر عمل کرده. این تاپیک برای افرادی خوبه که قراره از ابتدا تصمیم به انتخاب یک فریمورک بگیرن.
ممنون که تا اینجا این تاپیک رو پیش بردید. اطلاعات خیلی خوبی بود.
دوستانی که علاقه مند هستند میتونند از این لینک (http://laravel.gen.tr/cheatsheet/) اطلاعات بیشتر کسب کنند. البته کامل نیست
باید فریم ورک جدید حرفی برای گفتن داشته باشه که فریم ورک قبلی رو ول کنیم.
البته باید دید هدف فریم ورک چیه؟ به نظر من YII و لاراول دو هدف متفاوت دارند و کسی که YII رو کار میکنه به دلیل سرعت بالاش، پشتیبانی قوی از وب 2 و این گونه موارد هست.

MMSHFE
سه شنبه 05 فروردین 1393, 12:44 عصر
البته Yii به جز سرعت بالا و سازگاری خیلی خوب و نسبتاً کامل با استانداردهای Web 2، امتیازهای دیگری هم داره که بعد از تعطیلات عید به اونها میپردازیم و خوشحال میشم برای تکمیل شدن این تاپیک، دوستانی که با لاراول کار میکنن، تاپیک رو ادامه بدن و جوابها رو در قالب نسخه معادل اون امکانات در لاراول، بیان کنن.

metal gear solid 4
سه شنبه 05 فروردین 1393, 12:57 عصر
باید فریم ورک جدید حرفی برای گفتن داشته باشه که فریم ورک قبلی رو ول کنیم.
البته باید دید هدف فریم ورک چیه؟ به نظر من YII و لاراول دو هدف متفاوت دارند و کسی که YII رو کار میکنه به دلیل سرعت بالاش، پشتیبانی قوی از وب 2 و این گونه موارد هست.
دقیقاً معضل همینه که نمیشه فهموند فریمورک جدید حرفی برای گفتن داره. چون نمیخاید بپذیرید.
از ابتدای کار تا به الان هر جا که لاراول امکانات بیشتری ارائه میده. فرمودید چیز خاصی نیست. نیاز نیست. پیچیدست. Yii2 هم اینارو داره!! و آخرش میرسید که حالا با تمامی این اوصاف پلاگین هم براش هست. همینطوری پیش میرید و میگید حرفی برای گفتن نیست.

** ضمناً خوشحال میشم استانداردهای وب 2 رو بیان کنید. خیلی کنجکاو شدم بدونم Yii چطور این استانداردهارو برآورده میکنه که سایر فریمورک نمیتونن!!

tux-world
سه شنبه 05 فروردین 1393, 13:13 عصر
منم با حرف metal gear solid 4 (http://barnamenevis.org/member.php?76293-metal-gear-solid-4) کاملا موافقم. آقای شهرکی و دوستان چنان موضع گرفتن در مورد Yii که انگار خدا آفریده این فریم ورک رو. بابا جان هر دوی فریم ورک ها عالین. هیچ کسی هم نمیتونه بگه این بده اون خوبه.yii اگر چه خیلی عالیه ولی واقعا یادگیریش بسیار زمان بره . برای پروژه هایی که بخوایید به مرور زمان روی توسعش وقت بزارید به صرفه نیست. لاراول در عین سادگیش بسیار پر کاربرده ولی هیچ یک از ما لاراول کارا مثل دوستانی که با yii کار میکنن اصلا تعصبی نیستیم. کلا دوستان yii کار با مباحثی که لاراول در امکاناتش گذشته مشکل دارن و ادعا میکنن اگه فرد برنامه نویس باشه اینا چیزی نیستند. بلی این حرف رو منم تصدیق میکنم ولی چه کسی مادرزادی برنامه نویس بوده؟ هیچ کس همه ما از صفر شروع کردیم. تو برنامه نویسی سوتی هایی دادیم که خدا عالمه. پس این دید برنامه نویسا و دوستان هستش که با توجه به امکانات و توانمندیهای فریم ورک ها انتخاب میکنن.
جبهه گیری مسخره کردن. اضافه دونستن همه اینا کارای بچگانست. یه خورده واقع بین باشیم و در مورد خصوصیات و امکانات بحث کنیم نه جنگ کنیم و نه جبهه گیری کنیم.نه تعصب به خرج بدیم که خداییش تا الان فقط دوستان yii کار انجام دادن.
من با rezakho تماس گرفتم اصلا راضی نمیشن بحث رو ادامه بدن فقط به این کارای بچه گانه ای که دوستان انجام میدن.
خوب آقا جان اصلا yii خداست. شما برنده شدید و این فریم ورک عالیه و لاراول آشغال. شما رو به خیر و ما رو به سلامت ببینیم این تعصب شما رو به جا میروسونه

bestirani2
سه شنبه 05 فروردین 1393, 13:43 عصر
دقیقاً معضل همینه که نمیشه فهموند فریمورک جدید حرفی برای گفتن داره. چون نمیخاید بپذیرید.
از ابتدای کار تا به الان هر جا که لاراول امکانات بیشتری ارائه میده. فرمودید چیز خاصی نیست. نیاز نیست. پیچیدست. Yii2 هم اینارو داره!! و آخرش میرسید که حالا با تمامی این اوصاف پلاگین هم براش هست. همینطوری پیش میرید و میگید حرفی برای گفتن نیست.

بنده از اخرهای تاپیک اومدم و تا حالا چیزی رو رد نکردم یا بگم با پلاگین هم میشه.
الان یه نگاه کوتاه به کل تاپیک کردم
موارد زیر خوب هستند که YII نداره، البته این موارد از سیمفونی اومدند و ابتکار لاراول نیست. بنده خودم با اینکه مدت خیلی زیادی YII کار میکردم، در حال حاضر دارم سیمفونی هم کنارش کار میکنم. همینطور asp.net mvc. همینطور که میبینید نه به زبون خاصی تعصب دارم و نه فریم ورک خاصی.


توی لاراول مسیر ها رو میشه بدون اکشن و کنترولر مدیریت کرد
میشه مسیرهای تو در تو تعریف کرد
میشه روت ها رو گروه بندی کرد
در لاراول امکان نام دادن به روت ها برای راحت تر کردن مسیر دهی و یا تولید url ها وجود داره
Route Model Binding

ایجاد یک listener برای کوئری ها که مثل ایونت روی تمام کوئری ها اعمال و اجرا میشه


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

bestirani2
سه شنبه 05 فروردین 1393, 16:02 عصر
البته Yii به جز سرعت بالا و سازگاری خیلی خوب و نسبتاً کامل با استانداردهای Web 2، امتیازهای دیگری هم داره که بعد از تعطیلات عید به اونها میپردازیم و خوشحال میشم برای تکمیل شدن این تاپیک، دوستانی که با لاراول کار میکنن، تاپیک رو ادامه بدن و جوابها رو در قالب نسخه معادل اون امکانات در لاراول، بیان کنن.

البته من عمده امتیازات رو گفتم. امتیازات دیگه ای هم به صورت پیشفرض مثل breadcrumb، منو و ... داره که فکر کنم لاراول به صورت پیشفرض نداره و باید با باندل بیاد که صادقانه حساب کنید مزیتی به حساب نمیاد.

tux-world
سه شنبه 05 فروردین 1393, 16:31 عصر
همه ما قصدمون انتخاب درست و به جای فریم ورک هستش نه ادعاها و تجربیات شخصی. همیشه ما فرض رو روی پیشفرض ها میزاریم تا مقایسه ها بدون مشکل و تعصب و جار و جنجال انجام بشه. همه کاراها رو تو هر فریم ورک و حتی بدون اون هم میشه انجام داد شرط اینه که ما خودمون بدونیم چقدر میتونیم توانمندیهامون رو در اون به اجرا بزاریم. Zend همه میدونن خفن ترین فریم ورک دنیاست. چقدر از برنامه نویسا ازش استفاده میکنن. معلومه یه تعدادی ولی صد در صد نیستن اونا با همه دردسر و سختی هایی که داره باهاش راحتن. یه کسایی با Yii یه کسایی با laravel. این ادعا رو هیچ بنی بشری نمیتونه نقض کنه.
ما هم میگیم شاید البته لاراول از یه لحاظی ممکنه به yii نرسه ولی ما به راحتی میتونیم روش مانور بدیم. شاید البته Yii قدرتمندترین قوی ترین فوق العاده ترین فریم ورک باشه ولی مغز یه انسان نیستش که.
بلاخره اون هم زیر دست برنامه نویسه. یه مواردی رو ممکنه yii کارا دوست داشته باشن فریم ورک براشون انجام بده یه کارایی رو نه. دقیقا برعکس همین برای لاراول هستش. هیچ کس نمیتونه ادعا بکنه یک فریم ورک چقدر عالیه. این خود برنامه نویس هستش که قدرت خلاقیتش رو تو اون فریم ورک عرضه میکنه و فریم ورک کمکش میکنه.
ممکنه الان برای ما لاراول عالی باشه فردا پس فردا ببینیم نه yii بهتره مسلما با yii کار میکنیم. هیچ تعصبی بهش نداریم. ولی کسایی که با yii کار میکنن عمرا اگه به روی خودشون بیارن زمانی که مجبور باشن با لاراول یا هر فریم ورک دیگه ای کار کنن.

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

bestirani2
سه شنبه 05 فروردین 1393, 16:55 عصر
** ضمناً خوشحال میشم استانداردهای وب 2 رو بیان کنید. خیلی کنجکاو شدم بدونم Yii چطور این استانداردهارو برآورده میکنه که سایر فریمورک نمیتونن!!

نتونستم معنی نداره. من به پشتیبانی بهتر از وب 2 اشاره کردم نه اینکه بقیه به کل نتونند.
به عنوان مثال تمام قسمت های فریم ورک به صورت آژاکس هست. صفحه بندی، دیتا گرید و ....
با همون ابزار خود YII یه CRUD رو درست کنید میبینید از فیلتر کردن و مرتب سازی، صفحه بندی و ... همگی آژاکس هستند و نیازی به تغییر صفحه ندارند.
از طرفی تمام Helper ها که استفاده میکنیم به صورت توکار از آژاکس پشتیبانی میکنند.

به عنوان نمونه



<div id="data">
<?php $this->renderPartial('_ajaxContent', array('myValue'=>$myValue)); ?>
</div>

<?php echo CHtml::ajaxButton ("Update data",
CController::createUrl('helloWorld/UpdateAjax'),
array('update' => '#data'));
?>




اگه معادلش رو توی لاراول دارید بگید.

MMSHFE
سه شنبه 05 فروردین 1393, 19:49 عصر
آقای شهرکی و دوستان چنان موضع گرفتن در مورد Yii که انگار خدا آفریده این فریم ورک رو.
خیلی جالبه. من درمورد Yii موضع گرفتم؟ چند مورد از امکاناتی که توی لاراول بود و توی Yii نبود رو مثال بزنم که توی همین تاپیک صادقانه گفتم لاراول بهتر عمل کرده؟ اما وقتی یه چیزی مثل کلاس File رو میاین بعنوان امکانات بیان میکنید که واقعاً هیچ چیزی نداره، انتظار نداشته باشین چون Yii چنین کاری نکرده و تنها دلیلش هم بیهوده بودنشه، باز هم بیام بگم اینجا هم لاراول یکسری امکانات داره که Yii نداره. برای مثال، خودتون بگین کدوم کد زیر بهتره:

foreach($files as $file) { @unlink($file); }

class File {
...
public static function delete($paths)
{
$paths = is_array($paths) ? $paths : func_get_args();
$success = true;
foreach ($paths as $path) { if ( ! @unlink($path)) $success = false; }
return $success;
}
...
}
// Usage
File::delete($file1, $file2, $file3);
یا مثلاً این دو کد رو مقایسه کنید:

require_once $file;

class File {
...
public static function requireOnce($file)
{
require_once $file;
}
...
}
// Usage
File::requireOnce($file);
وقتی یک قابلیت واقعاً لازم و ضروری نیست، دلیلی نداره که حتماً پیاده سازیش کنیم چون میخوایم بگیم که روش منحصربفرد خودمون رو داریم و بعد توی روش منحصربفرد! خودمون، باز بیایم از همون توابع خود PHP که به راحتی کار رو انجام میدادن استفاده کنیم. اینکه یک تابع رو توی یک تابع دیگه صدا بزنیم برای اینکه همه توابع رو توی یک کلاس جمع کنیم، وقتی سودمنده که بخوایم یک کار پیچیده انجام بدیم نه کاری مثل تغییر نام فایل که یک خط کد PHP بیشتر نیست.
حالا هم طوری نشده، اجازه بدین بعد از تعطیلات، با امکاناتی که توی Yii هست در خدمت دوستان عزیز لاراول کار هستیم. امیدوارم دوباره این رو جبهه گیری فرض نکنید چون قصدم اینه که این تاپیک پربارتر بشه و نقاط و ضعف و قوت هر دو فریمورک مشخص بشه و یکطرفه نباشه که فرضاً مدام یکسری امکانات از لاراول رو بکشیم بیرون و بگیم توی Yii هست یا نه. مطمئناً Yii یا هر فریمورک دیگری هم حرفهای زیادی برای گفتن داره که روشن شدنشون میتونه توی گرفتن تصمیم صحیح به کسانی که قصد انتخاب دارن، کمک کنه. از جناب rezakho هم تقاضا دارم با توجه به اینکه استارتر تاپیک بودن و عنوان Yii vs Laravel رو انتخاب کردن و توی هر دو تالار Yii و Laravel پست گذاشتن، پا پس نکشن و معادلهای لاراول رو بیان کنن تا یکوقت کسانی که تازه میخوان فریمورک انتخاب کنن، فکر نکنن لاراول معادل اون چیزهایی که بنده مطرح خواهم کرد رو نداره. وقتی تاپیک مقایسه ای ایجاد میکنید، تا آخر باید پای مقایسه بایستین و این قبیل بچه بازیها (عذر میخوام) که فلانی با تعصب حرف میزنه و... رو بگذارین کنار.
قابلیت از لاراول معرفی کردین، معادلش رو در Yii اگه بود گفتیم و اگه نبود گفتیم لاراول خوب عمل کرده یا اگه قابلیت مهمی نبوده، گفتیم که مهم نیست (و اعلام کردیم که نظر شخصیمونه). حالا که نوبت به امکانات Yii رسیده، اونهم درحالی که از ابتدا اعلام کردم بودم که بعد از شما، نوبت ما خواهد بود، حق ندارید میدون رو ترک کنید. البته باز هم تأکید میکنم Yii و Laravel هر دو فریمورکهای خوب و قدرتمندی هستن و هرکدوم نقاط ضعف و قوت خاص خودشون رو دارن و قصد جنگ و دعوا نداریم و فقط میخوایم یک مقایسه جامع بین اونها داشته باشیم. شاید بعدها این تاپیک یک مرجع مقایسه خوب برای خیلی از افراد شد.

tux-world
سه شنبه 05 فروردین 1393, 22:04 عصر
در مورد حرفی که گفتید: وقتی یک قابلیت واقعاً لازم و ضروری نیست، دلیلی نداره که حتماً پیاده سازیش کنیم.
باید بگم که بلی موقعی میتونین شما این حرف رو بزنید که خودتون فریم ورک منتشر کنید. این توابع هم الکی همینطوری تو فریم ورک قرار داده نشده. درخواست دادن دلیل اوردن توسعه دهنده ها هم مشورت کردن. مطمئن باشید که دلایلی بوده هیمنطوری نبوده.
در مورد پا پس کشیدن راستش قبل از اینکه شما بعد از تعطیلات رو بحثش رو بکشید ایشون گفتن که ادامه نمیدم.

MMSHFE
سه شنبه 05 فروردین 1393, 22:26 عصر
اولاً اگه میگین درخواست دادن و دلیل آوردن، لطفاً مستند صحبت کنید. سند این درخواستها رو مطرح کنید (لینک صفحه مربوطه در سایت لاراول - اگه هست) و ثانیاً حتی اگه اینطور باشه هم باز باعث نمیشه قابلیت بی فایده ای صرفاً بخاطر اینکه چند نفر از جامعه چند صد هزار نفری کاربران، درخواست داده باشن، قرار بگیره. این مسئله بخصوص در مواقعی که فریمورک، تیم توسعه بزرگی نداره (تأکید میکنم قصدم تخریب و اهانت به لاراول نیست) و یک یا دو نفره داره جلو میره، بیشتر خودش رو نشون میده. منظورم اینه که توی اینجور پروژه هاست که بیشتر قابلیتها بر اساس سلایق شخصی قرار میگیره (نه همه). درمورد پا پس کشیدن هم بگذارین خود جناب rezakho (اسمشون رو نمیدونم) جواب بدن چون بنده در 2 اسفند سال قبل گفتم که قراره بعداً امکانات Yii رو مطرح کنم (لینک (http://barnamenevis.org/showthread.php?441437-Yii-vs-Laravel&p=1979067&viewfull=1#post1979067)).

metal gear solid 4
چهارشنبه 06 فروردین 1393, 09:02 صبح
نتونستم معنی نداره. من به پشتیبانی بهتر از وب 2 اشاره کردم نه اینکه بقیه به کل نتونند.
به عنوان مثال تمام قسمت های فریم ورک به صورت آژاکس هست. صفحه بندی، دیتا گرید و ....
با همون ابزار خود YII یه CRUD رو درست کنید میبینید از فیلتر کردن و مرتب سازی، صفحه بندی و ... همگی آژاکس هستند و نیازی به تغییر صفحه ندارند.
از طرفی تمام Helper ها که استفاده میکنیم به صورت توکار از آژاکس پشتیبانی میکنند.

به عنوان نمونه



<div id="data">
<?php $this->renderPartial('_ajaxContent', array('myValue'=>$myValue)); ?>
</div>

<?php echo CHtml::ajaxButton ("Update data",
CController::createUrl('helloWorld/UpdateAjax'),
array('update' => '#data'));
?>




اگه معادلش رو توی لاراول دارید بگید.
شما وب 2 رو در همین حد خلاصه کردید. حتماً پیشنهاد میکنم وب 2 رو از تمامی لحاظ بررسی کنید.
اگر واقعاً با همین وضعیت به استانداردهای وب 2 میرسید. خسته نباشیدی بزرگ خدمتتون عرض میکنم!!

MMSHFE
چهارشنبه 06 فروردین 1393, 12:19 عصر
شما وب 2 رو در همین حد خلاصه کردید. حتماً پیشنهاد میکنم وب 2 رو از تمامی لحاظ بررسی کنید.
اگر واقعاً با همین وضعیت به استانداردهای وب 2 میرسید. خسته نباشیدی بزرگ خدمتتون عرض میکنم!!

...به عنوان نمونه...
جناب MGS4، شما واقعاً پستها رو بطور کامل میخونید؟ این بعنوان نمونه رو ندیدین؟! علی الحساب معادل همین رو توی لاراول مطرح کنید تا بعداً به بقیه امکانات وب 2 رسیدگی کنیم!

bestirani2
چهارشنبه 06 فروردین 1393, 13:19 عصر
شما وب 2 رو در همین حد خلاصه کردید. حتماً پیشنهاد میکنم وب 2 رو از تمامی لحاظ بررسی کنید.
اگر واقعاً با همین وضعیت به استانداردهای وب 2 میرسید. خسته نباشیدی بزرگ خدمتتون عرض میکنم!!
این فقط یه بخش کوچکش هست که احتمال زیاد توی لاراول نیست. قدرت خیلی زیادی توی وب 2 داره که آقای شهری طبق گفته خودشون بعد از عید کامل توضیح میده.
فکر میکنم معادلش رو هم نداشته باشید. چون سیمفونی نداره. ولی نمیدونم لاراول اورده یا نه. به نظرم این موارد خیلی نیاز هست. البته اینطور نیست قابل پیاده سازی نباشه. هر دو فریم ورک هر چیزی رو میتونند پیاده سازی کنند. به عنوان مثال خود من کلی امکانات وب 2 رو واسه سیمفونی نوشتم که حتی از YII هم بیشتره هست و کلی موارد دیگه که بتونم یه پروژه رو سریع ببندم. واسه YII هم کلی قسمت های مختلف نوشته بودم که سرعتم رو ببره بالا.
راستی من اومدم لاراول رو یه تستی روی لوکال بکنم. برام جالب بود که پروژه ای که میاور بالا کاملاً خالی بود و هیچ امکاناتی نداشت. معمولا فریم ورک ها بخش ها مورد نیاز مثل لاگین و ... رو به صورت پیش فرض قرار میدند.

tux-world
یک شنبه 10 فروردین 1393, 16:01 عصر
این فقط یه بخش کوچکش هست که احتمال زیاد توی لاراول نیست. قدرت خیلی زیادی توی وب 2 داره که آقای شهری طبق گفته خودشون بعد از عید کامل توضیح میده.
فکر میکنم معادلش رو هم نداشته باشید. چون سیمفونی نداره. ولی نمیدونم لاراول اورده یا نه. به نظرم این موارد خیلی نیاز هست. البته اینطور نیست قابل پیاده سازی نباشه. هر دو فریم ورک هر چیزی رو میتونند پیاده سازی کنند. به عنوان مثال خود من کلی امکانات وب 2 رو واسه سیمفونی نوشتم که حتی از YII هم بیشتره هست و کلی موارد دیگه که بتونم یه پروژه رو سریع ببندم. واسه YII هم کلی قسمت های مختلف نوشته بودم که سرعتم رو ببره بالا.
راستی من اومدم لاراول رو یه تستی روی لوکال بکنم. برام جالب بود که پروژه ای که میاور بالا کاملاً خالی بود و هیچ امکاناتی نداشت. معمولا فریم ورک ها بخش ها مورد نیاز مثل لاگین و ... رو به صورت پیش فرض قرار میدند.

اینکه سمفونی نداره دلیل بر این ادعایی که میکنید نیست. به هر حال. در مورد تستی که انجام دادید فکر میکنم CMS رو با فریم ورک اشتباه گرفتید. از شما بعیده. هر فریم ورکی سیاست خودش رو داره قرار نیست چون yii داره بقیه هم داشته باشن. خودم به شخصه از این موردش خیلی خوشم میاد. برای شما جذاب نیست خوب از yii استفاده میکنید. هر کسی سلیقه و عقیده ای داره که قابل احترامه

bestirani2
یک شنبه 10 فروردین 1393, 16:40 عصر
اینکه سمفونی نداره دلیل بر این ادعایی که میکنید نیست. به هر حال. در مورد تستی که انجام دادید فکر میکنم CMS رو با فریم ورک اشتباه گرفتید. از شما بعیده. هر فریم ورکی سیاست خودش رو داره قرار نیست چون yii داره بقیه هم داشته باشن. خودم به شخصه از این موردش خیلی خوشم میاد. برای شما جذاب نیست خوب از yii استفاده میکنید. هر کسی سلیقه و عقیده ای داره که قابل احترامه

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

اتفاقاً شما فریم ورک رو با پی اچ پی خام اشتباه گرفتید. تمامی فریم ورکهایی که من تا حالا کار کردن یه سری قسمت های پیش فرض قرار دادند از دات نت بگیر تا سیمفونی و YII. لاگین کردن نیاز هر سایتی هست. برای چی به صورت ابتدایی توی پروژه نباشه تا کاربر با توجه به نیاز خودش شخصی سازی کنه؟
دقیقاً منم بالاتر همین رو گفتم هر فریم ورک سیاست خودش رو داره. سیاست لاراول پیچیدگی کم و سادگی یادگیری هست. سیاست سیمفونی انعطاف پذیری و مهندسی بالا که بهترین گزینه برای پروژه های بزرگ هست. سیاست YII سرعت توسعه بالا، پرفرومنس بالا، وب 2
حالا این سیاست ها رو من به نظر خودم گفتم که البته خود فریم ورک ها هم اکثرا در ویژگی هاشون این مواردی که من گفتم رو بیان کردند.

بحث جذاب و غیر جذاب نیست. همینطور که دیدید من لیست ویژگی های خوب لاراول که توی این فروم بود رو ذکر کردم
http://barnamenevis.org/showthread.php?441437-Yii-vs-Laravel&p=1994731&viewfull=1#post1994731

به هر حال هم لاراول یک سری ویژگی خوب داره و هم YII و بسته به نیازتون میشه یکی رو انتخاب کنید.

tux-world
یک شنبه 10 فروردین 1393, 17:28 عصر
بحث سلیقه نیست. بحث امکانات هست.

اتفاقاً شما فریم ورک رو با پی اچ پی خام اشتباه گرفتید. تمامی فریم ورکهایی که من تا حالا کار کردن یه سری قسمت های پیش فرض قرار دادند از دات نت بگیر تا سیمفونی و YII. لاگین کردن نیاز هر سایتی هست. برای چی به صورت ابتدایی توی پروژه نباشه تا کاربر با توجه به نیاز خودش شخصی سازی کنه؟

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

bestirani2
یک شنبه 10 فروردین 1393, 17:37 عصر
خوب به نظرم یه خورده در مورد لاراول اشتباه میکنید. خود لاراول امکاناتش رو داره ولی نه به اون صورتی که در yii هستش. البته باز هم خود برنامه نویسه که انتخاب میکنه کودوم براش مناسبه. من سمفونی کار نکردم ولی علاقه دارم ازش سر دربیارم و بشه یاد بگیرم ولی واقعا از yii خوشم نمیاد. البته این هم نظر شخصیه خودمه. تو تاپیکی دیدم که آموزش دادید. خیلی عالیه و ممنونم
درسته امکانات خوبی داره ولی به فریم ورکی مثل YII نمیرسه. codeintiger هم یه فریم ورک هست که هدفش سادگی بوده که به نظرم لاراول موفق تر عمل کرده و با وجود سادگی، امکانات خوبی هم میده. البته به غیر از برنامه نویس، پروژه است که با توجه به نیازش باید فریم ورک انتخاب بشه. سیمفونی خیلی خوبه. اگه خواستی یاد بگیری میتونی سوالهات رو از من بپرسی. به نوعی توی هر فریم ورک قسمت هایی از سیمفونی دیده میشه. حتی YII هم توی نسخه جدیدش Composer و Twig رو اورده که بر میگرده به سیمفونی. YII هم واقعا لذت بخشه. کافیه باهش کمی کار کنید تا متوجه حرفم بشید. برای پروژه هایی که میخواید در کمترین زمان یک چیز عالی رو ارائه بدید خیلی خوبه.

یه سوال؟ توی لاراول اعتبار سنجی تحت کلاینت هم انجام میشه یا بر پایه Html 5 هست؟

MMSHFE
یک شنبه 10 فروردین 1393, 18:39 عصر
خوب به نظرم یه خورده در مورد لاراول اشتباه میکنید. خود لاراول امکاناتش رو داره ولی نه به اون صورتی که در yii هستش.
الآن از امکانات وب 2 میشه دقیقاً بگین که کدوم موارد توی لاراول هست؟ خواهشاً با کلمات بازی نکنید (داره ولی نه به اون صورتی که در Yii هستش). منظورم اینه که یک لحظه اصلاً Yii رو فراموش کنیم، یکطرف وب 2 رو داریم و یکطرف لاراول رو. بفرمایید کدوم امکانات وب 2 توی لاراول پیاده سازی شده؟ AJAX رو داره؟ بطور خودکار اگه JS غیرفعال باشه تشخیص میده و به همون حالت رایج بدون AJAX برمیگرده؟ Client Side Validation داره؟ از کدوم کتابخانه JS بطور داخلی پشتیبانی میکنه؟ با Flex سازگاری داره؟ امکان تولید خودکار RSS و Atom و Sitemap داره؟ امکان ساخت WebService با SOAP یا Rest بصورت داخلی داره؟ کلاً این لینک (http://en.wikipedia.org/wiki/Web_2.0) رو ببینید و بفرمایید کدومها توی لاراول هست.

فکر میکنم CMS رو با فریم ورک اشتباه گرفتید. از شما بعیده. هر فریم ورکی سیاست خودش رو داره قرار نیست چون yii داره بقیه هم داشته باشن
استفاده از امکانات وب 2 بحث سلیقه نیست. دنیا داره به این سمت حرکت میکنه. نمیشه بگیم سلیقه طراحان لاراول اینه که ازش استفاده نکنن چون کاربرانی که میخوان سایت حرفه ای بسازن مجبور میشن دستی این کارها رو انجام بدن و امکاناتش قابل چشم پوشی نیست. حالا خدا نکنه من این حرف رو میزدم و اونوقت بود که میگفتین هرجا امکاناتی نیست رو میگین لازم نبوده!

abytools
دوشنبه 11 فروردین 1393, 12:57 عصر
صحبت های MMSHFE (http://barnamenevis.org/member.php?55504-MMSHFE)



ضرورتی نداره چون با خود PHP و با یک خط میشه انجام داد:


1

file_exists








ضرورتی نداره چون با خود PHP و با یک خط میشه انجام داد:


1
$contents = file_get_contents($filename);





من طرف دار هیچ فریمورکی نیستم . ولی دوست داشتم چند نکته رو متذکر بشم .


این قضیه که یک فریمورک تمامی امکانات رو تو خودش داشته باشه خیلی خوبه ولی باید از جهت دیگه هم نگاه بشه و اون هم اینه که یه حالت مثل ماکروسافت به وجود میاد . مثلا orm که من می گم . موتور قالبی که من می گم . امکانات ajax که من میگم . Validation که من می گم . و این من رو تیم yii تشکیل میده که میگیم 20 نفره . و این در حالیه که ممکنه یک تیم 10 نفره فقط روی یک orm کار کرده باشه یه تیم 5 نفره اختصاصی روی validation های مختلف سمت کاربر و سمت سرور کار کرده باشه . و چرا نباید از این امکانات که حرفه ای تره استفاده نشه .
پس اگر خود فریمورک orm داشته باشه کمک کننده است ولی ویژگی فوق العاده ای نیست .
همه چیز رو همگان داند و نه یک تیم نهایت 30 نفره .
اگر بخواهیم اینجوری حساب کنیم سیمفونی خیلی ضعیفه چون orm داخلی نداره . وب 2 نداره . اونها دیدن که چندین orm حرفه ای وجود داره . چرا دوباره کاری کنن . چرا سازگاری هایی با داکترین که حرفه ای ترین orm هست نداشته باشن ؟ چرا وقتشون رو صرف ajax کنن وقتی مسایل مهم تری هم هست . برای پروژه های بزرگ این چیز ها پیش پا افتاده هستش .


این مسایلی که شما از امکانات ویژه وب 2 در yii می گید و بابتش این فریمورک رو برتر از همه فزیمورک ها می بینید . اینها امکاناتی است که از قبل وجود داشته پیاده سازی شده استفاده شده و چیز هایی نیستش که نشه با بقیه انجامش داد . فقط می تونه کمک کندده باشه از این باب که همه امکانات این چنینی یکجا جمع شده فقط همین . Ajax رو نمیشه با jq انجام داد ؟؟ به راحتی .


همون طور که کار با فایل رو با خود php میشه انجام داد و تو لاراول مزیت نیست . کار های وب 2 رو هم میشه به راحتی با بقیه ابزار ها پیاده سازی کرد و مزیت نیست . و ضرورتی نداره

bestirani2
دوشنبه 11 فروردین 1393, 15:00 عصر
همون طور که کار با فایل رو با خود php میشه انجام داد و تو لاراول مزیت نیست . کار های وب 2 رو هم میشه به راحتی با بقیه ابزار ها پیاده سازی کرد و مزیت نیست . و ضرورتی نداره
فایل رو با وب 2 یکی میکنید؟
با کمک وب 2 YII
1. برنامه نویسی سمت کلاینت به حداقل میرسه.
2. یه نگاهی به سورس صفحه بکنید میبینید که دو خط کد ما شده 30 40 خط کد تحت کلاینت.

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

abytools
دوشنبه 11 فروردین 1393, 18:14 عصر
دوست من . دید من بسته است شما بازش کن .
این صفحه سیمفونیه :
symfony (https://github.com/symfony)
بعد من که توش doctrine رو نمی بینم . twig رو مستقیما خودش ساخته که توش هست .
این هم صفحه doctrine است :
doctrine (https://github.com/doctrine)
بعضی از اعضای سیمفونی تو این پروژه مشارکت دارند . اصل موضوع doctrine 2 هستش . هم برای zend بسته براش در نظرگرفتن برای راحتی کار و هم برای سیمفونی bundle در نظر گرفتن . و صد البته برای لاراول هم پکیج وجود داره که مستقیما توسط داکترین ایجاد نشده .
اگر سازنده های سیمفونی ساخته بودنش جاش تو پکیج های سیمفونی بود دوست عزیز .
در مورد دیگران هم قضاوت نکن . فقط درمورد خودت حرف بزن

bestirani2
دوشنبه 11 فروردین 1393, 18:25 عصر
دوست من . دید من بسته است شما بازش کن .
این صفحه سیمفونیه :
symfony (https://github.com/symfony)
بعد من که توش doctrine رو نمی بینم . twig رو مستقیما خودش ساخته که توش هست .
این هم صفحه doctrine است :
doctrine (https://github.com/doctrine)
بعضی از اعضای سیمفونی تو این پروژه مشارکت دارند . اصل موضوع doctrine 2 هستش . هم برای zend بسته براش در نظرگرفتن برای راحتی کار و هم برای سیمفونی bundle در نظر گرفتن . و صد البته برای لاراول هم پکیج وجود داره که مستقیما توسط داکترین ایجاد نشده .
اگر سازنده های سیمفونی ساخته بودنش جاش تو پکیج های سیمفونی بود دوست عزیز .
در مورد دیگران هم قضاوت نکن . فقط درمورد خودت حرف بزن
من نگفتم بسته. منظور این بود به نظر میاد اشنایی کاملی با سیستم باندل بیس سیمفونی ندارید.
در مورد داکترین هم من نگفتم که توسط شرکت SensioLabs تولید شده. گفتم برنامه نویسان سیمفونی کد نویسی اون رو هم به عهده دارند.

salehforum
پنج شنبه 14 فروردین 1393, 11:01 صبح
بنده چند ماهی هست که دارم با Yii کار می کنم و سابقه ی کار با سیمفونی و جانگو رو هم داشتم اما فکر نمی کنم روزی بخوام از Yii جدا بشم.
کاری که ما در حال حاضر داریم با Yii انجام میدیم اتصال یک اپلیکیشن حرفه ای اندروید به Yii به عنوان وب سرویس هست.
امکانات Yii به عنوان یک وب سرویس فراتر از حدتصور و بسیار جذاب و در کمال امنیت انجام میشه.
اگر عمری باشه حتما از تجربه های جالبی که به دست اومده اینجا هم قرار خواهم داد.
انشالله که تاپیک بیشتر ادامه پیدا کنه

Amir_f
جمعه 15 فروردین 1393, 11:41 صبح
تعطیلات رو به پایان هست ، لطفا بحث رو ادامه بدید

MMSHFE
جمعه 15 فروردین 1393, 16:45 عصر
دارم مطالب رو دسته بندی میکنم که منظم جلو بریم. توی همین هفته بحث رو ادامه میدیم.

Mojtaba.Shateri
یک شنبه 17 فروردین 1393, 20:11 عصر
اینم دیدنش خالی از لطف نیست :
http://vschart.com/compare/laravel/vs/yii

SadeghPro19
دوشنبه 25 فروردین 1393, 01:17 صبح
پس چی شد ادامه بحث ؟!!؟! لطفا ادامه بدید بحث جالبی بود من که خیلی چیزا هم از لاراول و هم از یی فهمیدم و یاد گرفتم توی این تاپیک.

M.Rahi
دوشنبه 25 فروردین 1393, 23:02 عصر
یه جمع بندی کلی کردم، شاید انتخاب نهایی فریم ورک رو راحتتر کنه. :لبخندساده:



Laravel

مزایا

خوانایی کدها (ایجاد فرم، مدل ها و ...)
ساختار ساده تر view ها
استفاده از config پیشفرض ساده
بازخوانی سریعتر کدها


معایب

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







Yii

مزایا

سیستم کش حرفه ای تر
قابلیت استفاده از تم و اسکین
داشتن تعداد زیاد افزونه
انجمن فعال تر
قابلیت استفاده از کتابخانه jquery
مستندات کامل تر
اشتراک گذاری هسته فریم ورک برای چند پروژه
کپچا (توکار)
ایجاد وب سرویس راحت و سریع (توکار)
منابع بیشتر


معایب

خوانایی کد کمتر نسبت به laravel





مدتی پیش برای ایجاد یه پروژه تصمیم گرفتم که از yii استفاده کنم. به اتفاق بعد از گفتگو با یکی از دوستان، بهم laravel رو معرفی کرد و بعد از بررسی اون، دیدم سروساده تر از yii عمل کرده.
تصمیم داشتم که با laravel پروژه رو استارت بزنم اما بعد از بررسی های نهایی و با توجه به امکانات مورد نیاز پروژه، تصمیمم عوض شد و ترجیح میدم که با yii کار کنم.
امکانات توکار، افزونه ها و منابع گسترده، باعث افزایش سرعت عمل میشه.
yii 2 که منتشر بشه قطعا خیلی از کاستی های yii 1 مرتفع میشه. پس بهتره که خودمون رو از الان مسلط کنیم روی yii 1.
ان شاء الله که این جمع بندی ها برای بقیه مفید واقع بشه.

metal gear solid 4
سه شنبه 26 فروردین 1393, 12:30 عصر
یه جمع بندی کلی کردم، شاید انتخاب نهایی فریم ورک رو راحتتر کنه. :لبخندساده:



Laravel

مزایا

خوانایی کدها (ایجاد فرم، مدل ها و ...)
ساختار ساده تر view ها
استفاده از config پیشفرض ساده
بازخوانی سریعتر کدها


معایب

ناتوانی در اشتراک هسته فریم ورک برای چند پروژه ---- این مورد رو حتماً کامل توضیح بدید.
نداشتن امکانات توکار پرکاربرد اعم از امکانات وب 2 ، تم، کتابخانه js و ...









Yii

مزایا

سیستم کش حرفه ای تر -- این مورد رو هم دوستان Yii کار توضیح بدن. بقیه هم بدونند امکانات Yii رو. البته با نسخه ی 5.5 PHP باید سیستم کش Yii رو اگر از APC استفاده میکنه مُرده دونست.
قابلیت استفاده از تم و اسکین

داشتن تعداد زیاد افزونه
انجمن فعال تر
قابلیت استفاده از کتابخانه jquery
مستندات کامل تر
اشتراک گذاری هسته فریم ورک برای چند پروژه
کپچا (توکار)
ایجاد وب سرویس راحت و سریع (توکار)
منابع بیشتر


معایب

خوانایی کد کمتر نسبت به laravel







مدتی پیش برای ایجاد یه پروژه تصمیم گرفتم که از yii استفاده کنم. به اتفاق بعد از گفتگو با یکی از دوستان، بهم laravel رو معرفی کرد و بعد از بررسی اون، دیدم سروساده تر از yii عمل کرده.
تصمیم داشتم که با laravel پروژه رو استارت بزنم اما بعد از بررسی های نهایی و با توجه به امکانات مورد نیاز پروژه، تصمیمم عوض شد و ترجیح میدم که با yii کار کنم.
امکانات توکار، افزونه ها و منابع گسترده، باعث افزایش سرعت عمل میشه.
yii 2 که منتشر بشه قطعا خیلی از کاستی های yii 1 مرتفع میشه. پس بهتره که خودمون رو از الان مسلط کنیم روی yii 1.
ان شاء الله که این جمع بندی ها برای بقیه مفید واقع بشه.
مشخصه این مقایسه منطقی انجام نشده. یا اطلاعاتتون کمه یا خدایی نکرده مغرضانست.

در رابطه با cache امروزه انواع و اقسام سیستم های کش کردن هست. memcached, redis, apc, opcache, mongo و خیلی های دیگه که به جز opcache و mongo تمامشون به صورت built-in در لاراول پیشتیبانی میشن به علاوه ی کش دیتابیس و فایل. بیشتر توضیح بدید.
به تصور شما قابلیت استفاده از تم و اسکین در لاراول وجود نداره؟ برید مطالعه بفرمایید.
لاراول در حال حاظر به خاطر استفاده از Package ها، 8000 افزونه داره. در حالی که Yii فکر میکنم 2500 افزونه داره.
انجمن فعالتر رو یک مزیت برای فریمورک میدونید شما!!
یا من خیلی کارم درسته یا شما نمیتونید توی لاراول از کتابخانه JQuery استفاده کنید!!!
مستندات لاراول به اندازه Yii کامل نیست اما به قدری هست که یک فرد مبتدی و متوسط بتونه هازش به نحو احسنت استفاده کنه.
کدهای کپچا رو اساساً بهتره به عهده ی سرویس های خارجی قرار بدیم. هم بار پردازشی از دوش سرور شما کم میشه هم امنیت بیشتری داره. بهترین گزینه کپچا گوگل هست.
منابع بیشتر رو نفهمیدم بنده. به هر حال از نظر شما مزیته!!!

amirkheirabadi.com
چهارشنبه 27 فروردین 1393, 18:12 عصر
همونطور که دوستمون گفتن این مقایسه ایراد داره ... البته بنده قصد جسارت ندارم ....
اول از همه سر مستندات ... من موقعی که می خواستم برم سراغ Yii خودم رو کشتم باور کنید حداقل تا چند ماه پیش با وجود چندین کتاب و سایت و... ولی بازم برای من مستندات yii عجیب و یک جورایی بی ساختار به نظر می رسید ... ولی از اون طرف laravel واقعا مستندات کوتاه و مفیدی در اختیار قرار داده که هر کی جزئیات بیشتر خواست بره دنبالش ... هر چند خود Tutsplus پشته کاره و کار این تیم مخصوصا آقای jeffery way در آموزش بر کسی پوشیده نیست ...


نقطه بعدی که من خواستم بگم افزونه هاست .. آقا من نمی گم yii زیاد افزونه نداره می گم کی گفته laravel کم افزونه داره ... البته به نظرم این نمی تونه گزینه خوبی برای مقایسه باشه .. چون خیلی چیزهای دیگه مثل سال تولید فریم ورک هم باید در نظر گرفته بشه .. به همراه خیلی چیزهای دیگه ....

و آخرین گزینه که الان به ذهنم رسید ...
امکانات توکار ... به نظرم من این یک امر سلیقه ای هستش ... یک مثال بزنم ... خیلی ها به من گیر می دن چرا از sublime استفاده می کنی با وجود این همه برنامه قوی تر مثل phpstorm , pycharm , ........... ولی می دونی من نظرم چیه .. من می گم یک سیستم باشه که در نگاه اول ساده و خیلی ساده ولی با پتانسیل قوی که بتونی امکانات رو بهش اضافه کنی و خودت غولش کنی مثل sublime و وردپرس ...

به هر اینم نظر ما ... باز م بزرگتر ها باید نظر بدن ...

M.Rahi
چهارشنبه 27 فروردین 1393, 22:59 عصر
در رابطه با cache امروزه انواع و اقسام سیستم های کش کردن هست. memcached, redis, apc, opcache, mongo و خیلی های دیگه که به جز opcache و mongo تمامشون به صورت built-in در لاراول پیشتیبانی میشن به علاوه ی کش دیتابیس و فایل

در laravel خواستم از cache dependency استفاده کنم که دیدم نه در مستندات چیزی در موردش هست و نه توی گوگل! درخواستم رو توی انجمن laravel مطرح کردم که هیچکس پاسخگو نبود!
الان هم توی گوگل سرچ کنید، اولین لینکی که میاره لینک تاپیک خودمه (که هنوز هم کسی جواب نداده) : http://laravel.io/forum/03-01-2014-cache-dependency


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

تا اونجایی که من در مستندات laravel خوندم همچین امکانی نداره! و سرچ کردم دیدم باید از یه باندل استفاده کنی که کلا نحوه صدا زدن ویوها عوض میشه و یه جورایی قابلیت استفاده مجدد کدها پایین میاد.


لاراول در حال حاظر به خاطر استفاده از Package ها، 8000 افزونه داره. در حالی که Yii فکر میکنم 2500 افزونه داره.

مسلما چون laravel باندل بیس هست، سرعت رشد افزونه هاش زیاده اما افزونه های کاربردیش کمتر از yii هست (توی سرچ زدن مشخصه).


انجمن فعالتر رو یک مزیت برای فریمورک میدونید شما!!

وقتی انجمن فعالتر باشه، سوالات سریعتر به جواب میرسه و کاربر مجبور نیست کلی از وقتش رو صرف انتظار برای جواب هدر بده! (نمونش همین سوال خودم که لینکش رو بالا گذاشتم)


یا من خیلی کارم درسته یا شما نمیتونید توی لاراول از کتابخانه JQuery استفاده کنید!!!

شما که کارتون درسته :) اما laravel به صورت "توکار" از jquery پشتیبانی نمیکنه و باید دستی به سیستم اضافه بشه اما در yii اینطور نیست و این سرعت عمل رو بالا میبره.


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

مستندات yii طوریه که اگر فرد خواست از بیس کار کنه و MVC هم بلد نباشه، میتونه با مستندات yii قدم به قدم ساختار فریم ورک رو یاد بگیره. همچنین تنظیم تاپیک ها خودش یه مزیته چراکه در laravel عناوین رو در بخش Learning More طبق حروف الفبا مرتب کرده نه بر اساس الویت یادگیری!


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

چیزی مثل کپچا که توی اکثر پروژه ها استفاده میشه چرا بخوایم وقتمون رو صرف اضافه کردن آن و تنظیمات دستی کنیم؟! بهتره که توکار باشه.


منابع بیشتر رو نفهمیدم بنده. به هر حال از نظر شما مزیته!!!

منابع بیشتر یعنی وقتی توی موتور جستجویی مثل گوگل در مورد yii سرچ میکنی با وب سایت های زیادی رو به رو میشی که آموزش های زیادی گذاشتن اما در مورد laravel این قضیه صدق نمیکنه!


لطفا واقع بین باشید. شاید به این دلیل که مدتیه با laravel کار کردین، دل کندن ازش براتون کمی سخت باشه، چون laravel از ابتدا مثل یه نوزاد میمونه که با باندل ها اون رو بزرگش میکنیم و شما ممکنه وقت زیادی صرف بزرگ کردنش کرده باشید و الان اون رو به yii خام رسونده باشید ولی برای اون کسی که میخواد تازه شروع کنه، باید وقت زیادی صرف پیدا کردن باندل ها و نوشتن کدهای js کنه که با انتخاب yii دیگه نیازی به این کارها نیست و مستقیما وقتش رو صرف آنالیز پروژه میکنه.

metal gear solid 4
پنج شنبه 28 فروردین 1393, 09:57 صبح
در laravel خواستم از cache dependency استفاده کنم که دیدم نه در مستندات چیزی در موردش هست و نه توی گوگل! درخواستم رو توی انجمن laravel مطرح کردم که هیچکس پاسخگو نبود!
الان هم توی گوگل سرچ کنید، اولین لینکی که میاره لینک تاپیک خودمه (که هنوز هم کسی جواب نداده) : http://laravel.io/forum/03-01-2014-cache-dependency



تا اونجایی که من در مستندات laravel خوندم همچین امکانی نداره! و سرچ کردم دیدم باید از یه باندل استفاده کنی که کلا نحوه صدا زدن ویوها عوض میشه و یه جورایی قابلیت استفاده مجدد کدها پایین میاد.



مسلما چون laravel باندل بیس هست، سرعت رشد افزونه هاش زیاده اما افزونه های کاربردیش کمتر از yii هست (توی سرچ زدن مشخصه).



وقتی انجمن فعالتر باشه، سوالات سریعتر به جواب میرسه و کاربر مجبور نیست کلی از وقتش رو صرف انتظار برای جواب هدر بده! (نمونش همین سوال خودم که لینکش رو بالا گذاشتم)



شما که کارتون درسته :) اما laravel به صورت "توکار" از jquery پشتیبانی نمیکنه و باید دستی به سیستم اضافه بشه اما در yii اینطور نیست و این سرعت عمل رو بالا میبره.



مستندات yii طوریه که اگر فرد خواست از بیس کار کنه و MVC هم بلد نباشه، میتونه با مستندات yii قدم به قدم ساختار فریم ورک رو یاد بگیره. همچنین تنظیم تاپیک ها خودش یه مزیته چراکه در laravel عناوین رو در بخش Learning More طبق حروف الفبا مرتب کرده نه بر اساس الویت یادگیری!



چیزی مثل کپچا که توی اکثر پروژه ها استفاده میشه چرا بخوایم وقتمون رو صرف اضافه کردن آن و تنظیمات دستی کنیم؟! بهتره که توکار باشه.



منابع بیشتر یعنی وقتی توی موتور جستجویی مثل گوگل در مورد yii سرچ میکنی با وب سایت های زیادی رو به رو میشی که آموزش های زیادی گذاشتن اما در مورد laravel این قضیه صدق نمیکنه!


لطفا واقع بین باشید. شاید به این دلیل که مدتیه با laravel کار کردین، دل کندن ازش براتون کمی سخت باشه، چون laravel از ابتدا مثل یه نوزاد میمونه که با باندل ها اون رو بزرگش میکنیم و شما ممکنه وقت زیادی صرف بزرگ کردنش کرده باشید و الان اون رو به yii خام رسونده باشید ولی برای اون کسی که میخواد تازه شروع کنه، باید وقت زیادی صرف پیدا کردن باندل ها و نوشتن کدهای js کنه که با انتخاب yii دیگه نیازی به این کارها نیست و مستقیما وقتش رو صرف آنالیز پروژه میکنه.
من دونه به دونه پاراگراف های شمارو پاسخ میدم. خودتون مطابقت بدید.



سیستم کش کردن در لاراول به خوبی پشتیبانی میشه. Cache Dependency هم در سطح کد شما انجام میشه. فکر نمیکنم سیستم های کش این رو در اختیار شما قرار بدن. حداقل من ندیدم یا نیازم نبوده دنبالش باشم. قدر مسلم تمامی سیستم هایی که در Yii پشتیبانی میشند در لاراول نیز پیشتیبانی میشند. این ارتباطی به فریمورک نداره. اگر یک سیستم کش قابلیتی رو ارائه بده هر فریمورکی که ازش استفاده کنه اون قابلیت رو داره. شما اکستنشن موجود رو نصب میکنید پس فرقی نداره قاعدتاً
Laravel دیگه باندل بیس نیست. الان یکسال بیشتره از یکساله که از Package استفاده میکنه و تا دلتون بخاد پکیج براش موجوده که همه نوع نیازشما رو از لحاظ پکیج یا به قول شما افزونه برطرف میکنه.
خیر. برای استفاده از تم و اسکین هیچ نیازی به هیچ پکیجی ندارید. باید بیشتر مطالعه و جستجو میکردید.
پکیج هایی که در لاراول استفاده میشه مختص لاراول نیست. پکیج های استانداردی هستند که لاراول از اونها استفاده میکنه. اگر از بین چندین هزار پکیج، نتونستید تعدادی کاربردی برای خودتون پیدا کنید پس Yii براتون بهتره.
آخرین گام برای گرفتن یک جواب سوال کردن توی فروم هاست!. الان با وجود IRC های موجود، StackExchange و داکیومنت های خود لاراول. کمتر پیش میاد کسی به فروم ها رجوع کنه. من این حرف شمارو قبول ندارم. البته ممکنه روش جوابگیری شما با من فرق کنه.
راجع به استفاده ی توکار Jquery که به نظر من اصلاً ربطی به یک فریمورک PHP نداره. اگر باشه بهتره اما اگر نیست نمیشه یک ضعف دونست. مثلاً من کتابخونه ی JQuery رو توی برنامم صدا بزنم و شما از طریق Yii اینکارو بکنید خیلی تفاوت ایجاد میشه؟ لطفاً آبروی یک فریمورک رو با این موارد خدشه دار نکنید. هم Yii هم Laravel
دقیقاً به همین دلیل که کپچا توی اکثر پروژه ها استفاده میشه گفتم که از سرویس های خارجی استفاده کنیم. شما برنامه هاتون بزرگتر بشن از صف ها هم باید استفاده کنید. اینها تمامیشون پردازش لازم دارند.


من هیچ گونه تعلق خاطری به Laravel ندارم. اخیراً هم دارم Phalconphp استفاده میکنم که از لحاظ سینتکس از لاراول پیچیده تره. اما پرفورمنس خیلی بالایی داره. بخصوص شماره 2 که در آینده عرضه میشه و از Zephir بهره میبره. به نظرمن این دو فریمورک Yii, Laravel تمامی ابزارهای سنتی یک فریمورک رو دارند. لاراول سینتکس ساده تری داره. فهمیدن کدهاش ساده تره. لطفاً اگر شماتصمیم گرفتید از Yii استفاده کنید آخر ارسالتون نگید بهتره بریم سمت Yii!!! بهتره خودتون برید سمت Yii و این اجازه روبدید هر کس برای خودش تصمیم بگیره.

bestirani2
پنج شنبه 28 فروردین 1393, 11:15 صبح
سیستم کش کردن در لاراول به خوبی پشتیبانی میشه. Cache Dependency هم در سطح کد شما انجام میشه. فکر نمیکنم سیستم های کش این رو در اختیار شما قرار بدن. حداقل من ندیدم یا نیازم نبوده دنبالش باشم. قدر مسلم تمامی سیستم هایی که در Yii پشتیبانی میشند در لاراول نیز پیشتیبانی میشند. این ارتباطی به فریمورک نداره. اگر یک سیستم کش قابلیتی رو ارائه بده هر فریمورکی که ازش استفاده کنه اون قابلیت رو داره. شما اکستنشن موجود رو نصب میکنید پس فرقی نداره قاعدتاً


ربطی به قابلیت سیستم کش نداره. سیستم کش فقط کش میکنه و بقیه چیزها بر میگرده سطح برنامه که YII ویژگی های خوبی ارائه کرده. مثلا میتونید بگید این قسمت از صفحه کش نشه و بقیه کش بشند یا هر جور که دلتون بخواد. میتونید وابستگی تعیین کنید نسبت به هر چیزی مثل بگید اگه تغییری در فایل های فلان پوشه ایجاد شد کش از نوع ساخته بشه . حال اینکه تو لااراول باید دستی کد بشه این قسمت.





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


اگه یادتون باشه قبلاً راجب این موضوع بحث شده





راجع به استفاده ی توکار Jquery که به نظر من اصلاً ربطی به یک فریمورک PHP نداره. اگر باشه بهتره اما اگر نیست نمیشه یک ضعف دونست. مثلاً من کتابخونه ی JQuery رو توی برنامم صدا بزنم و شما از طریق Yii اینکارو بکنید خیلی تفاوت ایجاد میشه؟ لطفاً آبروی یک فریمورک رو با این موارد خدشه دار نکنید. هم Yii هم Laravel


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





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


امکانات تو کار YII فقط مربوط به کپچا نمیشه.




من هیچ گونه تعلق خاطری به Laravel ندارم. اخیراً هم دارم Phalconphp استفاده میکنم که از لحاظ سینتکس از لاراول پیچیده تره. اما پرفورمنس خیلی بالایی داره. بخصوص شماره 2 که در آینده عرضه میشه و از Zephir بهره میبره. به نظرمن این دو فریمورک Yii, Laravel تمامی ابزارهای سنتی یک فریمورک رو دارند. لاراول سینتکس ساده تری داره. فهمیدن کدهاش ساده تره. لطفاً اگر شماتصمیم گرفتید از Yii استفاده کنید آخر ارسالتون نگید بهتره بریم سمت Yii!!! بهتره خودتون برید سمت Yii و این اجازه روبدید هر کس برای خودش تصمیم بگیره.

اگه فقط به خاطر پرفورمنس دارید از
Phalconphp استفاده میکنید. توجه داشته باشید شما نیاز به سرور اختصاصی دارید تا بتونید Extension اش رو نصب کنید. حال اینکه اگه سرور اختصاصی دارید با کش پی اچ پی 5.5 + APC هم میتونید به این پرفورمنس برسید. لاراول هم به نظر من ساده تره ولی سرعت توسعه YII به دلیل امکانات تو کارش بیشتره.

metal gear solid 4
پنج شنبه 28 فروردین 1393, 12:45 عصر
ربطی به قابلیت سیستم کش نداره. سیستم کش فقط کش میکنه و بقیه چیزها بر میگرده سطح برنامه که YII ویژگی های خوبی ارائه کرده. مثلا میتونید بگید این قسمت از صفحه کش نشه و بقیه کش بشند یا هر جور که دلتون بخواد. میتونید وابستگی تعیین کنید نسبت به هر چیزی مثل بگید اگه تغییری در فایل های فلان پوشه ایجاد شد کش از نوع ساخته بشه . حال اینکه تو لااراول باید دستی کد بشه این قسمت.


اگه یادتون باشه قبلاً راجب این موضوع بحث شده


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


امکانات تو کار YII فقط مربوط به کپچا نمیشه.


اگه فقط به خاطر پرفورمنس دارید از
Phalconphp استفاده میکنید. توجه داشته باشید شما نیاز به سرور اختصاصی دارید تا بتونید Extension اش رو نصب کنید. حال اینکه اگه سرور اختصاصی دارید با کش پی اچ پی 5.5 + APC هم میتونید به این پرفورمنس برسید. لاراول هم به نظر من ساده تره ولی سرعت توسعه YII به دلیل امکانات تو کارش بیشتره.



من خودم در آخرین پروژه ای که کار میکنم از APC دقیقاً به روشی که گفتید بهره میبرم که بخش هایی از صفحه یا اطلاعات رو کش میکنم. و چندان کار پیچیده ای نیست و مطمئنم با Yii هم همین میزان کد نویسی لازمه. البته من دیدی نسبت به امکانات Yii در این زمینه ندارم اما در سطح لاراول پیچیدگی نمیبینم.
JQuery خودش به اندازه کافی کوتاه شده هست. باز هم نمیفهمم منظورتون از این که ده ها خط را براتون مینویسه چیه. اما اگر مثال بزنید بهتره.
استفاده از Phalconphp فقط به خاطر پرفورمنسش هست و بس. بله میدونم باید سرور اختصاصی باشه. برنامه ای که قراره روی یک سرور اشتراکی اجرا بشه نیازی به چنین سطح بالایی از پرفورمنس نداره. PHP 5.5 از APC پشتیبانی نمیکنه. با استفاده از APC هم شما به پرفورمنس Phalconphp که یک اکستنشن برپایه C هست نمیرسید.

bestirani2
پنج شنبه 28 فروردین 1393, 13:01 عصر
من خودم در آخرین پروژه ای که کار میکنم از APC دقیقاً به روشی که گفتید بهره میبرم که بخش هایی از صفحه یا اطلاعات رو کش میکنم. و چندان کار پیچیده ای نیست و مطمئنم با Yii هم همین میزان کد نویسی لازمه. البته من دیدی نسبت به امکانات Yii در این زمینه ندارم اما در سطح لاراول پیچیدگی نمیبینم.

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

$dependency = new CDbCacheDependency('SELECT MAX(update_time) FROM tbl_post');
$posts = Post::model()->cache(1000, $dependency)->with('author')->findAll();





همچنین میشه یه قسمت از صفحه رو کش کرد نه کل صفحه رو



<?php if($this->beginCache($id, array('dependency'=>array(
'class'=>'system.caching.dependencies.CDbCacheDependency',
'sql'=>'SELECT MAX(lastModified) FROM Post')))) { ?>
...content to be cached...
<?php $this->endCache(); } ?>


یا حتی میشه درون یک صفحه یا قسمتی که قرار هست کش بشه بگیم این قسمت داینامیک هست و نباید کش بشه



<?php $this->renderDynamic($callback); ?>




JQuery خودش به اندازه کافی کوتاه شده هست. باز هم نمیفهمم منظورتون از این که ده ها خط را براتون مینویسه چیه. اما اگر مثال بزنید بهتره.



مثلاْ فرض کنید قرار هست یه dropdownlist داشته باشید که به یک dropdownlist دیگه وابسته هست. شما نیازی ندارید هیچ کد Jquery ای بزنید مثال



echo CHtml::dropDownList('country_id','', array(1=>'USA',2=>'France',3=>'Japan'),
array(
'ajax' => array(
'type'=>'POST', //request type
'url'=>CController::createUrl('currentController/dynamiccities'), //url to call.
'update'=>'#city_id', //selector to update




echo CHtml::dropDownList('city_id','', array());




استفاده از Phalconphp فقط به خاطر پرفورمنسش هست و بس. بله میدونم باید سرور اختصاصی باشه. برنامه ای که قراره روی یک سرور اشتراکی اجرا بشه نیازی به چنین سطح بالایی از پرفورمنس نداره. PHP 5.5 از APC پشتیبانی نمیکنه. با استفاده از APC هم شما به پرفورمنس Phalconphp که یک اکستنشن برپایه C هست نمیرسید.



روی پی اچ پی ۵.۵ این رو نصب کنید
http://pecl.php.net/package/APCu
منم به دلیل پرفورمنس واسه یه برنامه میخواستم بیام سمت فالکون که با کمک کش پی اچ پی ۵.۵ و apc به پرفورمنس نزدیکی رسیدم. توجه کنید ترکیب این دو تا نه فقط apc

metal gear solid 4
پنج شنبه 28 فروردین 1393, 16:06 عصر
برای قسمت اول این بخش از لاراول (http://laravel.com/docs/cache)رو مطالعه بفرمایید. دقیقاً مثالی که زدید رو با استفاده از لاراول میشه داشت. منظورم پیاده سازی نیست. امکاناتش هست.

در رابطه با JQuery که نوشتید. خوبه. اما سینتکسش چندان هم راحت نیست. اما این رو نمیشه مزیت یک فریمورک PHP دونست. فریمورک PHP باید کار با PHP رو آسان کنه. در تمام پروژه که هزاران خط میشه. لاراول سینتکس ساده و سریعی رو در اختیار میگذاره که به قول شما سرعت برنامه نویس رو بالا میبره. اما اینکه JQuery رو من چطور استفاده میکنم یا شما ارتباطی به فریمورک PHP نداره!!

PHP 5.5 سیستم OPCache رو معرفی کرده که انگار اطلاعات رو کامپایل و کش میکنه که سرعت قابل ملاحضه ای داره نسبت به APC. خب اگر قرار باشه کسی از ابتدا یک فریمورک رو انتخاب و یاد بگیره. چه بهتره که از آپدیت ترین امکانات استفاده کنه. به همین خاطر میگم باید APC رو فراموش کرد.

bestirani2
پنج شنبه 28 فروردین 1393, 16:19 عصر
برای قسمت اول این بخش از لاراول (http://laravel.com/docs/cache)رو مطالعه بفرمایید. دقیقاً مثالی که زدید رو با استفاده از لاراول میشه داشت. منظورم پیاده سازی نیست. امکاناتش هست.

در رابطه با JQuery که نوشتید. خوبه. اما سینتکسش چندان هم راحت نیست. اما این رو نمیشه مزیت یک فریمورک PHP دونست. فریمورک PHP باید کار با PHP رو آسان کنه. در تمام پروژه که هزاران خط میشه. لاراول سینتکس ساده و سریعی رو در اختیار میگذاره که به قول شما سرعت برنامه نویس رو بالا میبره. اما اینکه JQuery رو من چطور استفاده میکنم یا شما ارتباطی به فریمورک PHP نداره!!

PHP 5.5 سیستم OPCache رو معرفی کرده که انگار اطلاعات رو کامپایل و کش میکنه که سرعت قابل ملاحضه ای داره نسبت به APC. خب اگر قرار باشه کسی از ابتدا یک فریمورک رو انتخاب و یاد بگیره. چه بهتره که از آپدیت ترین امکانات استفاده کنه. به همین خاطر میگم باید APC رو فراموش کرد.

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

از نظر من مزیت بزرگی هست. باید دید نظر بقیه دوستان چیه.

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

MaSoUti
سه شنبه 20 خرداد 1393, 10:43 صبح
بعد از 303 پست... آخر هم نتیجه گیری درستی نشد. که ما متوجه شیم با توجه به آخرین نسخه ها و آخرین و بهترین تکنولوژی های این دو فریمورک کدوم کامل تر و بهتر هست. اکثر مقایسات روی ورژنهای پایینتر و با در نظر گرفتن نداشتن بعضی از امکانات بود... برای من که میخوام تازه شروع کنم مهم آخرین تکنولوژی هاست و ببینم با توجه به اونها کدوم فریمورک کامل تر هست. من جای دیگه هم که این سوال رو پرسیدم باز هم هر دو فریمورک رو پیشنهاد دادن و نگفتن کدوم بهتره. من از این موضوع میترسم که شروع کنم و بعد از رسیدن به قسمتی از پروژه که ببینم نیازهای خاص از یک فریمورک میشه اونجا فریمورک کم بیاره و من مجبور بشم که عوض کنم فریمورک مورد استفاده ام رو...

MMSHFE
سه شنبه 20 خرداد 1393, 11:26 صبح
PHP 5.5 سیستم OPCache رو معرفی کرده که انگار اطلاعات رو کامپایل و کش میکنه که سرعت قابل ملاحضه ای داره نسبت به APC. خب اگر قرار باشه کسی از ابتدا یک فریمورک رو انتخاب و یاد بگیره. چه بهتره که از آپدیت ترین امکانات استفاده کنه. به همین خاطر میگم باید APC رو فراموش کرد.

نسخه 5.5 زبان PHP حالا حالاها روی 90٪ سرورهای اشتراکی نصب نمیشه و به تازگی به نسه 5.3 ارتقا پیدا کردن. قطعاً تا وقتی رواج پیدا کنه نسخه Yii2 با قابلیت پشتیبانی از OPCache عرضه خواهد شد ولی لاراول که همین حالا پشتیبانی از APC رو هم بصورت توکار نداره، بعیده OPCache رو هم اضافه کنه.

MMSHFE
سه شنبه 20 خرداد 1393, 11:27 صبح
بعد از 303 پست... آخر هم نتیجه گیری درستی نشد. که ما متوجه شیم با توجه به آخرین نسخه ها و آخرین و بهترین تکنولوژی های این دو فریمورک کدوم کامل تر و بهتر هست. اکثر مقایسات روی ورژنهای پایینتر و با در نظر گرفتن نداشتن بعضی از امکانات بود... برای من که میخوام تازه شروع کنم مهم آخرین تکنولوژی هاست و ببینم با توجه به اونها کدوم فریمورک کامل تر هست. من جای دیگه هم که این سوال رو پرسیدم باز هم هر دو فریمورک رو پیشنهاد دادن و نگفتن کدوم بهتره. من از این موضوع میترسم که شروع کنم و بعد از رسیدن به قسمتی از پروژه که ببینم نیازهای خاص از یک فریمورک میشه اونجا فریمورک کم بیاره و من مجبور بشم که عوض کنم فریمورک مورد استفاده ام رو...

تا اینجا تاپیک بصورت مقایسه یکطرفه بود. درحال گردآوری و دسته بندی امکانات خاص Yii هستم که بیشتر از بقیه Bold هستن تا کم کم اینجا بگذارم و ببینیم لاراول چطور اونها رو پیاده سازی کرده (یا اصلاً معادلی براشون داره یا نه).

metal gear solid 4
سه شنبه 20 خرداد 1393, 15:56 عصر
نسخه 5.5 زبان PHP حالا حالاها روی 90٪ سرورهای اشتراکی نصب نمیشه و به تازگی به نسه 5.3 ارتقا پیدا کردن. قطعاً تا وقتی رواج پیدا کنه نسخه Yii2 با قابلیت پشتیبانی از OPCache عرضه خواهد شد ولی لاراول که همین حالا پشتیبانی از APC رو هم بصورت توکار نداره، بعیده OPCache رو هم اضافه کنه.
کسی صحبت از این کرد که قراره OPCache رو روی سرور اشتراکی اجرا کنیم؟
کسی هم نگفته OPCache قراره به زودی روی لاراول بیاد و Yii بی نصیب میمونه!!

صحبت سر سرور مجازی و اختصاصی بود مهندس.

MMSHFE
سه شنبه 20 خرداد 1393, 16:01 عصر
:لبخندساده:

Elias.F
پنج شنبه 22 خرداد 1393, 15:40 عصر
این چه تعطیلاتی و چه دسته بندی بود که تموم نشد:ناراحت::متفکر:
جناب شهرکی، من خودم با هیچ کدوم کار نکردم:اشتباه:. ولی به عنوان یک خواننده ، نظرم رو راجع به این همه پست میگم. تمامی امکاناتی از لاراول که دوستان گفتن رو شما یا گفته بودین که مهم نیست ، یا هم گفته بودین در yii هم میشه پیاده سازی کرد. حالا اینکه چطور میشه رو باید گشت و پیدا کرد..................
البته با توجه به سابقه شما که به صورت حرفه ای کار میکنید، تمامی مطالبتون صحت داره. ولی از دید کاربرانی مثل من که اصلا تا حالا با فریمورک کار نکردن هم به موضوع نگاه کنین.
کاش زیر مطلب که با yii هم میشه پیاده سازی کرد، طرز پیاده سازی رو هم میگفتین.
خواهشمندم زودتر امکانات yii رو بیان کنین که این تاپیک شاید به سرانجامی برسه.
ضمنا شما برای شروع یادگیری yii 2 رو پیشنهاد میکنی، یا yii 1?
ممنون از زحمات شما.

Elias.F
پنج شنبه 22 خرداد 1393, 15:43 عصر
البته یک انتقادی هم از yii نسبت به لاراول میشه کرد و اون هم کمبود منابع آموزشیشه.
شما یه سرچ برای لاراول میزنی ، کلی مطلب و ویدئو آموزشی پیدا میکنی.
اما در مقایسه با اون برای yii خیلی خیلی کمتره.

MMSHFE
جمعه 23 خرداد 1393, 11:44 صبح
کاش زیر مطلب که با yii هم میشه پیاده سازی کرد، طرز پیاده سازی رو هم میگفتین.
مواردی که در ابتدا فقط گفتم میشه رو بعداً یکی یکی مطرح کردن و معادل Yii اونها رو توضیح دادم.

خواهشمندم زودتر امکانات yii رو بیان کنین که این تاپیک شاید به سرانجامی برسه.
هدفم این نیست که فقط امکانات Yii رو فهرست کنم. دنبال مواردی هستم که توی لاراول نمیشه با امکانات پایه خودش انجام داد یا لااقل مشکله تا این تاپیک حالت مقایسه و تقابل خودش رو حفظ کنه. بخاطر همین یکم طول میکشه. ضمناً بنده کارهای دیگری هم دارم (مثل ایران نهاد) که اولویت و اهمیت بیشتری برام داره نسبت به کشف نقاط قوت و ضعف Laravel و Yii دربرابر همدیگه یا مسائلی از این دست.

ضمنا شما برای شروع یادگیری yii 2 رو پیشنهاد میکنی، یا yii 1?
هنوز Yii 2 آزمایشیه و برای همین من هنوز هم نسخه 1.1 رو توصیه میکنم ولی به محض اینکه نسخه 2 تولید بشه، پکیج پیشرفته رو با محوریت Yii 2 تولید میکنم و به همه توصیه میکنم حتی اگه از نسخه 1.1 استفاده میکنن (که تا 2016 پشتیبانی میشه)، باز هم با نسخه 2 آشنا بشن و کم کم به اون نسخه ارتقا بدن کدهاشون رو.

MMSHFE
جمعه 23 خرداد 1393, 11:46 صبح
البته یک انتقادی هم از yii نسبت به لاراول میشه کرد و اون هم کمبود منابع آموزشیشه.
شما یه سرچ برای لاراول میزنی ، کلی مطلب و ویدئو آموزشی پیدا میکنی.
اما در مقایسه با اون برای yii خیلی خیلی کمتره.
تا جایی که من بررسی کردم چنین مشکلی نبوده و برای مثال، درمورد Yii پکیج آموزشی تصویر فارسی داریم (کار خودمه) ولی درمورد لاراول چنین منبعی نیست. درمورد منابع انگلیسی هم شما توی گوگل بنویسید laravel video learning و yii video training و میبینید که برای هر دو، منابع آموزشی تصویری زیادی میاد.

Elias.F
جمعه 23 خرداد 1393, 14:51 عصر
تا جایی که من بررسی کردم چنین مشکلی نبوده و برای مثال، درمورد Yii پکیج آموزشی تصویر فارسی داریم (کار خودمه) ولی درمورد لاراول چنین منبعی نیست. درمورد منابع انگلیسی هم شما توی گوگل بنویسید laravel video learning و yii video training و میبینید که برای هر دو، منابع آموزشی تصویری زیادی میاد.
ضمن تشکر از پاسخ خوبتون،
من بین این دو در زمینه منابع آموزش مقایسه انجام دادم.
برای yii با وجود قدمت بیشتر ، منابع خیلی خیلی کمتره، تو همون موردی که خودتون گفتین برای laravel سه برابر منابع هست که اکثرا هم رایگان هستند. حتی در منابع فارسی هم خیلی بیشتره . آموزش شما هم که هزینه داره.
اگه خودتون هم سرچ کنید yii هم منابعش کمتره ، و هم اونایی که هست بیشترش پولیه:افسرده:

MMSHFE
شنبه 24 خرداد 1393, 09:49 صبح
تعداد آموزشهای بیشتر که خیلی مهم نیست. مهم اینه که چقدر این آموزشها کاربردی باشن. نمیگم آموزشهای لاراول خوب نیست ولی فرضاً وقتی شما با یک eBook مثل Web Application Development with Yii and PHP میتونید به راحتی آب خوردن کار با Yii رو یاد بگیرین، دلیلی نداره صدتا کتاب دیگه با مطالب تکراری و صرفاً بیان و نگارش متفاوت، تولید و عرضه بشه.

metal gear solid 4
شنبه 31 خرداد 1393, 09:27 صبح
تعداد آموزشهای بیشتر که خیلی مهم نیست. مهم اینه که چقدر این آموزشها کاربردی باشن. نمیگم آموزشهای لاراول خوب نیست ولی فرضاً وقتی شما با یک eBook مثل Web Application Development with Yii and PHP میتونید به راحتی آب خوردن کار با Yii رو یاد بگیرین، دلیلی نداره صدتا کتاب دیگه با مطالب تکراری و صرفاً بیان و نگارش متفاوت، تولید و عرضه بشه.

:لبخندساده:

Mahdi-563
جمعه 06 تیر 1393, 23:29 عصر
باید قبول کرد اکثر قابلیت ها در YII 2 وجود داره و هنوز استیبل نشده در صورتی که خیلی فریم ورک ها یک قدم جلو تر هستن

منم یه مدت YII کار می کردم ولی در حال حاضر دارم فالکون با NGINX کار می کنم

AmirSky
چهارشنبه 08 مرداد 1393, 16:54 عصر
من از سینکس لاراول بیشتر خوشم اوم . چون به نظر زیبا تر میاد.
در مورد قابلیت ها هم باید بگم تقریبا هر دو قابلیت های یکسانی دارند. و هر دو خوب هستند.
البته داشتن داکیومنت و یوزر و منابع آموزشی بیشتر میتونه در انتخاب بسیار تاثیر گذار باشه.

mahmoodhacker
شنبه 15 شهریور 1393, 01:52 صبح
n تا تاپیک تو اینترنت هست
هزاران مقاله و پست
اما فقط ما ایرانیها هستیم که اینطور بحث رو به درازا میکشیم.
این داره و اون نداره اصلاً مطرح نیست!!
من قبل از اینکه سوادم قد بده که بدونم فریم ورک چی هستش در php یه فریم ورک برای خودم ساخته بودم :) البته نه به حرفه ای بودن اینا...
خواستم بگم فقط دوتا بحث مطرح هستش . 1- اشراف بیشتر 2-کاربردی برای جایی که میخوایم
که این دوتا چیزی از هم کم ندارن و بحث 1 فقط مطرحه
من از codeigniter خیلی خوشم میاد چون اول mvc رو بهم یاد داد و دوم باهاش کلی کار کردم و پول دراوردم
حالا هر وقت میخوام سایت کوچیک و ارزون بنویسم از CI استفاده میکنم که از هردوتای اینا به صرفه تره /.
پروژه سنگین باشه من به شخصه با laravel بیشتر حال کردم و مهم اصل حال بود/.
مقایسه laravel و Yii مثل مقایسه سالار عقیلی میمونه با علیرضا قزبانی . هر دو هم سبک و شبیه به هم هستند ولی خوب هرکی باصدای یکی حال میکنه!!!بحثم لاتی شد :لبخند:

ama-amir
سه شنبه 14 بهمن 1393, 09:47 صبح
سلام
دوستان من خیلی وقت هست که با yii کار کردم و پروژه های سطح بالایی رو باهاش بالا آوردم

الان هم مدتی هست به خاطر کارفرما با لاراول کار میکنم و پروژه سنگینی دارم که با لاراول مینیویسم

راستش yii و لاراول خیلی شبیه همن
یه جورایی انگار از رو هم کپی کردن(هرچند که همشون از ruby الگو برداری کردن)

دوست دارم تجربم رو به صورت بی طرفانه تو قسمت های مختلف جفت فریم ورک ها براتون بنویسم

اولیش:
وقتی با لاراول کار میکنم اولین چیزی که خیلی اذیتم میکنه نبود یک code generator خوبه !!
اول که به صورت default هیچ code generatorی روی لاراول من ندیدم پس مجبور شدم پکیجش رو(معادل extension یا component در yii) نصب کنم
راستش اگه بخوام به صورت بی طرفانه بگم code generator لاراول هیچ حرفی در مقابل gii نداره و در مقابل gii بیشتر شبیه به شوخی هست !!!

gii واست فرم ها رو خیلی قشنگ نسبت به مدل و ruleها درست میکنه ولی تو لاراول یه فرم generator خیلی ساااده هست که اونم تو نسخه جدیدش برداشتن !!!


این رو نمیشه اسمش رو مشکل گذاشت، فقط خواستم واسه شروع مهم ترین دغدغم رو در کار با لاراول باهاتون به اشتراک بزارم
چون کسی که با yii کار کرده باشه و بیاد تو لاراول با این کمبود مواجه بشه قطعا سریعا بر میگرده.


این پست ها ادامه داره ...

ama-amir
سه شنبه 14 بهمن 1393, 09:53 صبح
به نظرم لاراول تا موقعی که yii 2 نیومده بود خیلی نسبت به yii 1 پیشتاز بود
دلیل اصلیش هم استفاده از composer تا اون موقع بود
ولی الان دیگه yii 2 اومده و لاراول این برتری رو نداره.
.
یه چیز خوب و مثبتی که دیدم تو لاراول اینه که تو کنترلر هاش میشه get و post رو مشخص کرد
مثلا تو yii ما مینیویسیم:
actionLogin

تو لاراول مینیویسیم
getLogin
و
postLogin

خب البته که این فقط موجب تمیز شدن کد میشه و نمیشه اسمش رو feature یا برتری گذاشت

ولی این ارتباط تنگاتنگ لاراول رو با rest نشون میده

ama-amir
سه شنبه 14 بهمن 1393, 10:04 صبح
در قسمت viewهای لاراول (که قسمت های html و template سایت رو شامل میشه) از موتور blade استفاده میشه.
blade تقریبا یه الگو برداری خیلی سبک تر نسبت به twig هست.
چیز خوبیه و باعث میشه کد html در نهایت تمیز تر در بیاد
ولی تا اینجا که من کار کردم تنها نتیجه ای که در نهایت کار دیدم فقط حذف موارد زیر در html بود:
<?php ?>
<?php echo ''; ?>
بقیش عینا سینتکس php بود :لبخند:

چیز جالبی که داره یه چیزی اضافه کرده به اسم forelse
یه چیزی شبیه به foreach فقط موقعی که هیچی تو آرایه نیست که loop بزنه یه پیامی نشون میده
دقیقا اینجوری:

@forelse($articles as $article)
{{$article->title}}
@empty
هیچ مقاله ای موجود نیست
@endforelse


خب اگه بخوام با yii و widgetهاش مقایسه کنم:
تو yii از موتور template استفاده نمیشه
هرچند که این امکان رو به شما دادن که اگه دوست داشتید میتونید از smarty یا هر موتور templateی که دوست داشتید استفاده کنید.
خب این که از موتور template استفاده نکنی یه سری مزایا داره یه سری معایب
عیبش اینه که در نهایت بالای 80% کدهای html شما میشه php !!
ولی حسن هایی هم داره
از جمله performance!!
قطعا template engine ها performance رو پایین میارن و استفاده نکردن از اونها در نهایت موجب افزایش performance میشه
.
.
تو این قسمت نمیتونم نظری بدم که blade بهتره یا کار با widgetها در yii
هر کدومشون یه سری لذت هایی موقع کار کردن دارن

ولی به شخصه فکر میکنم دستم تو widgetهای yii بازتره
ولی به این هم باور دارم که کار با blade به مراتب خیلی ساده تره تا ساختن widgetهای yii

ama-amir
سه شنبه 14 بهمن 1393, 10:09 صبح
یه چیزی هم که خیلی برام عذاب آور شده از دست دادن widgetهای فوق العاده ی kartik-v در لاراول هست
بسیارررر این ویجت ها کاربردی و کار راه انداز هستن !!
از موقعی که اومدم لاراول باید همه این ها رو دستی پیاده کنم که پوستم کنده شده :D

دوستان لاراول کار حتما در این صفحه دموهای ویجت های kartik رو ببینن:
https://github.com/kartik-v/yii2-widgets

ama-amir
سه شنبه 14 بهمن 1393, 10:23 صبح
میرسیم به بحث خیلی خیلی خیلی مهم routeها :


تو لاراول ما یه فایل داریم به اسم routes
که میایم میگیم مثلا وقتی کاربر contactus زد بفرستش به این کنترلر و اکشن، وقتی رو post کلیک کرد بفرستش به این کنترلر و اکشن
یعنی قسمت به قسمت باید تعریف بشه که الان رو این کلیک شد چه کنترلر و اکشنی باید اجرا شه
کل تاپیک رو که میخوندم خیلی از دوستان لاراول کار به این قسمت تاکید داشتن و به عنوان امتیاز خیلی بزرگی نسبت به yii ازش یاد میکردن
.
اولش که داشتم با routeها کار میکردم یکم برام گنگ بود و چون پیش زمینه ذهنیم yii بود متوجه نمیشدم که کارش چیه
بعد از کلی کار باهاش که درکش کردم متوجه کمبود بزرگش نسبت به yii شدم !!!
.
دوستان لاراول کار این جارو دقت کنن:

تو yii کلا همه ی urlها دارای یک قاعده خاص هستن:(که البته نگران نباشید شما میتونید با htaccess و تنظیمات yii هرجوری دوست داشتید نمایش این قاعده رو تغییر بدید)
site.com/?r=controllerName/actionName

یعنی yii اومده گفته بابا جان شما بیا اینو بزن:
site.com/?r=site/contactus
خودش میره کنترلری به نام site رو پیدا میکنه و دنبال اکشن actionContactUs میگرده.

ولی ما تو لاراول واسه هرچیزی باید بیایم دستی تو route بنویسیم:
Route::get('contactus.', 'SiteController@getContactUs');
Route::post('contactus', 'SiteController@postContactUs');

اکثرا لاراول کارها از route به عنوان برتری و مزیت لاراول یاد میکنن ولی به نظر من فایل routes.php در آخر فایلی شلوغ و بهم ریخته و یک ماکارونی خوشمزه میشه

ama-amir
سه شنبه 14 بهمن 1393, 14:25 عصر
پشتیبانی لاراول از internationalization بسیار ضعیف تر از yii هست.

به عنوان مثال وقتی که در yii میزنیم زبان سایت fa_ir هست
تمامی پیام ها فارسی میشه!
ارورهای validation هم فارسی میشه
در صورتی که لاراول همچین چیزی نداره و همه چیز رو باید خودمون فارسی کنیم!!
.
یه چیز خیلی مهم دیگه:
من در لاراول attribute label نمیبینم !!!
این یعنی اگه بخوایم اسم attribute label ها رو فارسی کنیم باید 100جا اسمش رو عوض کنیم
یا اینکه یه attribute label رو برای خودمون تو لاراول پیاده کنیم
که این یعنی پوستمون کندس
.
کجا کمبود attribute labelها رو بیشتر حس میکنیم؟
موقعی که validation فرم به ارور میخوره
پیام میاد:
وارد کردن فیلد Username اجباری است!!

rezakho
سه شنبه 14 بهمن 1393, 18:31 عصر
در قسمت viewهای لاراول (که قسمت های html و template سایت رو شامل میشه) از موتور blade استفاده میشه.
blade تقریبا یه الگو برداری خیلی سبک تر نسبت به twig هست.
چیز خوبیه و باعث میشه کد html در نهایت تمیز تر در بیاد
ولی تا اینجا که من کار کردم تنها نتیجه ای که در نهایت کار دیدم فقط حذف موارد زیر در html بود:
<?php ?>
<?php echo ''; ?>
بقیش عینا سینتکس php بود :لبخند:

چیز جالبی که داره یه چیزی اضافه کرده به اسم forelse
یه چیزی شبیه به foreach فقط موقعی که هیچی تو آرایه نیست که loop بزنه یه پیامی نشون میده
دقیقا اینجوری:

@forelse($articles as $article)
{{$article->title}}
@empty
هیچ مقاله ای موجود نیست
@endforelse


خب اگه بخوام با yii و widgetهاش مقایسه کنم:
تو yii از موتور template استفاده نمیشه
هرچند که این امکان رو به شما دادن که اگه دوست داشتید میتونید از smarty یا هر موتور templateی که دوست داشتید استفاده کنید.
خب این که از موتور template استفاده نکنی یه سری مزایا داره یه سری معایب
عیبش اینه که در نهایت بالای 80% کدهای html شما میشه php !!
ولی حسن هایی هم داره
از جمله performance!!
قطعا template engine ها performance رو پایین میارن و استفاده نکردن از اونها در نهایت موجب افزایش performance میشه
.
.
تو این قسمت نمیتونم نظری بدم که blade بهتره یا کار با widgetها در yii
هر کدومشون یه سری لذت هایی موقع کار کردن دارن

ولی به شخصه فکر میکنم دستم تو widgetهای yii بازتره
ولی به این هم باور دارم که کار با blade به مراتب خیلی ساده تره تا ساختن widgetهای yii

اصلا مایل نبودم پستی توی این تاپیک برنم، ولی اطلاعات غلطی که شما دارید منتشر می کنید رو هم نتونستم نادیده بگیرم
موتور قالب کارش همین تمیز کردن کدهای ویو و محل تداخل زبانی مثل Php با html هست
بلید یک موتور قالب الگوبرداری شده از razor ماکروسافت هست، منتها به مقدار نیاز! اینطور که شما گفتید فقط <?php رو حذف نمیکنه، از سکشن ها، لیوت، ساختارهای کنترلی و چاپ بگیرید تا افزودن دستور جدید توسط برنامه نویس در 1 خط!
این هم لیست دستورات و ویژگی های بلید


@extends('layout.name')
// Begin a section
@section('name')
// End a section
@stop
// End a section and yield
@show
@parent
// Show a section in a template
@yield('name')
@include('view.name')
@include('view.name', array('key' => 'value'));
@lang('messages.name')
@choice('messages.name', 1);
@if
@else
@elseif
@endif
@unless
@endunless
@for
@endfor
@foreach
@endforeach
@while
@endwhile
//forelse 4.2 feature
@forelse($users as $user)
@empty
@endforelse
// Echo content
{{ $var }}
// Echo escaped content
{{{ $var }}}
{{-- Blade Comment --}}
// Echoing Data After Checking For Existence
{{{ $name or 'Default' }}}
// Displaying Raw Text With Curly Braces
@{{ This will not be processed by Blade }}


در مورد performance هم باید بگم استفاده از موتور قالب تاثیری برو روی performance نداره، چرا؟ واضحه، performance مربوط به اجرای برنامه بعد از مرحله توسعه میشه، و تمام موتورهای قالب، بعد از کامپایل کد قالب در اولین درخواست، کد کامپایل شده php خام رو اجرا می کنند و نه کد اولیه قالب رو!

مورد سوم، موتور قالب ربطی به ویجت ها نداره! یی هم ویجت داره و هم قابلیت کار با موتورهای قالب، چرا این دو رو مقابل هم گذاشتید؟!

rezakho
سه شنبه 14 بهمن 1393, 18:44 عصر
میرسیم به بحث خیلی خیلی خیلی مهم routeها :


تو لاراول ما یه فایل داریم به اسم routes
که میایم میگیم مثلا وقتی کاربر contactus زد بفرستش به این کنترلر و اکشن، وقتی رو post کلیک کرد بفرستش به این کنترلر و اکشن
یعنی قسمت به قسمت باید تعریف بشه که الان رو این کلیک شد چه کنترلر و اکشنی باید اجرا شه
کل تاپیک رو که میخوندم خیلی از دوستان لاراول کار به این قسمت تاکید داشتن و به عنوان امتیاز خیلی بزرگی نسبت به yii ازش یاد میکردن
.
اولش که داشتم با routeها کار میکردم یکم برام گنگ بود و چون پیش زمینه ذهنیم yii بود متوجه نمیشدم که کارش چیه
بعد از کلی کار باهاش که درکش کردم متوجه کمبود بزرگش نسبت به yii شدم !!!
.
دوستان لاراول کار این جارو دقت کنن:

تو yii کلا همه ی urlها دارای یک قاعده خاص هستن:(که البته نگران نباشید شما میتونید با htaccess و تنظیمات yii هرجوری دوست داشتید نمایش این قاعده رو تغییر بدید)
site.com/?r=controllerName/actionName

یعنی yii اومده گفته بابا جان شما بیا اینو بزن:
site.com/?r=site/contactus
خودش میره کنترلری به نام site رو پیدا میکنه و دنبال اکشن actionContactUs میگرده.

ولی ما تو لاراول واسه هرچیزی باید بیایم دستی تو route بنویسیم:
Route::get('contactus.', 'SiteController@getContactUs');
Route::post('contactus', 'SiteController@postContactUs');

اکثرا لاراول کارها از route به عنوان برتری و مزیت لاراول یاد میکنن ولی به نظر من فایل routes.php در آخر فایلی شلوغ و بهم ریخته و یک ماکارونی خوشمزه میشه

لاراول برای همین کار یی، Route::controller رو معرفی کرده، بگذارید یکم جا بیافته لاراول براتون، بعد برید سراغ مقایسه
البته نظر من اینه که بهتر از این هم میشد کار کنند این یکی رو، گرچه درمانش 2-3 خطه

rezakho
سه شنبه 14 بهمن 1393, 18:49 عصر
پشتیبانی لاراول از internationalization بسیار ضعیف تر از yii هست.

به عنوان مثال وقتی که در yii میزنیم زبان سایت fa_ir هست
تمامی پیام ها فارسی میشه!
ارورهای validation هم فارسی میشه
در صورتی که لاراول همچین چیزی نداره و همه چیز رو باید خودمون فارسی کنیم!!
.
یه چیز خیلی مهم دیگه:
من در لاراول attribute label نمیبینم !!!
این یعنی اگه بخوایم اسم attribute label ها رو فارسی کنیم باید 100جا اسمش رو عوض کنیم
یا اینکه یه attribute label رو برای خودمون تو لاراول پیاده کنیم
که این یعنی پوستمون کندس
.
کجا کمبود attribute labelها رو بیشتر حس میکنیم؟
موقعی که validation فرم به ارور میخوره
پیام میاد:
وارد کردن فیلد Username اجباری است!!

اگر خوب مستندات رو می خوندید متوجه می شدید که اگر شما ندیدید دلیل نمیشه وجود نداره!
http://laravel.com/docs/4.2/localization

در مورد attribute label هم بیشتر مطالعه کنید!!! توی لینک بالا اشاره کرده

برای زبان فارسی هم یک فایل ترجمه شده نام ها و خطاهاست، لاراول خودش قفط زبان انگلیسی رو ارائه کرده، اینطور نیست که از بومی سازی پشتیبانی نکنه!

metal gear solid 4
چهارشنبه 15 بهمن 1393, 10:42 صبح
ویدئوهای این لینک رو ببینید. برخی از قابلیت های جدیدی هستند که در لاراول 5 شاهدشون خواهیم بود.

What's New In Laravel 5 (https://laracasts.com/series/whats-new-in-laravel-5)

از بهترین بخش هاش FormRequests ها و MultipleFilesystem هاشه. از این راحتتر نمیشه PHP نویسی کرد. کش کردن روتینگ ها و سایر فیچرهای خوب دیگش به کنار ...
استفاده ی مداوم از NameSpace ها هم به لطف PSR-4 هست امیدوارم کسی پیدا نشه به این مورد ایراد بگیره !!!!!

امیدوارم دوستان از تماشای ویدئوها لذت ببرن.

موفق باشید.

captain_hamid
چهارشنبه 15 بهمن 1393, 13:03 عصر
laravel 5 چه موقع ارئه میشه نسخه نهایی؟ (تاریخ؟)
داکیومنت هم داره؟ در حال حاضر؟

metal gear solid 4
چهارشنبه 15 بهمن 1393, 13:29 عصر
آخرین توئیتی که از Taylor Otwell خوندم دو روز قبل بود که وعده ی 72 ساعت آینده برای ریلیز نسخه ی 5 رو داد.
داکیومنت هم همراه با ریلیز نسخه 5 خواهد بود. طبق اظهارات خودش.

rezakho
چهارشنبه 15 بهمن 1393, 14:10 عصر
البته داکیومنتش الان هم آماده هست

http://laravel.com/docs/master

metal gear solid 4
چهارشنبه 15 بهمن 1393, 15:34 عصر
منظور من هم نسخه ی نهای خود فریمورک و داکیومنت هاش بود. اگه نه نسخه 5 هم ریلیز بتا یا همون Dev ش در دسترس هست تا برنامه نویس ها باهاش کار کنند.

metal gear solid 4
پنج شنبه 16 بهمن 1393, 07:07 صبح
خب نسخه 5 هم عرضه شد.
دوستان میتونن در کنار سادگی استفاده از لاراول از پیچیدگیهاش هم لذت ببرن. :لبخند:

captain_hamid
پنج شنبه 16 بهمن 1393, 07:35 صبح
میشه درباره این نسخه توضیحی بدین؟

tux-world
پنج شنبه 16 بهمن 1393, 08:24 صبح
تو این لینکی که دوستان لطف کردن دادن توضیحاتی داده .
https://laracasts.com/series/whats-new-in-laravel-5

captain_hamid
شنبه 18 بهمن 1393, 07:23 صبح
سلام
حالا که هم نسخه yii و laravel به روز شده. میتونید دوباره این دوتا رو با هم مقایسه کنید.
پست های قبلی تو این تاپیک به نظرم خیلی مفید بود، برای من.

captain_hamid
شنبه 18 بهمن 1393, 19:35 عصر
کسانی که اسفاده کردن لطف کنن این نسخه های جدید رو یه مقایسه اجمالی بکنن.

hooman.pro
پنج شنبه 31 اردیبهشت 1394, 23:19 عصر
بیخیال باو کل کل چیه؟؟×
از هر کدوم نون میخوری همون خوبه، البته خودم yii2 رو فقط قبول دارما

اینم یه نوع مقایسه هست:
میگین laravel بهتره چون لاراول کار زیاده
پس پراید از بنز بهتره چون پراید سوار زیاده

moalla
جمعه 01 خرداد 1394, 10:19 صبح
میرسیم به بحث خیلی خیلی خیلی مهم routeها :


تو لاراول ما یه فایل داریم به اسم routes
که میایم میگیم مثلا وقتی کاربر contactus زد بفرستش به این کنترلر و اکشن، وقتی رو post کلیک کرد بفرستش به این کنترلر و اکشن
یعنی قسمت به قسمت باید تعریف بشه که الان رو این کلیک شد چه کنترلر و اکشنی باید اجرا شه
کل تاپیک رو که میخوندم خیلی از دوستان لاراول کار به این قسمت تاکید داشتن و به عنوان امتیاز خیلی بزرگی نسبت به yii ازش یاد میکردن
.
اولش که داشتم با routeها کار میکردم یکم برام گنگ بود و چون پیش زمینه ذهنیم yii بود متوجه نمیشدم که کارش چیه
بعد از کلی کار باهاش که درکش کردم متوجه کمبود بزرگش نسبت به yii شدم !!!
.
دوستان لاراول کار این جارو دقت کنن:

تو yii کلا همه ی urlها دارای یک قاعده خاص هستن:(که البته نگران نباشید شما میتونید با htaccess و تنظیمات yii هرجوری دوست داشتید نمایش این قاعده رو تغییر بدید)
site.com/?r=controllerName/actionName

یعنی yii اومده گفته بابا جان شما بیا اینو بزن:
site.com/?r=site/contactus
خودش میره کنترلری به نام site رو پیدا میکنه و دنبال اکشن actionContactUs میگرده.

ولی ما تو لاراول واسه هرچیزی باید بیایم دستی تو route بنویسیم:
Route::get('contactus.', 'SiteController@getContactUs');
Route::post('contactus', 'SiteController@postContactUs');

اکثرا لاراول کارها از route به عنوان برتری و مزیت لاراول یاد میکنن ولی به نظر من فایل routes.php در آخر فایلی شلوغ و بهم ریخته و یک ماکارونی خوشمزه میشه

ماشالله اقا رضا خیلی مسلط هستن و جواب این قسمت رو نوشتن اما کوتاه نوشتن و من بیشتر توضیح بدم.
توی لرول برای هر کاری چند روش وجود داره. میتونید یه خط کد توی route بنویسید که بگید هر چی controller هست رو خودت تعریف کن. انوقت دقیقا میشه همونی که شما توی yii استفاده میکنی. استفاده از route::controller (http://laravel.com/docs/5.0/controllers#implicit-controllers) رو اینجا گفته.البته اینجا دیگه نگفته چطوری همه کنترلرر ها رو یه جا تعریف کنیم.
میتونید تک تک controller ها رو جدا تعریف کنید. و یا حتی میتونید تو هر خط controller و action رو بصورت جدا تعریف کنید. به عبارت دیگه میتونید خیلی کلی همه رو یجا تعریف کنید. میتونید خیلی دقیق تر دونه به دونه تعریف کنید. jeffery way همیشه اخری رو پیشنهاد میکنه تا دقت برنامه بالاتر بره که توی فیلمهاش توضیح دادن چرا دقیق تره.
بهرحال لرول برای هر چیزی راه های متفاوتی داره و امیدوارم این خصوصیتش شما رو به اشتباه نندازه.

لرول واقعا هوشمندانه طراحی شده و community خیلی خوبی هم داره. فقط یه مساله است که من رو اذیت میکنه!
اگه اشتباه نکنم asp.net بیش از 15 ساله اومده و تو این مدت فقط 5 نسخه از فریم ورکش رو داده بیرون! همیشه پشتیبانی خوبی هم از برنامه های نوشته شده به ورژن قبلی داره. تو خود visual studio خیلی از کارهای تغییر نسخه رو انجام میده. yii تا الان دوتا نسخه بیرون داده......
اما لرول تو مدت کمتر 5 تا ورژن عوض کرده. من شخصا روی لرول 4 مسلط شدم و یکدفعه 5 اومد! تفاوت ساختاری زیادی داشت و تبدیل پروژه از 4 به 5 هم زمان میبره. یه پروژه رو با 4 نوشته بودم مجبور شدم همه رو از اول به 5 بازنویسی کنم. هر چند بیشتر کدها یکی میشن اما تفاوتهای ساختاری زیاد باعث میشه زمان زیادی برای تسلط به 5 گرفته بشه.
asp.net 2015 روی هر سه پلت فرم نصب میشه و خروجی های بسیار متنوعی داره. خیلی وسوسه انگیز شده :کف:
با آرزوی بهترین ها برای هموطن های عزیز

imohammad
جمعه 01 خرداد 1394, 17:01 عصر
asp.net 2015 روی هر سه پلت فرم نصب میشه و خروجی های بسیار متنوعی داره. خیلی وسوسه انگیز شده
asp.net بدون بانک اطلاعاتی SQLServer کارایی چندانی نداره!

maysam.m
سه شنبه 30 تیر 1394, 22:35 عصر
بدترین نکته لاراول این انتشار نسخه های زیادشه !