PDA

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



reza_web
پنج شنبه 17 تیر 1389, 08:32 صبح
سلام
من خیلی تحقیق و البته فکر کردم و به این نتیجه رسیدم که استفاده از فریم ورک کار اشتباهی است (حالا حتما طرفداران فریم ورک حسابی آماده بحث می شوند)
برای یادگیری یک فریم ورک علاوه بر صرف وقت برای یادگیری اصول پایه php باید وقت زیادی هم برای یادگیری اون فریم ورک کنید که به نظر من می شود این وقت را صرف نوشتن کلاسها و پلاگینهای مورد نیاز خود بکنیم.
خیلی از کلاسها و پلاگینهای فریم ورک ها واقعا به درد نخور هستند که دلیلی برای یادگیری آنها وجود ندارد.
کسی که آنقدر php بلد است که می خواهد از فریم ورک برای پروژه هاش استفاده کند پس براحتی می تواند خودش کلاسهای مورد نیازش را بنویسید. تازه این حسن را هم دارد که دقیقا خودش می داند چه کرده است.
من خودم پارسال یک web Application نوشتم(نه وب سایت) که خیلی زمان برد ولی بعد از کامل شدن آن الان برای نوشتن یک web applicaion البته ساده فقط و فقط 30 ساعت مفید کار کردم و تماما از کلاسهای برنامه قبلی استفاده کردم مه اگر می خواستم از اول این برنامه را بنویسم حداقل 100 ساعت زمان نیاز داشت.
خب پس به چه دلیلی از فریم ورک استفاده کنم
البته اینم قبول دارم که برای برنامه های عظیم (که فکر نکنم زیاد در ایران داشته باشیم) فریم ورک زند عالیه ولی در حالت عادی استفاده از فریم ورک اشتباهه
حالا یک چیزی بگم که شر بپا بشه:
به نظرم استفاده از فریم ورک بیشتر حالت کلاس و مد شدن و قیافه گرفتن خوبه تا برنامه نویسی حرفه ای

nimatramon
پنج شنبه 24 تیر 1389, 11:13 صبح
دوست عزیز گاهی اوقات استفاده از فریم ورک ها حتی سخت تر از پیاده سازی application از base هستش اما هرینه های پروژه ، ضریب امنیت، دد لاین ها ، تعداد افراد تیم، و همچنین نیاز به توسعه پذیری باعث می شه تا فریم ورک ها بر رسی شن و اگر انتخاب مناسبی باشه از اون ها استفاده کرد. راستی معماری یادم رفت ....

binyaft
شنبه 02 مرداد 1389, 15:19 عصر
به نظر من ، فریم ورک ها بیشتر برای توسعه چند نفره استفاده میشن ، همین

idinex
شنبه 08 آبان 1389, 21:40 عصر
من فكر ميكنم استفاده از فريم وركها هميشه لزوم ندارد.

در برنامه هاي ساده و كوچك اصلا نياز نيست با فريم وركها كار بشه. فقط در سيستمهاي بزرگ كه ممكنه تعداد زيادي كلاس وجود داشته باشه و كلاسها چندين بار استفاده مي شوند بدرد مي خورند.

در كارهاي گروهي هم خيلي كمك مي كنند.

من چند وقت پيش يك سيستم طراحي كردم كه با نيازهايي كه مدير شركت پشت سر هم تعريف مي كرد در حقيقت هيچ وقت تكميل نميشد و هميشه قسمت جديدي اضافه ميشد و قسمتهاي قبلي هم بهشون قابليت جديد اضافه ميشد و يا قابليتهاي قبلي تغيير مي كردند.

من خودم يك فريم ورك ساده درست كردم براي خودم. از اين فريم ورك كه استفاده كردم واقعا كارم ساده شد. با اينكه برنامه كلي بخش داشت و چندين سطح و مدل كاربر داشت به راحتي ميشد همه چيز رو مديريت كرد. هر تغيير به سادگي و سرعت زياد اعمال ميشد و هر خطاي به سادگي قابل پيگيري و رفع بود.

ولي بعد از اون سايت تا حالا ديگه از فريم ورك استفاده نكردم. :لبخند:

UnnamE
سه شنبه 02 آذر 1389, 14:33 عصر
فريم ورك تو پرو‍ژه هاي كوچيك و تك نفره هم كاملا عالي ميشه
چه يه وبلاگ كه تو 15 دقيقه ميشه ازش ساخت چه يه سايت كه بخواد در ثانيه ميليوني كويري اجرا كنه و محاسبات ابري انجام بده!
اگه دوستاني كه با فريم ورك مخالف هستن كمي بيشتر در مورد منطق كار فريمورك ها مطالعه كنند متوجه ميشند نظم در برنامه نويسي چي هست و نيست
كي دوس داره همش بشينه كلاس هاي برقراري امنيت رو بازرسي كنه؟
كي حال داره بشينه كويري ها رو بالا و پايين كنه؟
كي ميخواد واسه اضافه كردن يه امكان جديد به پروژه 10-15 فايل و 30-40 كلاس و تابع رو ويرايش و دوباره نويسي كنه؟ در صورتي سه سوت پلاگين نويسي رو ميتونه انجام بده
ولي موضوع افه و كلاس و ايش و اينا خيلي خدا بود

peachcms
سه شنبه 23 آذر 1389, 23:24 عصر
با سلام

به نظر من حتی برای یک Hello world هم باید از FrameWork استفاده بشه زیرا دوران برنامه نویسی بدون نظم به سر اومده. کشور های دیگه چرا موفق هستند؟ زیرا در برنامه هاشون نظم و هماهنگی وجود دارد و خیلی ساده قابل گسترش و توسعه هستند این در صورتی هست که در ایران وقتی برای بار اول ورژن 1 یک سیستم نوشته میشه ورژن 2 دیگه توی کار نیست چون برنامه نویس وقتی source رو نگاه میکنه خودشم نمیفهمه چی کرده و همین باعث پیشرفت نکردن ما در این ضمینه هست که باید فرهنگ استفاده از FrameWork در بین برنامه نویسان ما رواج پیدا کنه با این کار خود به خود شاهد رشد سریع سطح ما در تولید نرم افزار خواهد شد.
در مورد اینکه کسانی می گویند من مخالف با ستفاده از FarmeWork هستم دلیل این سخن ها محدود می باشد که عرض خواهم کرد.

1- آشنا نبودن کافی برنامه نویس به PHP یا هر زبان برنامه نویسی دیگری.
2- عدم درک کافی MVC و برنامه نویسی منظم
3- ترس از یاد گیری و سخت بودن

برای انتخاب FrameWork مناسب باید با توجه به امکانات به سرعت، امنیت، انعطاف پذیری و پشتیبانی Framework توجه خاصی داشت.

با سپاس

ghasem.fattahpour
چهارشنبه 15 دی 1389, 17:48 عصر
به این مطلب توجه کنید:

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

معمولا کسی که به این چیز ها عقیده خاصی نداره در این چند دسته گروه جای میگیره:


پروژه ها یا اینقدر از لحاظ فنی کوچک هستن که نیازی به این مستندات نیست یک نفر به تنهایی از سیر تا پیاز سایت رو به اتمام میرسونه!
شرکت به دلیل کوچکی تنها توسط یک نفر در بخش نرم افزار اداره میشه.
سناریوی بیشتر افرادی که دوست دارند شرکتی رو وابسته به خودشون کنند، همین هست که یا طرح معماری ارایه نمی دن یا با فریم وورکی اون کار رو می نویسن که هیچ مستنداتی نداره.

این تجربه بنده هست که کاری که یک فریم وورک درست و حسابی نداشته باشه (کد، مستندات، به روز بودن و...) دقیقا کار خیلی خیلی کوچیکی هست یا کمبود دانش فنی.

ayub_coder
چهارشنبه 29 دی 1389, 02:07 صبح
حالا دوستانی که میگن فریم ورک
من که تازه می خوام وارد عرصه فریم ورک و کلاس گذاشتن بشم کدوم رو انتخاب کنم؟
یکی دوسالیه php کار میکنم. می خوام از فریم ورک استفاده کنم. ولی نمی دونم کدوم؟:افسرده:

ghasem.fattahpour
چهارشنبه 29 دی 1389, 14:03 عصر
تحقیق کن و فرق بین ابزار رو بشناس. من با codeigniter شروع کردم ولی الان با cake کار می کنم. دلایل زیادی هم داره. ولی باید اول بفهمی چرا داری از framework استفاده کنی!

alireza.stack
شنبه 07 اسفند 1389, 14:34 عصر
نمیشود گفت فریم وورک خوب نیست و نمیشه گفت بد نیست.
خوب است چرا که خطای انسانی و فراموشی گاهی اوقات باعث میشود مواردی مثل SQL Injection Attack و... نادیده گرفته شود و حفره های امنیتی بر جای بگزاریم.
و از جهتی بد است و آن این است که شما را تنبل میکنه!
موفق باشید

ghasem.fattahpour
شنبه 14 اسفند 1389, 02:30 صبح
...
خوب است چرا که خطای انسانی و فراموشی گاهی اوقات باعث میشود مواردی مثل SQL Injection Attack و... نادیده گرفته شود و حفره های امنیتی بر جای بگزاریم.
...

تقریبا چیزی که شما گفتید محاله! مگر ابنکه خودتان از روی عمد اون رو نخواهید ویا غیر فعال کنید

masoud_tamizy
شنبه 06 اسفند 1390, 22:47 عصر
کسی که آنقدر php بلد است که می خواهد از فریم ورک برای پروژه هاش استفاده کند پس براحتی می تواند خودش کلاسهای مورد نیازش را بنویسید. تازه این حسن را هم دارد که دقیقا خودش می داند چه کرده است.
من خودم پارسال یک web Application نوشتم(نه وب سایت) که خیلی زمان برد ولی بعد از کامل شدن آن الان برای نوشتن یک web applicaion البته ساده فقط و فقط 30 ساعت مفید کار کردم و تماما از کلاسهای برنامه
به نظرم استفاده از فریم ورک بیشتر حالت کلاس و مد شدن و قیافه گرفتن خوبه تا برنامه نویسی حرفه ای
Web Application در PHP چیست و چگونه است ؟؟؟

masoud1990
پنج شنبه 29 تیر 1391, 14:28 عصر
دوست عزیز اون چیزی که شما نوشتی خودش یه فریم ورک هست!
که شما داری ازش استفاده میکنی حالا اگر بیای این رو به صورت عمومی بزاری خوب یک فریم ورک عمومی میشه و اگر من بخوام اینو یاد بگیریم همون قضیه ای که گفتی پیش میاد

javidabbaci
یک شنبه 04 فروردین 1392, 18:29 عصر
به نظ من هرکسی که با فریم ورک مخالف است ، باید در دانش برنامه نویسی او شک کرد !!

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

moalla
سه شنبه 06 فروردین 1392, 14:40 عصر
چندتا سایت بیشتر با فریم ورکها بیشتر کار نکردم و در حد همین تجربه ها، نظرم رو میگم. قبلش با asp و php کار میکردم
نکته اول در تایید فریم ورکها همینیه که دوستان گفتن و اون بالا بودن خوانایی کدهاست. بخصوص در کیک که قواعد نام گذاری خاصی داره و در نتیجه یه برنامه نویس وقتی به نتیجه نگاه کار نگاه کنه دقیقا میدونه کد بخشی که داره میبینه رو کجا پیدا کنه....
نکته دوم که باز از نکته اول منشعب میشه: کار گروهی با استفاده از فریم ورکها خیلی خیلی بهتره. اگه یه وب سایت به من بدن که با php نوشته شده و بگن فلان بخشش تغییر کنه از همین الان سرگیجه میگیرم! اما اگه با کیک نوشته شده باشه فقط بگن کجا نیاز به تغییر داره چشم بسته هم میشه گفت کد مربوطه کجا قرار داده و مستقیم میشه رفت سراغش رو تغییرش داد.
این دو نکته تو صحبتهای دوستان هم بود و اما نکته بعدی که مفصل تر عرض میکنم
با این سوال شروع میکنم: آیا من میخوام همه چیز رو از صفر بنویسم یا میخوام از کدهای آماده هم استفاده کنم. قبل از اینکه بریم سراغ جواب، به دو نکته توجه کنیم:
1- از یه برنامه نویس وب خیلی چیزها رو انتظار دارن که هر کدوم در واقع یه تخصصه: css، jquery, graphic, seo, برنامه نویسی سمت سرور و .... باید تو تمام اینها اوستا و به روز بود تا بشه کار درخوری ارائه داد.
2- سرعت به روز شدن برای یه طراح وب باید واقعا زیاد باشه. همیشه در کنار اجرای پروژه هاش در حال یادگیری هم هست! برخلاف رشته های دیگه که یبار فرامیگیرند و هرازچندگاهی یه آپدیت مختصرش هم میکنن. فکر میکنم خیلی از دوستان رشته های اکادمیک دیگه ای رو هم خوندن و میفهمن چی میگم. واقعا هیچ چیزی رو به اندازه برنامه نویسی ندیدم که هر روز نیاز به اپدیت شدن داشته باشه
حالا با توجه به این نکات که فکر کنم همه قبول داشته باشیم میرسیم به سوال: آیا میخوام همه چیز رو از صفر بنویسم یا از کدهای آماده هم استفاده کنم؟ مطمئنا دوستانی که با فریم ورک مخالف هستن هم نمیان دیگه هر چیزی رو از صفر بنویسن که عمر نوح میخواد! آخرش بهتره از فریم ورک جی کوئری بجای جاوا اسکریپ استفاده کنیم تا دغدغه اجرای کد تو بروزرهای مختلف رو کمتر داشته باشیم و افکت های ساده تری رو هم داشته باشیم.
شخصا گاهی تو برخی قسمتها با اینکه کد امادش هم هست اما ترجیح میدم از اول خودم بنویسم که دانش خودم رو هم ارتقا بدم اما خیلی اوقات دیگه فقط وقت تلف کردن میشه. چیزهای زیادی برای یادگیری وجود داره که سطح برنامه نویسی من رو خیلی بیشتر ارتقا میده تا اینکه من بیام وقتم رو برای یادگیری چیزی بذارم که ارزش کمتری در روند پیشرفتم داره. امیدوارم منظورم رو گرفته باشید.
حالا میام یه فریم ورکی مثل CI رو هم در کارم قرار میدم. در واقع کلی helper و کلاس رو کنار برنامه قرار دادم. اگه خواستم یه بخش مثل کار با فایلها رو دیگه از اول نمینویسم و از helper کمک میگیرم. اما اگر دوست داشتم یه بخشی رو از صفر کار کنم خوب برای اون بخش همین کارو میکنم.
اگه بخوام کل حرفم رو خلاصه تر بگم: موضوعات بی شماری برای یادگیری وجود داره اما نقش هر کدوم در روند پیشرفت من و شما یکی نیست. بخشی که اهمیت کمتری داره رو واگذارم میکنم به یه کد خوب با مستندات خوب و بخشی که ارزش بیشتری داره رو سعی میکنم خودم دقیق بنویسم تا از منطق کار بیشتر سردربیارم.

sa0017
جمعه 04 مرداد 1392, 02:45 صبح
من هم این جمله رو تایید میکنم که کسی که با فریم ورک مخالف است یا تجربه و دانش کافی برای این کار ندارد یا با فریم ورک آشنایی ای ندارد.
ولی یک پیشنهاد برای برای افراد مبتدی دارم که برای شروع کار به هیچ وجه از فریم ورک استفاده نکنند. چون ممکنه چیزهای اساسی ای رو که باید یاد بگیرند خوب و آنطور که باید و شاید یاد نگیرند.

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

در مورد انتخاب فریم ورک هم من به افرادی که به سطحی از php رسیدن که میخواهند از فریم ورک استفاده کنند فریم ورک codeigniter رو پیشنهاد میدم.

godofphp
جمعه 04 مرداد 1392, 03:07 صبح
منم یه کوتاه نظر خودم رو بگم
ببینید شما اگه یه پروژه کوچیک دارید و نیاز به انجام کارهای بزرگ نداره و میدونید که توی کارتون تکرار کاری (استفاده مجدد از کدها) نیست و توی آینده هم قرار نیست
غیر از خودتون کس دیگه هم پیدا بشه اونو گسترش یا ادامه بده ... در این وضعیت میتونید با پی اچ پی خام وب رو پیاده کنید
امّا
زمانی هست که میخوایید توی آینده وب شما توسط چندین نفر برنامه نویسی بشه ویرایش بشه گسترش داده بشه
یا در آینده روز به روز پیشرفت خواهد کرد و نیازمند یک قانون منسجم هست
باید باید باید از فرم ورک استفاده کنید
مثلا شما با ci یه سایتی رو ساختی
همه اون کسایی که ci بلد هستند میتونند رو پروژت کار کنند
ولی اگه اختصاصی کد بزنی مخصوصا اگه کدات کثیف باشن هیچ کس حاضر هم کاری نمیشه
بعدشم وقتی زحمت کشیدند واسه ما فرم ورک ساختند چرا نباید استفاده کنیم ؟
ما الان باید خودمون فرم ورک میساختیم چه برسه به نتیجه گیری درباره انتخاب یا عدم انتخاب فرم ورک ساده و آماده ای مثل ci یا Cake
با تشکر

parsboy
جمعه 04 مرداد 1392, 17:05 عصر
باسلام
دوست عزیز زمانی که شما از متدها وکلاس ها یا پلاگین های خودتون استفاده میکنید
این ها توسط شما برنامه نویسی شده یعنی میتونه ضعف های زیادی داشته باشه.
اما یک فریم ورک توسط یه گروه برنامه نویسی برنامه نویسی شده وتست شده هست درسته هرکاری
ضعف خودش روداره حتی همین فریم ورک ها اما بازخیلی میتونه بهترازکاری که منوشما انجام میدیم باشه
برای استفاده ازکارهای ساده و کوچیک میتونیم ازفریم ورک ها استفاده نکنیم اما برای کارهای برزگ ما کارمون
خیلی راحت ترمیشه و امنیت کارهم تاحدقابل قبولی تضمین شده است. بازهرکس یه نظری داره باید به نظرهم احترام بذاریم
به هرحال بنده هم نظرخودم روعرض کردم
موفق باشید.

sara banu
شنبه 23 شهریور 1392, 11:41 صبح
منم با نیما موافقم اما باید باهاش کار کنی تا لمش دستت بیاد