PDA

View Full Version : ضرورت به کارگیری framework



میرزا عبدالزکی
جمعه 16 خرداد 1393, 10:27 صبح
سلام و عرض ادب
می خواستم بپرسم که آیا واقعاً ضرورتی داره که ما از فریم ورک ها تو برناممون استفاده کنیم؟
من تقریباً به php مسلط هستم... و تازگیا رفتم سمت zend framework.
ولی متأسفانه خیلی سخته این فریم ورک...
میشه بنده رو راهنمایی بکنید که دقیقاً الان باید چیکار کنم؟

سوداگر
جمعه 16 خرداد 1393, 12:36 عصر
نه لزوما... تا وقتی که پروژه تون پیچیده نشده و میتونید با PHP خام کد بزنید لزومی نداره با استفاده از فریمورک performance رو پایین بیارید (سریعترین فریمورک الان phalcon هست ولی همون فالکن تا جایی که اطلاع دارم (قبلا خونده بودم لینکش رو گم کردم حالا هی نگید مستند حرف بزن :چشمک:) کارایی رو تا 50٪ نسبت به PHP خام پایین میاره، رتبه بعدی CI بود که خدا رحمتش کنه بعدش Yii هست با 40 درصد کارایی نسبت به PHP خام و laravel با 30٪ کارایی نسبت به PHP و Cake و symfony و... تا اینکه میرسیم به zend که پایین ترین کارایی رو داره در حد 20 درصد بود به قول معروف هرکه بامش بیش برفش بیشتر...).
اما برای کارهای تیمی غالباً از فریمورک استفاده میشود (با وجود کاهش کارایی)

تازگیا رفتم سمت zend framework.
ولی متأسفانه خیلی سخته این فریم ورک...
نخوردیم نون گندم ولی تقریبا همه کسانی که سراغ zend رفتند قبول دارند که کار با zand مثل استفاده از یک هواپیمای بوئینگ 747 هست و نباید برای یادگیری مستقیم سراغ zend رفت.
---------
این تاپیک اعلان! هم میتونه مفید باشه: ‌http://barnamenevis.org/showthread.php?396039-%D8%A7%D8%AE%D8%A8%D8%A7%D8%B1%D8%8C-%D8%A8%D8%AD%D8%AB-%D9%88-%D8%AA%D8%A8%D8%A7%D8%AF%D9%84-%D9%86%D8%B8%D8%B1-%D8%AF%D8%B1%D8%A8%D8%A7%D8%B1%D9%87-%D9%81%D8%B1%DB%8C%D9%85%D9%88%D8%B1%DA%A9%D9%87%D 8%A7%DB%8C-PHP

MRmoon
جمعه 16 خرداد 1393, 14:03 عصر
سلام و عرض ادب
می خواستم بپرسم که آیا واقعاً ضرورتی داره که ما از فریم ورک ها تو برناممون استفاده کنیم؟
من تقریباً به php مسلط هستم... و تازگیا رفتم سمت zend framework.
ولی متأسفانه خیلی سخته این فریم ورک...
میشه بنده رو راهنمایی بکنید که دقیقاً الان باید چیکار کنم؟

پیش نهاد می کنم از فریم ورک هایی که یاد گیریش آسون تره مثل laravel یا yii شروع کنید.

لزومی هم نداره استفاده کنی. ولی وقتی استفاده کنی به قدرتش پی میبری!

phalcon هم که دوستمون گفتن یه سری مشکلات داشت در pagination و هش کردن پسوردش که تو ویندوز کرش می کرد.

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

میرزا عبدالزکی
جمعه 16 خرداد 1393, 15:07 عصر
ممنون از پاسخ دوستان عزیز
اگه من بخوام سایتی مثل بلاگفا طراحی و کدنویسی کنم، آیا با php خام هم امکان پذیر است؟

Unique
جمعه 16 خرداد 1393, 15:15 عصر
دوست عزیز ،

من این بحث که چون پروژه پیچیده هست (اصلا پیچیده یعنی چی ؟ مثلا سایت facebook را پیچیده میدونید؟) یا اینکه چون میخواهیم گروهی کار کنیم یا هر استدلال دیگه که استفاده از framework را مورد لزوم میدونه قبول ندارم. بنده از asp .net که یک framework کامل و document شده هست به php اومدم و تا الان (بعد از فکر کنم داره میشه ۴ سال) هیچ پروژه ای را با framework انجام ندادم و فقط کمی با CI (چرا رحمتش کنه ؟ یه زمانی خیلی توی بوغ و دهل بودش که ؟ [میبینی ! اینم یکی از مشکلات framework ها هستش]) کار کردم. اما در آخر خود PHP به قدری منعطف هست که این framework ها یکسری کار های روتین مثل کار با پایگاه داده ،‌ pageination و Form Validation و غیره را روی یک اصولی پیاده سازی کردند و از MVC هم به عنوان یک Software Architecture Pattern استفاده میکنند که برای همشون class های زیادی توی سایت phpclasses هست و خودتون هم میتونید کلاس های متنوع بنویسین.

پس این فکر که دونستن یک framework خیلی مهمه مثل تفکراتی شبیه به "اگه دانشگاه نری به هیچ جا نمیرسی" هستش و شرکت ها هم اگر توی استخدام هاشون به yii یا zend گیر میدهند به این خاطر هست که میخوان با این framework ها کار کنند و میخوان گروه برنامه نویساشون با هم جور باشند. همین.


اگه من بخوام سایتی مثل بلاگفا طراحی و کدنویسی کنم، آیا با php خام هم امکان پذیر است؟
قطعا ! ۸۰ درصد خود بلاگفا هم از framework استفاده نمیکنه ! (مطمئن نیستم و به خاطر قدیمی بودنش میگم)

موفق باشین.

سوداگر
جمعه 16 خرداد 1393, 15:20 عصر
چون رو هاست اشتراکی نصبش نمی کنن
یه زمانی اینجوری بود و خودتون میبایست کدها رو کامپایل کنید ولی تکنولوژی پیشرفت کرده :چشمک:... اینجا (http://phalconphp.com/en/hosting) رو ببینید حتی سایت http://fortrabbit.com رایگان هم داره

هش کردن پسوردش که تو ویندوز کرش می کرد
ظاهرا این مشکل رو مرتفع کردند 28 روز پیش اینجا (https://github.com/WooDzu/cphalcon-windows/tree/master/1.3.1/2014-01-15)

اینم یکی از مشکلات framework ها هستش
درسته

اصلا پیچیده یعنی چی؟
بعضی لغت ها نسبی هستند نه مطلق که بگیم 3000 خط اگه شد 3001 پیچیده است اگه شد 2999 دیگه پیچیده نیست
جایی که کدها ممکنه دیر فهم! بشه و آدم توی فاز تولید یا پشتیبانی به مشکل برخورد بکنه و این بستگی به خود شخص و نحوه کدنویسی اون داره که زیاد چقدر هست. برای یکی فیسبوک پیچیده است برای یکی دیجی کالا برای دیگری ممکنه کلا اسپاگتی زیاد دوست داشته باشه :گیج: یه سایت شخصی رو پیچیده بدونه!
توی زبانهایی مثل و ++C اینطوریه که از یه فریمورک مثل Qt برای خلاصه نویسی و ساختار منظم کدها + سریعتر شدن کدنویسی و اضافه شدن یکسری امکانات مثل QML و یکسری ساختمان داده از پیش ساخته شده و ... هست که برای تولید سریعتر برنامه به کار میره و اگه میخواستیم با ++C خالی انجام بدیم میشد انجام بدیم ولی زمان بیشتری از ما میگرفت... PHP هم به شرح ایضاً.

hamedarian2009
جمعه 16 خرداد 1393, 17:24 عصر
قطعا ! ۸۰ درصد خود بلاگفا هم از framework استفاده نمیکنه ! (مطمئن نیستم و به خاطر قدیمی بودنش میگم)



تا اونجایی که من اطلاع دارم بلاگفا با ASP.NET نوشته شده و ASP.NET خودش یه فریمورکه

MRmoon
جمعه 16 خرداد 1393, 17:56 عصر
یه زمانی اینجوری بود و خودتون میبایست کدها رو کامپایل کنید ولی تکنولوژی پیشرفت کرده :چشمک:... اینجا (http://phalconphp.com/en/hosting) رو ببینید حتی سایت http://fortrabbit.com رایگان هم داره


من رو هاست های ایرانی عرض کردم چون خودم از رادکام خواستم نصب کنن نصب نکردند.

Unique
جمعه 16 خرداد 1393, 18:07 عصر
برای تولید سریعتر برنامه به کار میره و اگه میخواستیم با ++C خالی انجام بدیم میشد انجام بدیم ولی زمان بیشتری از ما میگرفت... PHP هم به شرح ایضاً.

framework ها یکی از اهدافشون همین سرعت در نوشتن کدهای معمول هست اما مقایسه شما در مورد ++C و PHP اشتباهه ! بحث RAD Development توی وب به نظرم اونقدر ها تاثیر نداره که توی Desktop داره ! مثلا اگه من با دلفی و یکی با ++C یک برنامه مشخص را بخواهیم با هم شروع کنیم (با فرض اینکه هر دو در هر کدوم از این زبون ها سرعت عمل و تجربه همسانی داریم) قطعا با دلفی زودتر و ساخت یافته تر تموم میشه یا با #C هم همینطور. اما در مورد وب اصلا اینطور نیست مخصوصا در رابطه با PHP ،‌شاید بشه گفت سرعت تولید و ساخت یافتگی ASP .NET از ASP Classic خیلی بیشتره اما در مورد PHP و Framework هاش به نظر من اینطور نیست. کلا بحث اجرا ، زمان و غیره بر میگرده به تجربه و هماهنگی کساین که کار را انجام میدهند و به نظر من Framework خودش محدودیت ساز هست.


تا اونجایی که من اطلاع دارم بلاگفا با ASP.NET نوشته شده و ASP.NET خودش یه فریمورکه
بله من هم الان چک کردم و شما درست میگین. معدلش rozblog و mihanblog هستند که rozblog قطعا و mihanblog احتمالا با php نوشته شده اند.

rezaonline.net
جمعه 16 خرداد 1393, 19:20 عصر
میهن بلاگ فکر نکنم پی اچ پی باشه حدس میزنم پایتون باشه !
بهرحال تجربه کنید ، ضرری نداره
کار با فریم ورک ها یه حس خوبی داره مسلما چیزهای جدیدی یاد میگیرید و در آخر شاید ساختار خودتون رو پیاده سازی کنید .

MMSHFE
جمعه 16 خرداد 1393, 21:41 عصر
...اما در مورد PHP و Framework هاش به نظر من اینطور نیست. کلا بحث اجرا ، زمان و غیره بر میگرده به تجربه و هماهنگی کساین که کار را انجام میدهند و به نظر من Framework خودش محدودیت ساز هست. بله من هم الان چک کردم و شما درست میگین. معدلش rozblog و mihanblog هستند که rozblog قطعا و mihanblog احتمالا با php نوشته شده اند.
فریمورک توی انجام کار تیمی خیلی کمک میکنه. برای مثال خیلی راحتتر میشه مشکلات کد یکنفر از اعضای تیم رو که دیگه جزو تیم نیست، داد یکی دیگه حل کنه. البته فریمورک مثل CMS نیست که شما رو مجبور به رعایت ساختارش کنه بلکه یکسری ابزار هست که شما رو از شر انجام کارهای تکراری مثل تولید CRUD برای هر جدول و تعریف ساختار MVC و... راحت میکنه و ذهن شما رو برای تمرکز روی منطق برنامه آزاد میگذاره. بعلاوه خیلی از مسائل بهینگی و... در فریمورکهای خوب امروزی مثل Yii و Laravel و Symfony و... برطرف شده. قابلیتهایی مثل پشتیبانی توکار از وب 2 و امکانات کش متنوع و... از مزایای فریمورکهای امروزیه. استفاده از این امکانات هم دست خودتونه و میتونید هرجا دوست داشتین بزنید جاده خاکی و PurePHP کد بنویسید. توصیه میکنم یکبار حداقل کار با فریمورکی مثل Yii رو تجربه کنید تا ببینید چطور کمک میکنه یک پروژه که معمولاً یک تا دو ماه طول میکشه رو در عرض یک یا دو هفته انجام بدین.