PDA

View Full Version : سوال: سوال در مورد انتخاب فریمورک بین Yii و Laravel



Alias.Boy
یک شنبه 17 فروردین 1393, 11:07 صبح
سلام دوستان
من چند وقتی هست که میخوام برای برنامه نویسی برم سمت فریمورک تا کدنویسی هم سریعتر بشه و هم تمیزتر , به خاطر این موضوع یکم تخقیق در موردشون کردم ولی حقیقتش رو بخواید نتونستم به نتیجه دلخواهم برسم
از اونجایی که من با این فریمورک ها برای اولین بار هست که میخوام کار کنم نمیدونم مزیت کدوم نسبت به اونیکی بیشتره و بهتره کدوم انتخاب بشه و شاید بهتره بگم نمیدونم کدوم فریمورک بیشتر به کارم میاد
به این تاپیک (http://barnamenevis.org/showthread.php?441437-Yii-vs-Laravel/)هم رسیدم که دوستان دارند در مورد مزیت های لاراول و فریمورکهای دیگه در موردش صحبت میکنن ولی با خوندن پست های این تاپیک بازم نتونستم انتخاب دقیقتری داشته باشم , چون انگاری Yii و Laravel زیاد با هم فاصله ندارن و فرقشون فقط تو سادگی یادگیری هست و آسونتر بودن Laravel
از طرفی Laravel کمی نوپا هست و تغییرات زیادی داشته , من هم میخوام برای یک پروژه تقریباً زمان بر با قابلیت توسعه بیام سمت فریمورک , به خاطر این قضیه یکم نگرانم که بعدها به مشکل نخورم
فریمورک Yii فروم فارسی داره و به تازگی برخی از کاربران زحمت کشیدن منابع رو ترجمه کردن و در اختیار عموم قرار دادند و حتی فروم فارسی برایش قرار داده شده
هر چند Laravel داکیومنت فارسی شده هم دارد ولی هنوز فروم اختصاصی فارسی نداره , هر چند میشه از همین فروم هم برای رفع مشکلات استفاده کرد ولی بودن یک فروم اختصاصی خیلی مفیدتر میتونه باشه

یه نکته دیگه هم که میخوام بدونم اینه که من زیاد با برنامه نویسی شی گرا کار نکردم , البته آشنایی نسبی دارم , به نظرتون برای یادگیری بهتر این فریمورک ها بهتره دید خودم رو نسبت به برنامه نویسی شی گرا بازتر کنم و به قولی خودم رو تو اون بحث تقوقت کنم و بعد بیام سمت فریمورک یا اینکه نیازی نیست و در همین مسیر یادگیری فریمورک ها اون بحث ها رو هم بهتر میفهمم؟

Mojtaba.Shateri
یک شنبه 17 فروردین 1393, 11:22 صبح
سلام دوستان
من چند وقتی هست که میخوام برای برنامه نویسی برم سمت فریمورک تا کدنویسی هم سریعتر بشه و هم تمیزتر , به خاطر این موضوع یکم تخقیق در موردشون کردم ولی حقیقتش رو بخواید نتونستم به نتیجه دلخواهم برسم
از اونجایی که من با این فریمورک ها برای اولین بار هست که میخوام کار کنم نمیدونم مزیت کدوم نسبت به اونیکی بیشتره و بهتره کدوم انتخاب بشه و شاید بهتره بگم نمیدونم کدوم فریمورک بیشتر به کارم میاد
به این تاپیک (http://barnamenevis.org/showthread.php?441437-Yii-vs-Laravel/)هم رسیدم که دوستان دارند در مورد مزیت های لاراول و فریمورکهای دیگه در موردش صحبت میکنن ولی با خوندن پست های این تاپیک بازم نتونستم انتخاب دقیقتری داشته باشم , چون انگاری Yii و Laravel زیاد با هم فاصله ندارن و فرقشون فقط تو سادگی یادگیری هست و آسونتر بودن Laravel
از طرفی Laravel کمی نوپا هست و تغییرات زیادی داشته , من هم میخوام برای یک پروژه تقریباً زمان بر با قابلیت توسعه بیام سمت فریمورک , به خاطر این قضیه یکم نگرانم که بعدها به مشکل نخورم
فریمورک Yii فروم فارسی داره و به تازگی برخی از کاربران زحمت کشیدن منابع رو ترجمه کردن و در اختیار عموم قرار دادند و حتی فروم فارسی برایش قرار داده شده
هر چند Laravel داکیومنت فارسی شده هم دارد ولی هنوز فروم اختصاصی فارسی نداره , هر چند میشه از همین فروم هم برای رفع مشکلات استفاده کرد ولی بودن یک فروم اختصاصی خیلی مفیدتر میتونه باشه

یه نکته دیگه هم که میخوام بدونم اینه که من زیاد با برنامه نویسی شی گرا کار نکردم , البته آشنایی نسبی دارم , به نظرتون برای یادگیری بهتر این فریمورک ها بهتره دید خودم رو نسبت به برنامه نویسی شی گرا بازتر کنم و به قولی خودم رو تو اون بحث تقوقت کنم و بعد بیام سمت فریمورک یا اینکه نیازی نیست و در همین مسیر یادگیری فریمورک ها اون بحث ها رو هم بهتر میفهمم؟

به نظر من اگه اول با مفاهیم شیئ گرایی آشنا بشی و بعد بری سراغ فریمورک بهتره.
چون بحث شیئ گرایی پایه و اساسه برا فریمورک ها(PHP , javascript , .NET ) فرق نداره.
قواعد SOLID رو خوب یاد بگیر.
با اصول طراحی نرم افزار و الگوهای تولید نرم افزار آشنا باشی خیلی خوب میشه.

Alias.Boy
یک شنبه 17 فروردین 1393, 17:45 عصر
منظورتون پترن هایی مثل factory و غیره هستن؟
کدوم یکی از اینهارو یاد بگیرم بهتره؟

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

Mojtaba.Shateri
یک شنبه 17 فروردین 1393, 19:55 عصر
منظورتون پترن هایی مثل factory و غیره هستن؟
کدوم یکی از اینهارو یاد بگیرم بهتره؟

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


بله ، دقیقا!
شما برای اینکه یک خط کد بنویسی باید دلیل محکمی داشته باشی. باید به این فکر کنی که این کد روی چه بخشهایی میتونه تاثیر بزاره. بایستی فرض کنی که یک برنامه نویس دیگه میاد و کد رو میزارن جلوش و میگن توسعه بده!! یعنی اصول refactoring رو یاد بگیر.
حالا که میخوای شروع کنی ، اصولی شروع کن. اصطکاک باید بین اجزای مختلف برنامت کم باشه. اینارو با مطالعه اصول طراحی ، تولید و توسعه نرم افزار یاد میگیری.
یاد گرفتن تئوریش شاید برا به کسی که ادبیات میخونه و حفظیش خوب باشه راحت باشه:چشمک:
اما شما که میخوای پیاده سازی کنی باید برای هر کدوم مثالهای فراوان کار کنی تا خوب یاد بگیری.
میتونی کتاب مارتین فاولر یا GOF رو بخونی.
گاهی باید چند الگو رو باهم تلفیق کنی. گاهی انتخاب یک الگو بیشتر باعث پیچیده شدن پروژه میشه. پس اینطور نیست که همه جا استفاده کنی.
درباره فریمورک ، من به شخصه بر اساس نرم افزاری که میخوام بسازم در صورت نیاز فریمورکی که برا اون پروژه بهتر باشه انتخاب میکنم.
یکی از موارد مهم در انتخاب فریمورک ، پشتیبانی شدنشه. پس اینو مد نظر قرار بده. مثلا Yii پشتیبانی خوبی داره.اما دلیل نمیشه که Laravel تواناییاش کمتر باشه .
اگه پروژه خاصی داری و دنبال فریمورک مناسب برا پیاده سازیش هستی ، به نظرم بهتره عنوان یا توضیحاتی درباره پروژت بدی (در صورت صلاحدید). بعد دوستان نظر بدن بگن کدوم روش و فریمورک و ... بهتره.
تفاوتهای این دوتا فریمورک رو هم میتونی تو این لینکها ببینی :
http://vschart.com/compare/laravel/vs/yii
http://gistpages.com/glossary/yii_framework/comparing_the_yii_framework_to_other_frameworks

Alias.Boy
یک شنبه 17 فروردین 1393, 22:29 عصر
خیلی ممنون
جوابتون مفید بود , پس اینجور که شما میگید بهتره چند الگو یاد بگیرم

کتابهایی که معرفی کردید رو میشه با اسم کامل بگید؟

پروژه ای که من دنبالشم یک وب سرویس هست و قراره یک سری مشتری و فروشنده از طریق وب و موبایل بهش وصل بشن