@mehdi2private سلام وقتتون بخیر منم نظر خودمو بگم.
ببینید من خودم به شخصه وقتی یک عملیات نسبتا ساده رو بخوام پیاده کنم، میگردم پکیجش باشه اما اگر بود فورا استفاده نمیکنم. یک سری موراد هست که همیشه دقت میکنم مثلا این که آخرین کامیت پروژه چه زمانی هستش ؟ چون یه موقعهایی یه سری پکیجها زده میشن و بعدا درست و حسابی آپدیت نمیشن یا خیلی طول میکشه که این اتفاق بیافته.
مثلا من خودم یک بار از پکیج laravel-meta استفاده کردم ( هنوزم هست ) ولی توی یه قسمتی از پروژه یهو فهمیدم که این پکیج با نسخه ۷ لاراول یه مشکلی داره و خب این مورد وسط پروژه خیلی منو اذیت کرد و آخرش مجبور شدم کلی کد رو تغییر بدم و این قابلیت رو خودم پیاده کنم.
در مورد حرفی که @SinaFXD زد و گفت که ساخت پکیجی که از قبل وجود داره اختراع دوباره چرخ هستش
من به طور کلی با مفهموم این حرف موافقم ولی به نظرم یه مواقعی هست که این کار واقعا مشکل نداره.
به نظر من برای این که شما بتونید درست از چرخ استفاده کنید و سریع یاد بگیریدش، باید بدونید چرخ چجوری کار میکنه ! و برای این که بفهمید چیزی چجوری کار میکنه فکر میکنم یکی از بهترین راههاش ساخت دوباره چرخ هست. ( البته توجه کنید که نیاز به همهی جزئیات نیست و این که کلیت کار رو بدونید به نظر من کفایت میکنه. )
مثلا من خودم قبل از ورود به یادگیری لاراول، شروع کردم یک فریمورک MVC با PHP خام درست کردم که خیلی اذیت شدم و خیلی سخت بود، ولی همین باعث شد وقتی وارد لاراول شدم بر خلاف خیلیا که همینجوری میپرن تو لاراول و خیلی گیج میشن، اصلا گیج نشدم و خیلی سریع تونستم یاد بگیرم.
دوباره میگم که این نظر من بر اساس تجربه خودم بود شاید دوستان نظر دیگهای داشته باشن.
@mohsenbostan
بسیار ممنونم از شما
به عنوان مثال شخص شما اگر ببینید پکیجی برای یک فیچری که شما قصدش رو دارید بسازید ساخته شده
از اون استفاده میکنید یا ترجیح میدید خودتون کد بزنید؟
و اینکه استفاده از پکیج در سرعت سایت که نمیتونه تاثیر گذار باشه
دوست عزیز ساخت پکیجی که از قبل وجود داره ، دقیقا اختراع دوباره چرخ هستش .
پکیج رو برسی کنین اگه با نیاز شما مطابقت داشته باشه هیچ مشکلی نداره استفاده کنین ( اگرم نیاز به توسعهی کوچیک داشته باشه که خودتون انجام میدین و بازم هوشمندانه تر از اینه که پکیج رو از اول بنویسین . )
@mehdi2private
حتما از چیزی که قبلا ساخته شده استفاده میکنم.
در مورد سرعت هم باید بگم ربطی نداره. بستگی به نوع کار یا الگوریتم داره.
@mehdi2private سلام وقتتون بخیر منم نظر خودمو بگم.
ببینید من خودم به شخصه وقتی یک عملیات نسبتا ساده رو بخوام پیاده کنم، میگردم پکیجش باشه اما اگر بود فورا استفاده نمیکنم. یک سری موراد هست که همیشه دقت میکنم مثلا این که آخرین کامیت پروژه چه زمانی هستش ؟ چون یه موقعهایی یه سری پکیجها زده میشن و بعدا درست و حسابی آپدیت نمیشن یا خیلی طول میکشه که این اتفاق بیافته.
مثلا من خودم یک بار از پکیج laravel-meta استفاده کردم ( هنوزم هست ) ولی توی یه قسمتی از پروژه یهو فهمیدم که این پکیج با نسخه ۷ لاراول یه مشکلی داره و خب این مورد وسط پروژه خیلی منو اذیت کرد و آخرش مجبور شدم کلی کد رو تغییر بدم و این قابلیت رو خودم پیاده کنم.
در مورد حرفی که @SinaFXD زد و گفت که ساخت پکیجی که از قبل وجود داره اختراع دوباره چرخ هستش
من به طور کلی با مفهموم این حرف موافقم ولی به نظرم یه مواقعی هست که این کار واقعا مشکل نداره.
به نظر من برای این که شما بتونید درست از چرخ استفاده کنید و سریع یاد بگیریدش، باید بدونید چرخ چجوری کار میکنه ! و برای این که بفهمید چیزی چجوری کار میکنه فکر میکنم یکی از بهترین راههاش ساخت دوباره چرخ هست. ( البته توجه کنید که نیاز به همهی جزئیات نیست و این که کلیت کار رو بدونید به نظر من کفایت میکنه. )
مثلا من خودم قبل از ورود به یادگیری لاراول، شروع کردم یک فریمورک MVC با PHP خام درست کردم که خیلی اذیت شدم و خیلی سخت بود، ولی همین باعث شد وقتی وارد لاراول شدم بر خلاف خیلیا که همینجوری میپرن تو لاراول و خیلی گیج میشن، اصلا گیج نشدم و خیلی سریع تونستم یاد بگیرم.
دوباره میگم که این نظر من بر اساس تجربه خودم بود شاید دوستان نظر دیگهای داشته باشن.
شما میتونی ساختار اون پکیج رو بررسی کنی
به راحتی ریپازیتوری گیتهابش رو باز کن
سورس کدهاش رو بررسی کن..
اکثر پکیج های خوب با در نظر گرفتن یک سری موارد در واقع باعث میشند ما از معماری صحیحی برای قسمت های مختلف اپلیکیشنمون استفاده کنیم..
از اونجایی هم که شئ گرایی در جای جای لاراول استفاده شده و همه جا با کلاس های مختلف سر و کار داریم، بنابراین این پکیج ها رو میشه چک کرد و دید آیا:
مثلا پکیج هایی که مربوط به الوکوئنت هستند و به شکل تریت به مدل اضافه میشوند
در جواب این سوال میشه گفت: اکثر این نوع پکیج ها به خوبی Polymorphism یا روابط چندریختی رو پیادهسازی کردند. به همین خاطر شما راحت اون ویژگی رو به مدلت اضافه میکنی..
اما آیا بقیه موارد بالا رو رعایت کردند یا نه... باید بررسی بشه
آیا مایل به ارسال نوتیفیکیشن و اخبار از طرف راکت هستید ؟