درود
من یک برنامه نویس تازه کارم از کدوم فریم ورک php استفاده کنم؟و چرا؟
سپاس
درود
من یک برنامه نویس تازه کارم از کدوم فریم ورک php استفاده کنم؟و چرا؟
سپاس
اینجا هرکی هر فریمورکی که خودش باهاش کار کرده باشه رو میگه بهترینه. پاسخ ها خیلی سلیقه ای میشن. بهتره توی گوگل جستجو کنید.
من خودم از Laravel 4 استفاده میکنم و خیلی هم ازش راضی هستم.
سلام
من اولا yii رو پیشنهاد می دم اما شما از گوگل استفاده کنید.
اما چرا؟!http://www.yiiframework.com/performance
بنده هم yii رو پیشنهاد میدم دلیل هم اینکه تقریبا هر چیزی که نیاز داشته باشید به راحتی در اختیارتون میزاره
ولی چون میگید تازه کارید بنظرم Codeigniter مناسب تره
Framework Yii
این اینفوگرافیک کمک میکنه بهتر تصمیم بگیرید
http://www.zfort.com/blog/wp-content...nfographic.jpg
بنظر من CodeIgniter برای شروع خوبه.
هرگز سراغ CodeIgniter نرید. این فریمورک یک فریمورک تاریخ مصرف گذشتست.
http://philsturgeon.co.uk/blog/2012/...hout-a-rewrite
بهترین فریمورک های انتهای 2013 و 2014
برتری بی چون و چرای Laravel ;)
codeigniterبرای کاربرهای تازه کار خوبه؟
چرا؟
1. راهنمای کامل و بسیار روان
۲. دستورات و توابع ساده و روتین که مخصوصا برای کاربران تازه کار phpچون چشمهای اونها به دیدن کدهای زیاد و ماژولار عادت نداره بسیار خوبه
۳. یه فریم ورک سطح پایین منطورم فریمورک CI مثل Yii یا laravel چندان پیشرفته نیست و کاربران تازهکار با دیدن مثالها و نمونهکدها براحتی میتونن یه برنامه ساده بنویسن
۴. شما به عنوان تازه کار چندان با MVC آشنایی ندارین و کار کرده با CI درک درستی از کار با MVC به شما میده
البته بعدش فقط Yii اینو کسی میگه که با Ci و symfony و کیک کار کرده و از تمام اینها بهتر و سریعتر و پیشرفتهتر فریمورک Yii هست
هرگز تعداد استفاده کنندگان بیشتر، بخصوص توی نظرسنجی که یک فرد برگزار میکنه و ممکنه 1000 نفر نهایتاً شرکت کرده باشن که حتی در این نظرسنجی، تعداد شرکت کنندگان هم اعلام نشده و فقط یک Chart از نتایج گذاشته شده و صحتش هم تأیید نشده، نباید ملاک انتخاب شما باشه. البته از حرفهای من نباید اینطور برداشت کنید که Laravel فریمورک خوبی نیست. اتفاقاً خیلی خوبه و فریمورک جامع و در عین حال، راحتی هم هست ولی منظورم چیز دیگه است. منظورم اینه که توی انتخاب معیارهاتون برای انتخاب، نظرات چندتا کاربر رو مدنظر قرار ندین. بخصوص این نظرسنجی که اخیراً دیدم خیلیها برای دفاع از Laravel دارن ازش استفاده میکنن. دنبال موارد محکمه پسند باشین. برای مثال، یک پروژه سنگین و کاملاً مشابه ازنظر امکانات با فریمورکهای مختلف درست بشه و توی بازدید بالا ازشون Benchmark بگیرین و ببینید کدوم بهتر جواب میده. من خودم شخصاً این کار رو برای انتخاب فریمورک رسمی ایران نهاد انجام دادم و نهایتاً Yii بعد از Phalcon توی Performance دوم شد (با اختلاف کم) ولی از اونجا که Phalcon با C نوشته شده و بصورت یک Extension باید روی PHP نصب بشه و روی همه هاستها (بخصوص هاستهای اشتراکی) چنین امکانی نیست و ازطرفی اختلاف Yii و Phalcon اونقدر زیاد نبود که امکانات بیشتر و سادگی استفاده از Yii رو بخواد پوشش بده، Yii رو انتخاب کردم. به این میگن یک سند محکمه پسند چون قابل تکراره و هر کسی توی نتایجش شک کنه میتونه خودش Benchmark بگیره یا پروژه های طراحی شده رو در اختیارش بگذاریم تا روی سرور دلخواه خودش تست کنه. توی همه تستها هم هر دو حالت فعال بودن APC و غیر فعال بودنش آزمایش شد و نتایج تقریباً یکسان بود و CI و Laravel و Symphony رتبه های سوم تا پنجم رو کسب کردن. ضمناً فکر میکنم اگه بخوایم به تعداد آرای کاربران استناد کنیم، آمار سایتهایی مثل این مستندتر باشه چون زمان باز بودن Survey اونها طولانیتر بوده (لااقل بیشتر از یک هفته) و ازطرفی کارشون هم کلاً رتبه بندی فریمورکهاست.
-----
نظر شخصی من، هم برای شروع و هم برای ادامه توی پروژه های حرفه ای فریمورک Yii هست. دنبال فریمورکی باشین که وقتی پروژه هاتون از یه حدی بزرگتر شد، مجبور نباشین به یکی دیگه کوچ کنید!
اگه 7-6 نفر Developer حرفه ای دور هم جمع بشیم و حدوداً 6 ماه تا یکسال وقت بگذاریم، چرا نشه فریمورکی مثل Yii نوشت؟ مگه کسانی که Yii رو نوشتن از فضا اومدن؟! منتها اینکه فعلاً Yii رو بعنوان فریمورک رسمی ایران نهاد انتخاب کردیم بخاطر این مسئله بود که هنوز شناخت کافی از مهارتهای افراد نداریم و ازطرفی نهاد هم به اون مرحله از درآمدزایی نرسیده که این 7-6 نفر برنامه نویس حرفه ای که میخوان 6 ماه تا یکسال وقتشون رو روی این کار بگذارن، توی این مدت ازنظر درآمد تأمین کنه و تا اون موقع، Yii به خوبی جوابگوی نیاز ما هست.
سلام دوست عزیز
به نظر من شما فریمورکی رو انتخاب کن مشکلات کمتری نسبت به فریمورک های دیگه داشته باشه.
مثلا توی CakePHP از MVC ضعیفی استفاده شده.
همچنین فریمورکی رو انتخاب کن که در عین قدرت ، استفاده ازش آسون باشه.
به نظر من همچنین فریمورکی با خصوصیات بالا Yii رو بهترین گزینه میدونم.
اگه نخوام از MVC استفاده کنم چی؟اصلاً استفاده از فریمورک ها منوط به استفاده از MVC هست یا نه؟
من دو ساله دارم از Laravel استفاده میکنم. :) اون زمانی که هنوز یک Documentation درست حسابی هم ازش نبود. و حتی با Dayle Rees سر همین مستند سازی صحبت میکردم. ( چت میکردم ) و ایشون هم به Taylor Otwell انتقال میدادند.
اینطوری نیست که به خاطر دیدن چهار تا نظر و نظرسنجی بخوام انتخاب کنم.
به همین راحتی تصمیم نگیرید. مطمئناً این Developer ها با بنچ مارک و مدرک صحبت میکنند. توی گوگل بنچمارک ها رو جستجو کنید و ببینید. صرفاً بنچمارکی که خودتون گرفتید رو در نظر نگیرید.
توی ورژن سوم Laravel تمامی متدهای کلاس ها به صورت Static بودند که در مصرف حافظه و همچنین Debug کردن خطاهایی که هنگام برنامه نویسی بود مشکلاتی رو ایجاد میکرد. بعد از چند ماه و در نسخه ی چهارم. تمامی کلاس ها به صورت غیر استاتیک هستند. خوشبختانه Taylor Otwell به جرات میگم یکی از نوابغ برنامه نویسی هستند، ایشون خیلی خوب نیازها و تکنولوژی های روز رو شناسایی کردند. تا قبل از این باید برای Laravel باندل زده میشد که در نسخه ی آخر به طور کامل با Package عوض شده.
یک نگاهی به سایت packagist.org بندازید متوجه میشید کسی که laravel رو برای برنامه نویسی انتخاب میکنه به راحتی با هزاران هزار پکیج آماده رو به رو میشه. Open Source به معنی واقعی براش معنی میشه!!
من نخواستم ریزبینانه از فریمورکی که استفاده میکنم دفاع کنم. فقط نام بردم و گفتم که بقیه ببینن و خودشون تصمیم بگیرند. ضمن اینکه Laravel تنها سه ساله که تولید شده. و در طی همین سه سال انقدر خوب عمل کرده و مورد توجه بوده که چنین موفقیت هایی کسب کنه. تمامی این موفقیت ها از سر دفاع کردن های کورکورانه نبوده جناب مدیر. ;)
در ضمن لینکی هم که گذاشتید تنها از 200-300 نفر رای گرفته شده و تاریخ ارسالش هم معلوم نیست متعلق به چه دوره ای از تاریخ میشه. اما مشخصه قدیمیه. چون CI که یک فریمورک سوخته به حساب میاد دررتبه ی دوم قرار داره!!! خیلی خنده داره. نظرسنجی که من گذاشتم و دقیقاً متعلق به ماه اخیر میشه رو رد میکنید اما یک نظرسنجی متعلق به 4-5 سال پیش رو معرفی میکنید زمانی که هنوز لاراول معرفی نشده بوده!!!
CI ابتداً یک فریمورک سوخته نیست و همچنان بعنوان یکی از محبوبترین فریمورکها مطرحه. منتها بنظر من باید بعنوان یک Micro Framework درنظر بگیریمش. من هم نگفتم لاراول فریمورک بدیه و اتفاقاً همونطور که اشاره کردم، خیلی هم فریمورک خوبیه ولی بهرحال همونطور که اشاره کردم، کلاً نباید با نظرسنجی مقایسه کنیم چون اگه بحث نظرسنجی باشه، سایتی که بنده معرفی کردم بعنوان مرجع، بیشتر قابل استناده تا یک صفحه شخصی یک Developer توی SitePoint چون حداقل تعداد رأی دهندگان مشخص شده. اما درمورد Benchmark، بله اکثراً توی اینترنت Benchmark موجوده و من هم چند نمونه رو براتون میگذارم:
http://phpixie.com/blog/php-framework-benchmark
http://www.yiiframework.com/performance
http://docs.phalconphp.com/en/latest...llo-world.html
http://en.wikipedia.org/wiki/Compari...ion_frameworks (قسمت فریمورکهای PHP رو مشاهده و امکانات رو بررسی کنید)
http://crispycoding.com/top-5-php-frameworks-for-2013
http://socialcompare.com/en/comparis...rks-comparison
http://blog.adrianlawley.com/best-php-framework-2013
http://systemsarchitect.net/performa...php-frameworks
همونطور که میبینید، اکثراً نتایج متغیره و اونهم بخاطر اینه که نوع تستی که انجام شده فرق میکنه ولی چیزی که در مجموع میشه فهمید اینه که Performance فریمورک Yii به این راحتیها به چالش کشیده نمیشه. بخصوص اگه APC رو فعال کنید. سادگی یادگیریش هم که مثال زدنیه. بهرحال چیزی که مسلمه اینه که بهترین ابزار، اونیه که شما باهاش راحتترین و برای دست شما مناسبه. من شخصاً Yii رو قبول دارم و شما هم قبول کنید که دفاع من ازش کورکورانه نیست. شما Laravel رو قبول دارین. یکنفر دیگه CI رو قبول داره. مهم اینه که هرکسی با مشاهده Benchmarkها (و نه Pollها و Surveyها) تصمیم درست رو بگیره. بعلاوه درکنار Performance بالا، راحتی در کارکرد هم ملاک خیلی خوبیه وگرنه همه باید سراغ Phalcon میرفتیم.
اینقدر درگیر بحث روی اینکه کدوم FW بهتره شدیم که هم من یادم رفت که املای سیمفونی Symfony هست نه Symphony و هم بقیه دوستان متوجه این اشتباه تایپی نشدن!
لاراول به این دلیل از لحاظ Performance ممکنه ضعیفتر از Yii باشه اون هم نه خیلی فاحش که این فریمورک داره چرخ های اختراع شده رو استفاده میکنه. خودش دوباره شروع به کدنویسی نکرده. کدهایی که طی سالها توسط برنامه نویس ها تست شده، بهبود داده شده، امنیتش مورد تایید قرار گرفته، باگ هاش رفع شده و این روند همچنان هم ادامه داره. برخی کتابخونه های Symfony از لحاظ حجمی مقداری بالا هستند. از لحاظ راحتی استفاده از فریمورک دیگه هرکسی که یکبار با لاراول کار کرده باشه میدونه راحت تر از این فریمورک نمیشه پیدا کرد. کنترل کامل روی تمامی بخش های فریمورک، قابلیت کاستمایز بسیار بالا و از همه مهمتر به روز بودنش.
در رابطه با تغییر فریمورک در مواردی که وبسایتمون تبدیل به یک وبسایت بزرگ بشه هم من موافق شما نیستم، مطمئناً هیچ کدوم از این فریمورک ها در وبسایت های کوچک و متوسط کم نمیارن و به خوبی جواب میدن. اما در وبسایت های بزرگ، بدون شک درآمدی که ازش کسب میشه بیشتر از منابعیه که براش صرف میشه. و اختلاف بین فریمورک ها در حدی نیست که بعدها وبسایتی که با Yii نوشته میشه روی یک سرور به قدری راحت اجرا بشه که فریمورکهای دیگه از پسش بر نیان! تفاوت انقدر نیست. بخوایم نخوایم تنها راهکار دست کردن در جیب و هزینه کردن برای در اختیار داشتن سخت افزار قویتره. انرژی که صرف میشه هم به مراتب کمتر از اینه که کل وبسایت دوباره با Yii نوشته بشه که نهایتاً بنچمارکی در حد و حدود فریمورک قبلی حاصل بشه.
دوست عزیز، چرا بحث میکنید؟ من که نگفتم Laravel خوب نیست! میگم Yii ازنظر من بهتره. حالا شما نظر من رو قبول ندارین، مشکلی نیست. من هم نمیگم نظرم کاملترین نظر موجوده! با هرکدوم راحتترین کار کنید. Yii رو من که نساختم که بخوام ازش دفاع کنم. البته با Laravel هم کار کردم و حداقل در این مورد که کارکردن با Yii راحتتر از Laravel هست، مطمئنم. این مواردی هم که گفتین (Yii داره از چرخهای اختراع شده استفاده میکنه و...) ابداً بد نیست. اختراع دوباره چرخ، تنها زمانی معنا و توجیه داره که چرخ جدید، بهتر از نمونه های قبلی کار کنه. بحث ارتقاء سخت افزار و... رو هم نفهمیدم به موضوع صحبت ما چه ربطی داشت چون یک مسئله مسلمه. مهم اینه که توی همون سخت افزار قبلی، ببینیم چه فریمورکی بهتر عمل میکنه چون برای خیلیها، بخصوص کسانی که هاست اشتراکی دارن، ارتقاء سخت افزار ممکن نیست. برای خیلیهای دیگه هم مقرون به صرفه نیست. حالا اینکه یک فریمورک میتونه روی همون سخت افزار معمولی، Performance معادل یک فریمورک دیگه روی سخت افزار قویتر ارائه بده، چیز بدیه؟ من که اینطور فکر نمیکنم.
البته من هم قصدم تحمیل نظرم نیست. توی ارسال اولتون راجع به فریمورک ها و نظرسنجی ها جوری جهبه گرفتید که احساس کردم قراره همه رو مجاب به استفاده از فریمورک مورد علاقتون بکنید.
و انگار صحبتم راجع به اختراع چرخ و این چیزا رو برعکس متوجه شدید. بنده گفتم لاراول در حال استفاده از کدهایی هست که قبلاً تست شده.
و در آخر هم؛ باز شما حرف خودتون رو میزنید. به خاطر این حرفتون:
اون خیلی هایی که قراره وبسایت هایی بنویسن که روی یک هاست اشتراکی کار نکنه جدای استفاده از هر فریمورکی باید دست توی جیبشون بکنند. داشتن performance در این سطح؛ خارج از حد و توان یک فریمورکه. متعجبم که شما بر این باورید یک فریمورکی مثل Yii میتونه یک وبسایت رو روی هاستی اشتراکی ارائه بده که فریمورک های دیگه باید روی یک سرور جدا و قوی ارائه بدن! اصلاً ممکنه چنین چیزی!؟ اصلاً در حوزه ی توانایی های یک فریمورکه این مسائل؟ دیگه انقدرا هم که میگید نیست به خدا :Dبرای خیلیها، بخصوص کسانی که هاست اشتراکی دارن، ارتقاء سخت افزار ممکن نیست. برای خیلیهای دیگه هم مقرون به صرفه نیست. حالا اینکه یک فریمورک میتونه روی همون سخت افزار معمولی، Performance معادل یک فریمورک دیگه روی سخت افزار قویتر ارائه بده، چیز بدیه؟ من که اینطور فکر نمیکنم.
بگذریم.
خوب دوست عزیز، خیلی از کدهای Yii هم قبلاً توی Prado و Symfony تست شده بودن و جواب دادن و نقاط قوت اونها رو در خودش جمع کرده. به لینک زیر نگاه کنید:
http://www.yiiframework.com/about (قسمت Credits)
حتی همونطور که میبینید، بخشهایی از ساختارش رو از Ruby on Rails گرفته که اصلاً ربطی به PHP نداره. قرار نیست توی یک فریمورک، همه چیزها از اول نوشته بشه و Yii هم از این قاعده مستثنا نیست ولی یکسری قابلیتها مثل Lazy Loading توکار و... باعث شده Performance خوبی داشته باشه.
با نظرتون در پست اخیر درمورد هاست اشتراکی هم موافق نیستم. وقتی میشه با رعایت اصول بهینگی، یک سایت رو روی سرور سبکتری اجرا کرد، چرا باید خودمون رو مجبور به خرید سخت افزار قویتر کنیم؟ نمیگم Yii معجزه میکنه ولی تا جایی که امکانش هست، کدهاش ازنظر رعایت اصول بهینگی، استاندارد هستن.
ضمناً من در پست اولم ابداً درمقابل Laravel جبهه نگرفتم. درمقابل این منطق که متن یک وبلاگ بخواد ملاک تصمیم گیری ما باشه و تبدیل به مدرک و سند بشه، جبهه گرفتم و فکر نمیکنم حرف غیر منطقی زده باشم.
بهرحال، بقول شما بگذریم.
باید ببینید با چه فریم ورکی راحت هستین؟ یکی از مشکلات اینه که اکثرا فکر می کنیم که یک فریم ورک که از لحاظ امکانات از همه بهتر باشه انتخاب می کنیم و همیشه توی بزرگترین پروژه ها مون شاید 50% فریم ورک هم استفاده نکنیم .
من پروژه اداری و لوکال خیلی بزرگ دیدم شرکتی انجام داده با همین ci و به خوبی کار می کنه
من با symfonyکار کردم ولی چون باهاش راحت نبودم هرچی بیشتر یاد میگرفتم نمی دونم چرا ازش بدم می اومد ولی laravel رو باهاش کار کردم چند هفته هست واقعا خوب هست و توی چند ماه اخیر آموزش های خیلی خوبی توی سایت های خارجی هست و package های خوبی داره مثلا دیشب اتفاقی پکیجی دیدم که با چند خط کد صفحات bootstrap و مثلا صفحه ریجستر رو میسازه فقط باید عنوان تایتل های فرم را تغییر بدیم
من با ci و laravel خیلی راحت تر از symfony بودم بنظر من هر کدوم رو چند روز امتحان کن ببین به کدوم راحت تری
سلام
ببینید لطفا تنبلی به کار نبرید! خوب کارکردن زحمت میخواد به راحتی بدست نمیاد ولی نتیجه ی خوبی داره به نظرم اصولا برنامه نویسی دیربازدست ولی پربازده ! منم همه ی سختیاش درک میکنم( فکرمیکنم تو سن 15
16 سالگی کد نوشتن باید اثبات کنه سختی کشیدم ) و کامل مطالب یاد بگیرید قبل از کار با فریم ورک حتما حتما با مفاهیم پایه مسائل شی گرایی آشنا شین بعد کمی در مورد MVC مطلب و مقاله بخونید
اما در مورد فریم ورک من پیشنهادم به شما Yii هستش من نظر چند تا از دوستان برنامه نویس کاربلد که خونده بودم Yii پیشنهاد میکردند ولی خوب معایبی داره مثل استفاده منابعش میگن یکم زیاده!
من تا الان با کدایگنایتر پروژه های کوچیکی پیش بردم ! کد ایگنایتر هلپ و داکیومنتش خیلی خوبه و رونه و مسلط شدن به اون راحتتره ولی من نظرم اینه که زمانی که به شی گرایی و MVC تسلط خوبی پیدا کردید مستقیم
به سمت Yii برید (حتما برای شروع از یه داکیومنت معتبر استفاده کنید اصلا خود مهندس شهرکی مجموعه آموزشی خوبی با Yii آماده کردن از ایشون تهیه کنید قیمت مناسبی هم داشت )
امروز داشتم توی وبسایت Phalcon گشت میزدم ، Syntax، Dependencies و کتابخونه هاشو نگاه میکردم و صادقانه بگم عاشق این فریمورک شدم.
شاید یک مقدار کار کردن باهاش سخت تر از سایر فریمورک ها باشه، که البته به نظر من تا زمانی که یک پروژه ی کوچیک رو باهاش اجرا نکنیم متوجه آسونی یا سختی نمیشیم اما از لحاظ سرعت فوق العادست. با توجه به بنچمارک هایی که خودشون گذاشتند. تجربه ی عملی نداشتم.
و البته باز هم این رو باید اضافه کنم که در پروژه های بزرگ این سرعت نمود پیدا میکنه. در پروژه های معمولی نیاز نیست سراغ این فریمورک برید.
پیشنهاد میکنم مدیران یک تالار برای این فریمورک و سایر فریمورک های محبوب ایجاد کنند.